![]() |
COMPASS
5.0.0
End-to-end AO simulation tool using GPU acceleration
|
Utilities function for DM geometry initialization. More...
Functions | |
def | dim_dm_support (float cent, int extent, int ssize) |
Compute the DM support dimensions. More... | |
def | dim_dm_patch (int pupdiam, float diam, bytes type, float alt, List[float] xpos_wfs, List[float] ypos_wfs) |
compute patchDiam for DM More... | |
def | createSquarePattern (float pitch, int nxact) |
def | createHexaPattern (float pitch, int supportSize) |
def | createDoubleHexaPattern (float pitch, int supportSize, float pupAngleDegree) |
np.ndarray | filterActuWithPupil (np.ndarray actuPos, np.ndarray pupil, float threshold) |
def | select_actuators (np.ndarray xc, np.ndarray yc, int nxact, int pitch, float cobs, float margin_in, float margin_out, N=None) |
Select the "valid" actuators according to the system geometry. More... | |
def | make_zernike (int nzer, int size, int diameter, xc=-1., yc=-1., ext=0) |
Compute the zernike modes. More... | |
def | zernumero (int zn) |
Utilities function for DM geometry initialization.
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.dm_util.createDoubleHexaPattern | ( | float | pitch, |
int | supportSize, | ||
float | pupAngleDegree | ||
) |
Definition at line 179 of file dm_util.py.
def shesha.util.dm_util.createHexaPattern | ( | float | pitch, |
int | supportSize | ||
) |
Definition at line 145 of file dm_util.py.
def shesha.util.dm_util.createSquarePattern | ( | float | pitch, |
int | nxact | ||
) |
Definition at line 119 of file dm_util.py.
def shesha.util.dm_util.dim_dm_patch | ( | int | pupdiam, |
float | diam, | ||
bytes | type, | ||
float | alt, | ||
List[float] | xpos_wfs, | ||
List[float] | ypos_wfs | ||
) |
compute patchDiam for DM
:parameters:
pupdiam (int) : pupil diameter
diam (float) : telescope diameter
type (bytes) : type of dm
alt (float) : altitude of dm
xpos_wfs (list) : list of wfs xpos
ypos_wfs (list) : list of wfs ypos
Definition at line 85 of file dm_util.py.
def shesha.util.dm_util.dim_dm_support | ( | float | cent, |
int | extent, | ||
int | ssize | ||
) |
Compute the DM support dimensions.
:parameters:
cent (float): center of the pupil
extent (float): size of the DM support
ssize (int): size of ipupil support
Definition at line 58 of file dm_util.py.
np.ndarray shesha.util.dm_util.filterActuWithPupil | ( | np.ndarray | actuPos, |
np.ndarray | pupil, | ||
float | threshold | ||
) |
Definition at line 234 of file dm_util.py.
def shesha.util.dm_util.make_zernike | ( | int | nzer, |
int | size, | ||
int | diameter, | ||
xc = -1. , |
|||
yc = -1. , |
|||
ext = 0 |
|||
) |
Compute the zernike modes.
:parameters:
nzer (int) : number of modes
size (int) : size of the screen
diameter (int) : pupil diameter
xc (float) : (optional) x-position of the center
yc (float) : (optional) y-position of the center
ext (int) : (optional) extension
:return:
z (np.ndarray(ndims=3,dtype=np.float64)) : zernikes modes
Definition at line 323 of file dm_util.py.
def shesha.util.dm_util.select_actuators | ( | np.ndarray | xc, |
np.ndarray | yc, | ||
int | nxact, | ||
int | pitch, | ||
float | cobs, | ||
float | margin_in, | ||
float | margin_out, | ||
N = None |
|||
) |
Select the "valid" actuators according to the system geometry.
:parameters:
xc actuators x positions (origine in center of mirror)
yc actuators y positions (origine in center of mirror)
nxact: pitch: cobs: margin_in: margin_out:
:return:
liste_fin actuator indice selection for xpos/ypos
Definition at line 275 of file dm_util.py.
def shesha.util.dm_util.zernumero | ( | int | zn | ) |