 |
COMPASS
5.0.0
End-to-end AO simulation tool using GPU acceleration
|
Go to the documentation of this file.
58 #define CEIL(a, b) ((a) + (b)-1) / (b)
60 #define PIXELPERBLOCK 10
126 int *xoff,
int *yoff);
127 int kl_loadarrays(
float *rabas,
float *azbas,
int *ord,
float *cr,
float *cp);
139 int get_IF(T *IF,
int *indx_pup,
long nb_pts,
float ampli);
142 long nb_pts,
float ampli,
int puponly);
144 int do_geomat(
float *d_geocov,
float *d_IF,
long n_pts);
173 long nactus,
long influsize,
long ninflupos,
long n_npoints,
174 float push4imat,
long nord,
float dx,
float dy,
float thetaML,
float G,
int device);
176 long nactus,
long influsize,
long ninflupos,
long n_npoints,
177 float push4imat,
long nord,
int device);
179 long nactus,
long influsize,
long ninflupos,
long n_npoints,
180 float push4imat,
long nord,
float dx,
float dy,
float thetaML,
float G,
int device,
int idx);
188 void comp_dmshape(
int threads,
int blocks, T *d_idata, T *d_odata,
int *pos,
189 int *istart,
int *npts, T *comm,
unsigned int n,
int N);
193 const int *iStart_t,
const int *iPos,
const int roiLength,
194 const dim3 threads,
const dim3 blocks,
const int shared);
197 void oneactu(
int threads,
int blocks, T *d_idata, T *d_odata,
int nactu,
198 T ampli,
int *xoff,
int *yoff,
int dim_im,
int dim_influ,
int N);
200 void oneactu(
int threads,
int blocks, T *d_idata, T *d_odata,
int nactu,
201 T ampli,
int dim_im,
int dim_influ,
int N);
204 int nactus,
int diminflu, T *comm,
int N);
207 int getIF(T *IF,
float *dmshape,
int *indx_pup,
long nb_pts,
int column,
209 int dm_dostatmat(
float *d_statcov,
long Nkl,
float *d_xpos,
float *d_ypos,
213 int convertToCom(uint16_t *volts,
float *com,
int N,
float volt_min,
float volt_max,
216 #endif // _SUTRA_DM_H_
int comp_shape(float *comm)
CarmaObj< float > * d_influ
this file provides tools to CarmaObj
int do_geomat(float *d_geocov, float *d_IF, long n_pts)
int getIF(T *IF, float *dmshape, int *indx_pup, long nb_pts, int column, long nb_col, int puponly, CarmaDevice *device)
this class provides the kl features to COMPASS
int pzt_loadarrays(float *influ, int *influpos, int *npoints, int *istart, int *xoff, int *yoff)
int insert_dm(CarmaContext *context, const char *type, float alt, long dim, long nactus, long influsize, long ninflupos, long n_npoints, float push4imat, long nord, float dx, float dy, float thetaML, float G, int device, int idx)
int DDiago(CarmaObj< float > *d_statcov, CarmaObj< float > *d_geocov)
cusparseHandle_t get_cusparse_handle()
int tt_loadarrays(float *influ)
CarmaObj< int > * d_influpos
int add_dm(CarmaContext *context, const char *type, float alt, long dim, long nactus, long influsize, long ninflupos, long n_npoints, float push4imat, long nord, int device)
void comp_dmshape2(T *outData, const T *cmdVector, const T *influData, const int *iStart_t, const int *iPos, const int roiLength, const dim3 threads, const dim3 blocks, const int shared)
void oneactu(int threads, int blocks, T *d_idata, T *d_odata, int nactu, T ampli, int *xoff, int *yoff, int dim_im, int dim_influ, int N)
cusparseHandle_t cusparse_handle()
int find_nnz(float *d_data, int N, CarmaDevice *device)
int convertToCom(uint16_t *volts, float *com, int N, float volt_min, float volt_max, uint16_t val_max, CarmaDevice *device)
vector< SutraDm * > d_dms
CarmaObj< float > * d_KLbasis
int dm_dostatmat(float *d_statcov, long Nkl, float *d_xpos, float *d_ypos, float norm, CarmaDevice *device)
int kl_loadarrays(float *rabas, float *azbas, int *ord, float *cr, float *cp)
this class provides the context in which CarmaObj are created
this class provides wrappers to the generic carma sparse object
int get_IF(T *IF, int *indx_pup, long nb_pts, float ampli)
cublasHandle_t get_cublas_handle()
int get_IF_sparse(CarmaSparseObj< T > *&d_IFsparse, int *indx_pup, long nb_pts, float ampli, int puponly)
CarmaContext * current_context
int comp_oneactu(int nactu, float ampli)
int comp_shape(uint16_t *comm)
int kl_floloadarrays(float *covmat, float *filter, float *evals, float *bas)
int add_dm(CarmaContext *context, const char *type, float alt, long dim, long nactus, long influsize, long ninflupos, long n_npoints, float push4imat, long nord, float dx, float dy, float thetaML, float G, int device)
void comp_dmshape(int threads, int blocks, T *d_idata, T *d_odata, int *pos, int *istart, int *npts, T *comm, unsigned int n, int N)
int set_registration(float dx, float dy, float thetaML, float G)
CarmaObj< int > * d_istart
int piston_filt(CarmaObj< float > *d_statcov)
int compute_KLbasis(float *xpos, float *ypos, int *indx, long dim, float norm, float ampli)
SutraDm(CarmaContext *context, const char *type, float altitude, long dim, long nactus, long influsize, long ninflupos, long n_npoints, float push4imat, long nord, float dx, float dy, float thetaML, float G, int device)
this class provides the dm features to COMPASS
this class provides the phase features to COMPASS
cublasHandle_t cublas_handle()
int do_geomat_from_sparse(T *d_geocov, CarmaSparseObj< T > *d_IFsparse)
CarmaObj< int > * d_npoints
CarmaObj< float > * d_com
int fill_filtermat(float *filter, int nactu, int N, CarmaDevice *device)
void comp_fulldmshape(int threads, int blocks, T *d_idata, T *d_odata, int nactus, int diminflu, T *comm, int N)