COMPASS
5.4.4
End-to-end AO simulation tool using GPU acceleration
sutra_perfectCoronagraph.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_PERFECT_CORONAGRAPH_H_
18
#define _SUTRA_PERFECT_CORONAGRAPH_H_
19
20
#include <
sutra_coronagraph.h
>
21
#include <map>
22
23
class
SutraPerfectCoronagraph
:
public
SutraCoronagraph
{
24
public
:
25
std::map<std::string, std::vector<CarmaObj<cuFloatComplex>*>>
AA
;
26
std::map<std::string, std::vector<CarmaObj<cuFloatComplex>*>>
BB
;
27
std::map<std::string, std::vector<float>>
norm
;
28
29
CarmaObj<cuFloatComplex>
*
tmp_mft
;
30
31
public
:
32
SutraPerfectCoronagraph
(
CarmaContext
*context,
SutraSource
*
d_source
,
int
im_dimx,
33
int
im_dimy,
float
*
wavelength
,
int
nWavelength,
int
device
);
34
~SutraPerfectCoronagraph
()=
default
;
35
int
compute_image
(
bool
accumulate);
36
int
compute_psf
(
bool
accumulate);
37
int
set_mft
(cuFloatComplex *A, cuFloatComplex *B,
float
*
norm
, std::string mftType);
38
39
private
:
40
int
_compute_image(
bool
psf,
bool
remove_coro,
bool
accumulate);
41
};
42
43
#endif
//_SUTRA_PERFECT_CORONAGRAPH_H_
CarmaContext
this class provides the context in which CarmaObj are created
Definition:
carma_context.h:79
CarmaObj< cuFloatComplex >
SutraCoronagraph
this class provides the coronagraph features to COMPASS
Definition:
sutra_coronagraph.h:26
SutraCoronagraph::d_source
SutraSource * d_source
Definition:
sutra_coronagraph.h:48
SutraCoronagraph::wavelength
std::vector< float > wavelength
Definition:
sutra_coronagraph.h:36
SutraCoronagraph::device
int device
Definition:
sutra_coronagraph.h:28
SutraPerfectCoronagraph
this class provides the coronograph features to COMPASS
Definition:
sutra_perfectCoronagraph.h:23
SutraPerfectCoronagraph::set_mft
int set_mft(cuFloatComplex *A, cuFloatComplex *B, float *norm, std::string mftType)
SutraPerfectCoronagraph::tmp_mft
CarmaObj< cuFloatComplex > * tmp_mft
Definition:
sutra_perfectCoronagraph.h:29
SutraPerfectCoronagraph::compute_psf
int compute_psf(bool accumulate)
SutraPerfectCoronagraph::BB
std::map< std::string, std::vector< CarmaObj< cuFloatComplex > * > > BB
Definition:
sutra_perfectCoronagraph.h:26
SutraPerfectCoronagraph::SutraPerfectCoronagraph
SutraPerfectCoronagraph(CarmaContext *context, SutraSource *d_source, int im_dimx, int im_dimy, float *wavelength, int nWavelength, int device)
SutraPerfectCoronagraph::compute_image
int compute_image(bool accumulate)
SutraPerfectCoronagraph::~SutraPerfectCoronagraph
~SutraPerfectCoronagraph()=default
SutraPerfectCoronagraph::AA
std::map< std::string, std::vector< CarmaObj< cuFloatComplex > * > > AA
Definition:
sutra_perfectCoronagraph.h:25
SutraPerfectCoronagraph::norm
std::map< std::string, std::vector< float > > norm
Definition:
sutra_perfectCoronagraph.h:27
SutraSource
this class provides the source features to COMPASS
Definition:
sutra_source.h:37
sutra_coronagraph.h
libsutra
include.h
sutra_perfectCoronagraph.h
Generated by
1.9.1