![]() |
COMPASS
5.0.0
End-to-end AO simulation tool using GPU acceleration
|
Pupil creation functions. More...
Functions | |
def | make_pupil (dim, pupd, tel, xc=-1, yc=-1, real=0, halfSpider=False) |
Initialize the system pupil. More... | |
def | make_pupil_generic (dim, pupd, t_spiders=0.01, spiders_type=SpiderType.SIX, xc=0, yc=0, real=0, cobs=0) |
Initialize the system pupil. More... | |
def | make_VLT (dim, pupd, tel) |
Initialize the VLT pupil. More... | |
def | make_EELT (dim, pupd, tel, N_seg=-1) |
Initialize the EELT pupil. More... | |
def | make_phase_ab (dim, pupd, tel, pup=None, xc=-1, yc=-1, real=0, halfSpider=False) |
Compute the EELT M1 phase aberration. More... | |
def | generateEeltPupilMask (npt, dspider, i0, j0, pixscale, gap, rotdegree, D=40.0, cobs=0, centerMark=0, halfSpider=False, pitch=1.244683637214, nseg=33, inner_rad=4.1, outer_rad=15.4, R=95.7853, nominalD=40, half_seg=0.75, refl=None, rotSpiderDegree=None) |
def | fillPolygon (x, y, i0, j0, scale, gap, N, index=0) |
def | compute6Segments (pupNoSpiders, N, pixscale, dspider, i0, j0, rot=0) |
def | compute1Spider (nspider, N, dspider, i0, j0, scale, rot) |
def | fillSpider (N, nspider, dspider, i0, j0, scale, rot) |
def | fillHalfSpider (N, nspider, dspider, i0, j0, scale, rot) |
def | createHexaPattern (pitch, supportSize) |
def | generateCoordSegments (D, rot, pitch=1.244683637214, nseg=33, inner_rad=4.1, outer_rad=15.4, R=95.7853, nominalD=40) |
def | gendron () |
def | reorganizeSegmentsOrderESO (x, y) |
def | getdatatype (truc) |
Returns the data type of a numpy variable, either scalar value or array. More... | |
def | generateSegmentProperties (attribute, hx, hy, i0, j0, scale, gap, N, D, softGap=0, nominalD=40, pitch=1.244683637214, half_seg=0.75) |
def | centrePourVidal (N, i0, j0, centerMark) |
Variables | |
string | EELT_data = os.environ.get('SHESHA_ROOT') + "/data/apertures/" |
Pupil creation functions.
This file is part of COMPASS https://anr-compass.github.io/compass/
Copyright (C) 2011-2019 COMPASS Team https://github.com/ANR-COMPASS All rights reserved. Distributed under GNU - LGPL
COMPASS is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or any later version.
COMPASS: End-to-end AO simulation tool using GPU acceleration The COMPASS platform was designed to meet the need of high-performance for the simulation of AO systems.
The final product includes a software package for simulating all the critical subcomponents of AO, particularly in the context of the ELT and a real-time core based on several control approaches, with performances consistent with its integration into an instrument. Taking advantage of the specific hardware architecture of the GPU, the COMPASS tool allows to achieve adequate execution speeds to conduct large simulation campaigns called to the ELT.
The COMPASS platform can be used to carry a wide variety of simulations to both testspecific components of AO of the E-ELT (such as wavefront analysis device with a pyramid or elongated Laser star), and various systems configurations such as multi-conjugate AO.
COMPASS is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License along with COMPASS. If not, see https://www.gnu.org/licenses/lgpl-3.0.txt.
def shesha.util.make_pupil.centrePourVidal | ( | N, | |
i0, | |||
j0, | |||
centerMark | |||
) |
def shesha.util.make_pupil.compute1Spider | ( | nspider, | |
N, | |||
dspider, | |||
i0, | |||
j0, | |||
scale, | |||
rot | |||
) |
def shesha.util.make_pupil.compute6Segments | ( | pupNoSpiders, | |
N, | |||
pixscale, | |||
dspider, | |||
i0, | |||
j0, | |||
rot = 0 |
|||
) |
def shesha.util.make_pupil.createHexaPattern | ( | pitch, | |
supportSize | |||
) |
def shesha.util.make_pupil.fillHalfSpider | ( | N, | |
nspider, | |||
dspider, | |||
i0, | |||
j0, | |||
scale, | |||
rot | |||
) |
def shesha.util.make_pupil.fillPolygon | ( | x, | |
y, | |||
i0, | |||
j0, | |||
scale, | |||
gap, | |||
N, | |||
index = 0 |
|||
) |
def shesha.util.make_pupil.fillSpider | ( | N, | |
nspider, | |||
dspider, | |||
i0, | |||
j0, | |||
scale, | |||
rot | |||
) |
def shesha.util.make_pupil.gendron | ( | ) |
Definition at line 919 of file make_pupil.py.
def shesha.util.make_pupil.generateCoordSegments | ( | D, | |
rot, | |||
pitch = 1.244683637214 , |
|||
nseg = 33 , |
|||
inner_rad = 4.1 , |
|||
outer_rad = 15.4 , |
|||
R = 95.7853 , |
|||
nominalD = 40 |
|||
) |
Definition at line 856 of file make_pupil.py.
def shesha.util.make_pupil.generateEeltPupilMask | ( | npt, | |
dspider, | |||
i0, | |||
j0, | |||
pixscale, | |||
gap, | |||
rotdegree, | |||
D = 40.0 , |
|||
cobs = 0 , |
|||
centerMark = 0 , |
|||
halfSpider = False , |
|||
pitch = 1.244683637214 , |
|||
nseg = 33 , |
|||
inner_rad = 4.1 , |
|||
outer_rad = 15.4 , |
|||
R = 95.7853 , |
|||
nominalD = 40 , |
|||
half_seg = 0.75 , |
|||
refl = None , |
|||
rotSpiderDegree = None |
|||
) |
Definition at line 549 of file make_pupil.py.
def shesha.util.make_pupil.generateSegmentProperties | ( | attribute, | |
hx, | |||
hy, | |||
i0, | |||
j0, | |||
scale, | |||
gap, | |||
N, | |||
D, | |||
softGap = 0 , |
|||
nominalD = 40 , |
|||
pitch = 1.244683637214 , |
|||
half_seg = 0.75 |
|||
) |
Definition at line 1041 of file make_pupil.py.
def shesha.util.make_pupil.getdatatype | ( | truc | ) |
Returns the data type of a numpy variable, either scalar value or array.
Definition at line 983 of file make_pupil.py.
def shesha.util.make_pupil.make_EELT | ( | dim, | |
pupd, | |||
tel, | |||
N_seg = -1 |
|||
) |
Initialize the EELT pupil.
:parameters:
dim (long) : linear size of ???
pupd (long) : linear size of total pupil
tel (Param_tel) : Telescope structure
N_seg (int)
TODO complete TODO add force rescal pup elt
Definition at line 261 of file make_pupil.py.
def shesha.util.make_pupil.make_phase_ab | ( | dim, | |
pupd, | |||
tel, | |||
pup = None , |
|||
xc = -1 , |
|||
yc = -1 , |
|||
real = 0 , |
|||
halfSpider = False |
|||
) |
Compute the EELT M1 phase aberration.
:parameters:
dim (long) : linear size of ???
pupd (long) : linear size of total pupil
tel (Param_tel) : Telescope structure
pup (?)
TODO complete
Definition at line 382 of file make_pupil.py.
def shesha.util.make_pupil.make_pupil | ( | dim, | |
pupd, | |||
tel, | |||
xc = -1 , |
|||
yc = -1 , |
|||
real = 0 , |
|||
halfSpider = False |
|||
) |
Initialize the system pupil.
:parameters:
dim (long) : = p_geom.pupdiam
pupd (long) : linear size of total pupil = p_geom.pupdiam
tel (Param_tel) : Telescope structure
xc (int) = p_geom.pupdiam / 2. - 0.5
yc (int) = p_geom.pupdiam / 2. - 0.5
real (int)
TODO complete
Definition at line 68 of file make_pupil.py.
def shesha.util.make_pupil.make_pupil_generic | ( | dim, | |
pupd, | |||
t_spiders = 0.01 , |
|||
spiders_type = SpiderType.SIX , |
|||
xc = 0 , |
|||
yc = 0 , |
|||
real = 0 , |
|||
cobs = 0 |
|||
) |
Initialize the system pupil.
:parameters:
dim (long) : linear size of ???
pupd (long) : linear size of total pupil
t_spiders (float) : secondary supports ratio.
spiders_type (str) : secondary supports type: "four" or "six".
xc (int)
yc (int)
real (int)
cobs (float) : central obstruction ratio.
TODO complete
Definition at line 143 of file make_pupil.py.
def shesha.util.make_pupil.make_VLT | ( | dim, | |
pupd, | |||
tel | |||
) |
Initialize the VLT pupil.
:parameters:
dim (long) : linear size of ???
pupd (long) : linear size of total pupil
tel (Param_tel) : Telescope structure
Definition at line 214 of file make_pupil.py.
def shesha.util.make_pupil.reorganizeSegmentsOrderESO | ( | x, | |
y | |||
) |
string shesha.util.make_pupil.EELT_data = os.environ.get('SHESHA_ROOT') + "/data/apertures/" |
Definition at line 47 of file make_pupil.py.