MAOS
Multithreaded Adaptive Optics Simulator
powfs_pyngs.conf
#File powfs_pyngs.conf
#See powfs_common.conf for up to date description.
#Defines NGS Pyramid WFS.
#Optimized based on the NFIRAOS implementation except the dsa matches DM.
powfs.step += [0] #time step to start using WFS
powfs.type += [1] #0: SHWFS, 1:Pyramid WFS
powfs.pywfs+= ["pywfs.conf"] #include pywfs.conf if type is Pyramid WFS
powfs.dsa += [0] # size of subaperture in one dimension. <0: use (-dsa)*aper.d.
powfs.dx += [1/32] #sampling of opd in each subaperture.
powfs.saat += [0.5] #threshold of relative area to turn off subaperture.
powfs.hs += [inf] #height of the guide star. 90e3 for LGS. inf for NGS.
powfs.fnllt+= [""] # configuration of laser launch telescope.
powfs.trs += [0] #tilt remove flag. 1 for LGS. 0 for NGS
powfs.lo += [0] #low order. 1 for T/T or T/T/F WFS. 0 for LGS and high order NGS
powfs.nearecon+= [20] # nea in mas for reconstruction
powfs.skip += [0] # do not use this WFS in reconstruction
#Geometric optics SHWFS options
powfs.gtype_sim += [0] #0: averaging gradient, 1: zernike tilt for simulation.
powfs.gtype_recon += [0] #0: averaging gradient, 1: zernike tilt for reconstruction.
#Physical optics SHWFS options.
powfs.phytype_recon +=[1] #1: matched filter. 2:cog
powfs.pixtheta += [0.5]#CCD Pixel size in arcsec. if negative -alpha, the size is alpha*max(wvl)/dsa
powfs.fieldstop+= [2] # field stop diameter in arcsec.
powfs.pixpsa += [4] #number of pixels per subaperture 4 is needed. 2 is not good for NGS
powfs.phystep += [0] #-1 to disable physical optics.
powfs.sigmatch += [2] #normalize gradient by flux of (1: per subaperture, 2: globally).
powfs.mtchcr += [0] #use classic matched filter (not applicable)
powfs.mtchstc += [1] #shift peak in sepsf to center using fft.
#For dithering
powfs.dither +=[1] #Dithering to update centroid gain or matched filter. 1: with TT. >1: zernike mode. <-1: multi-mode dithering.
powfs.dither_amp +=[0.001] #dither amplitude in micron (zernike) or arcsec (tip/tilt)
powfs.dither_npoint+=[4] #Number of WFS framer per dither cycle. 4 for tip/tilt, 2 for zernike mode.
powfs.dither_pllskip+=[1024] #Skip WFS frames for loop to be stable and gain to be optimized before turning on PLL.
powfs.dither_pllrat+=[1024] #Number of WFS frames for updating PLL estimates
powfs.dither_gpll +=[1] #Gain of PLL.
powfs.dither_ogskip+=[0] #Number of PLL cycles to skip before computing optical gain update.
powfs.dither_ograt +=[1] #Number of PLL cycles to average before updating optical gain.
powfs.dither_gog +=[0.5] #Gain for updating optical gain in cog (irrelevant for matched filter).
#Detector Options
powfs.rne += [1] #read out noise
powfs.nwvl += [1]#number of bands for each powfs.
powfs.wvl += [0.7e-6]#concatenated list of bands
powfs.wvlwts += [1]
powfs.nwfs+=[1] #number of wfs for each type
wfs.thetax+=[0] #x coordinate in arcsecond unit.
wfs.thetay+=[0] #y coordinate in arcsecond unit.