COMPASS
5.4.4
End-to-end AO simulation tool using GPU acceleration
sutra_phase.h
Go to the documentation of this file.
1
// -----------------------------------------------------------------------------
2
// This file is part of COMPASS <https://anr-compass.github.io/compass/>
3
//
4
// Copyright (C) 2011-2023 COMPASS Team <https://github.com/ANR-COMPASS>
5
// All rights reserved.
6
7
// -----------------------------------------------------------------------------
8
16
17
#ifndef _SUTRA_PHASE_H_
18
#define _SUTRA_PHASE_H_
19
20
// this is the generic class for a phase
21
// contains a yoga obj for the phase screen itself
22
// the screen size (assumed square)
23
// the following is only initialized on demand :
24
// an array of zernike coeffs on which the phase can be decomposed
25
// an array of zernike polynomials (carma_object)
26
// a matrix to decompose the phase on zernike coeffs
27
28
#include <carma.h>
29
#include <
carma_obj.h
>
30
31
class
SutraPhase
{
32
public
:
33
CarmaContext
*
current_context
;
34
int
device
;
35
36
CarmaObj<float>
*
d_screen
;
37
long
screen_size
;
38
float
*
zer_coeff
;
39
CarmaObj<float>
*
zernikes
;
40
CarmaObj<float>
*
mat
;
41
42
public
:
43
SutraPhase
(
CarmaContext
*
current_context
,
long
size);
44
SutraPhase
(
const
SutraPhase
&phase);
45
~SutraPhase
();
46
};
47
48
#endif
// _SUTRA_PHASE_H_
carma_obj.h
CarmaContext
this class provides the context in which CarmaObj are created
Definition:
carma_context.h:79
CarmaObj< float >
SutraPhase
this class provides the phase features to COMPASS
Definition:
sutra_phase.h:31
SutraPhase::SutraPhase
SutraPhase(const SutraPhase &phase)
SutraPhase::mat
CarmaObj< float > * mat
Definition:
sutra_phase.h:40
SutraPhase::screen_size
long screen_size
Definition:
sutra_phase.h:37
SutraPhase::zernikes
CarmaObj< float > * zernikes
Definition:
sutra_phase.h:39
SutraPhase::SutraPhase
SutraPhase(CarmaContext *current_context, long size)
SutraPhase::zer_coeff
float * zer_coeff
Definition:
sutra_phase.h:38
SutraPhase::~SutraPhase
~SutraPhase()
SutraPhase::current_context
CarmaContext * current_context
Definition:
sutra_phase.h:33
SutraPhase::d_screen
CarmaObj< float > * d_screen
Definition:
sutra_phase.h:36
SutraPhase::device
int device
Definition:
sutra_phase.h:34
libsutra
include.h
sutra_phase.h
Generated by
1.9.1