Fixed maos/skyc performance degradation during modeling with surface.
Many changes, include

Summary Changes to MAOS

aper.fnamp: TMT top end changed from 3 leg to 6 leg 23cm each.
powfs.saat: Changed default LGS saat to 0.3 due to top end change.
sim.fcfocus: Input for cross over frequency for focus tracking. replaced sim.lpfocus
sim.ncpa_ttr: Remove average tip/tilt of opdbias from opdbias and opdadd.
sim.mffocus: 1: track individual focus, 2: track global focus.
perfevl_mean: fixed NGS mode removal from science opd.
tomo.ahst_idealngs: we no longer add ideal ngs modes to DM. Instead, we add them to NGS wavefront only. This prevents it to
capture all the focus mode in the atmosphere.
gradpsol: The psol grads are computed using dmreal now, and the dmerr is also formed by subtracting dmreal from dmint. Merged
dmerr forming for tomo/fit and MVM for consistency. The ngsmod is then removed afterwards. We use dmreal for PSOL computations
because we want real OL gradients, and dmreal is the correction made to the wavefront before gradients are measured. Adding
dmreal will give us OL equivalent gradient.
powfs.saspherical: updated to measured aberration
wfspsfout: changed size from notf/2 to notf/2+2 for better accuracy.
init_simu: Put filter(simu) in the end of init_simu to apply dm_ncpa at first time step.
gradref: When surface is present, the ztilt and cog of PSF can be very different. So it is a bad idea to generate pistat using
ztilt as gradient reference.
gradoff: now gradoff is removed from geometric gradients immediately upon computation. Therefore, the recorded ztilt for sky
coverage is already calibrated. Same happens to pistat and phy grads. Both CPU and GPU code are modified.
pistatout: Do not enable it by default when sim.skysim=1. The skyc regenerates it anyway with its own methods.
add_ngsmod_do (gpu): global focus mode is now separately handled.
gpu_ngsmod2science: now can also apply to ngs wfs.
cmat.c: Removed restrict from pointer cembed, ctilt2. restrict on pointer that changes value caused data corruption.
ahstfocus: The focus adjustment to LGS WFS was done with wrong sign. Should remove focus of m[2]*(scale-1), but removed
m[2]*(1-scale). After fix this, the median skyc result reduced from 66 to 60 nm.

Summary Changes to Skyc
pistat: Use cog of PSF to shift every frames to center, and then shift the averaged PSF to the averaged cog of PSF to preserve
the offset.
Removed regenpsf and regenmtch. Because pistat is now computed without ztilt, the regeneration of psf is no longer relevant.
mtch: switch cfft direction so that direct fft turns PSF to OTF. Consistent with maos.
seed: No longer repeat seeds that are already done.
rne: rne was 0 at 800 Hz. Fixed. TODO: update spread sheet and formula here.
ngsmod2wvf: no longer use cloc. Use ox, oy, and dx to generate coordinate. more flexible for different size of recorded wvf.
sim.mffocus: when mffocus==1, do not add na PSD to computed focus PSD.