40 from .
import config_setter_utils
as csu
78 self.
__npp__npp =
None
79 self.
__ord__ord =
None
82 self.
__ncp__ncp =
None
92 self.
__type_kl__type_kl = scons.KLType.KOLMO
107 """ inter-actuator space in pixels"""
109 """ total number of actuators over the full area of the pupil"""
111 """ influ function support size"""
113 """ position of leftmost pixel in largest support"""
115 """ position of rightmost pixel in largest support"""
118 """ influence functions"""
120 """ x positions of influ functions"""
122 """ y positions of influ functions"""
127 """ Influence functions"""
132 """ Magnifying factor"""
134 """ WFS rotation angle in the pupil"""
136 """ X axis misalignment in meters"""
138 """ Y axis misalignment in meters"""
143 :return: (float) : TODO
150 :param ap: (float) : TODO
152 self.
__ap__ap = csu.enforce_arrayMultiDim(ap, (ap.shape[0], ap.shape[1]),
155 ap = property(get_ap, set_ap)
158 """ Get nfunc TODO !!!
160 :return: (int) : TODO
165 """ Set nfunc TODO !!!
167 :param nfunc: (int) : TODO
169 self.
__nfunc__nfunc = csu.enforce_int(nfunc)
171 nfunc = property(get_nfunc, set_nfunc)
174 """ Get extent of pzt dm in pich unit default = 5
176 :return: (int) : extent pzt dm
181 """ Set extent of pzt dm in pich unit default = 5
183 :param p: (int) : extent pzt dm
187 pzt_extent = property(get_pzt_extent, set_pzt_extent)
193 """ Define mirror influence functions to be cropped by the spiders
194 (more generally, pupil edges)
196 :param p: (bool) : segment the mirror
200 segmented_mirror = property(get_segmented_mirror, set_segmented_mirror)
203 """ Get the influence function type for pzt DM
205 :return: (str) : centroider type
210 """ Set the influence function type for pzt DM
212 :param t: (str) : centroider type
214 self.
__influ_type__influ_type = scons.check_enum(scons.InfluType, t)
216 influ_type = property(get_influ_type, set_influ_type)
219 """ Get the influence functions pixels that contributes to each DM pixel
221 :return: (np.ndarray[ndim=1, drype=np.int32]) : influpos
226 """ Set the influence functions pixels that contributes to each DM pixel
228 :param ip: (np.ndarray[ndim=1, drype=np.int32]) : influpos
230 self.
__influpos__influpos = csu.enforce_array(ip, ip.size, dtype=np.int32)
232 _influpos = property(get_influpos, set_influpos)
235 """ Get the number of influence functions pixels that contributes
238 :return: (np.ndarray[ndim=1, drype=np.int32]) : ninflu
243 """ Set the number of influence functions pixels that contributes
246 :param n: (np.ndarray[ndim=1, drype=np.int32]) : ninflu
248 self.
__ninflu__ninflu = csu.enforce_array(n, n.size, dtype=np.int32)
250 _ninflu = property(get_ninflu, set_ninflu)
253 """ Get the index where to start a new DM pixel shape in the array influpos
256 :return: (np.ndarray[ndim=1, drype=np.int32]) : influstart
261 """ Set the index where to start a new DM pixel shape in the array influpos
264 :param n: (np.ndarray[ndim=1, drype=np.int32]) : influstart
266 self.
__influstart__influstart = csu.enforce_array(n, n.size, dtype=np.int32)
268 _influstart = property(get_influstart, set_influstart)
271 """ Get the gain to apply to the actuators of the dm
273 :return: (float) : gain
278 """ Set the gain to apply to the actuators of the dm
280 :param g: (float) : gain
282 self.
__gain__gain = csu.enforce_float(g)
284 gain = property(get_gain, set_gain)
286 def _get_dim_screen(self):
287 """ Get the phase screen dimension
289 :return: (long) : phase screen dimension
293 def _set_dim_screen(self, n):
294 """ Set the phase screen dimension
296 :param n: (long) : phase screen dimension
300 _dim_screen = property(_get_dim_screen, _set_dim_screen)
303 """ Get the number of KL modes used for computation of covmat in case of minimum variance controller
305 :return: (long) : number of KL modes
307 return self.
__nkl__nkl
310 """ Set the number of KL modes used for computation of covmat in case of minimum variance controller
312 :param n: (long) : number of KL modes
314 self.
__nkl__nkl = csu.enforce_int(n)
316 nkl = property(get_nkl, set_nkl)
319 """ Get the type of KL used for computation
321 :return: (string) : KL types : kolmo or karman
326 """ Set the type of KL used for computation
328 :param t: (string) : KL types : kolmo or karman
330 self.
__type_kl__type_kl = scons.check_enum(scons.KLType, t)
332 type_kl = property(get_type_kl, set_type_kl)
337 :return: (str) : type of dm
344 :param t: (str) : type of dm
346 self.
__type__type = scons.check_enum(scons.DmType, t)
348 type = property(get_type, set_type)
351 """ Get the pattern type
353 :return: (str) : type of pattern
358 """ set the pattern type
360 :param t: (str) : type of pattern
362 self.
__type_pattern__type_pattern = scons.check_enum(scons.PatternType, t)
364 type_pattern = property(get_type_pattern, set_type_pattern)
367 """ Get the name of hdf5 influence file
369 :return: (str) : Hdf5 file influence name
374 """ set the name of hdf5 influence file
376 :param filename: (str) : Hdf5 file influence name
380 file_influ_fits = property(get_file_influ_fits, set_file_influ_fits)
383 """ Get the name of hdf5 influence file
385 :return: (str) : Hdf5 file influence name
390 """ set the name of hdf5 influence file
392 :param filename: (str) : Hdf5 file influence name
396 center_name = property(get_center_name, set_center_name)
399 """ Get the name of influence cube in hdf5
401 :return: (str) : name of influence cube
406 """ set the name of influence cube in hdf5
408 :param cubename: (str) : name of influence cube
412 cube_name = property(get_cube_name, set_cube_name)
415 """ Get the name of x coord of influence fonction in file
417 :return: (str) : name of x coord of influence
422 """ set the name of x coord of influence fonction in file
424 :param t: (str) : name of x coord of influence
428 x_name = property(get_x_name, set_x_name)
431 """ Get the name of y coord of influence fonction in file
433 :return: (str) : name of y coord of influence
438 """ set the name of y coord of influence fonction in file
440 :param yname: (str) : name of y coord of influence
444 y_name = property(get_y_name, set_y_name)
447 """ Get the name of influence fonction resolution in file
449 :return: (str) : name of resoltion (meter/pixel) of influence
454 """ set the name of influence fonction resolution in file
456 :param res: (str) : name of resoltion (meter/pixel) of influence
460 influ_res = property(get_influ_res, set_influ_res)
463 """ Get the diameter of the tel pupil projected on the dm plane
465 :return: (float) : diameter (meters) of the tel pupil projected on the dm plane
470 """ Set the diameter of the tel pupil projected on the dm plane
472 :param di: (float) : diameter (meters) of the tel pupil projected on the dm plane
476 diam_dm = property(get_diam_dm, set_diam_dm)
479 """ Get the diameter of the dm pupil projected on the tel pupil plane
481 :return: (float) : diameter (meters) of the dm pupil projected on the tel pupil plane
486 """ Set the diameter of the dm pupil projected on the tel pupil plane
488 :param dp: (float) : diameter (meters) of the dm pupil projected on the tel pupil plane
492 diam_dm_proj = property(get_diam_dm_proj, set_diam_dm_proj)
495 """ Get the number of actuator
497 :return: (long) : number of actuators in the dm
502 """ set the number of actuator
504 :param n: (long) : number of actuators in the dm
506 self.
__nact__nact = csu.enforce_int(n)
508 nact = property(get_nact, set_nact)
511 """ Get the margin for outside actuator select
513 :return: (float) : unit is actuator pitch (+) for extra (-) for intra
518 """ set the margin for outside actuator select
520 :param n: (float) : unit is actuator pitch (+) for extra (-) for intra
524 margin_out = property(get_margin_out, set_margin_out)
527 """ Get the margin for inside actuator select (central obstruction)
529 :return: (float) : unit is actuator pitch (+) for extra (-) for intra
534 """ set the margin for inside actuator select (central obstruction)
536 :param n: (float) : unit is actuator pitch (+) for extra (-) for intra
540 margin_in = property(get_margin_in, set_margin_in)
543 """ Get the conjugaison altitude
545 :return: (float) : conjugaison altitude (im m)
547 return self.
__alt__alt
550 """ set the conjugaison altitude
552 :param a: (float) : conjugaison altitude (im m)
554 self.
__alt__alt = csu.enforce_float(a)
556 alt = property(get_alt, set_alt)
559 """ Get the threshold on response for selection
561 :return: (float) : threshold on response for selection (<1)
566 """ set the threshold on response for selection
568 :param t: (float) : threshold on response for selection (<1)
570 self.
__thresh__thresh = csu.enforce_float(t)
572 thresh = property(get_thresh, set_thresh)
575 """ Get the flag for keeping all actuators
577 :return: (bool) : keep all actuator flag (boolean)
582 """ set the flag for keeping all actuators
584 :param k: (f) : keep all actuator flag (boolean)
588 keep_all_actu = property(get_keep_all_actu, set_keep_all_actu)
591 """ Get the actuators coupling
593 :return: (float) : actuators coupling (<0.3)
598 """ set the actuators coupling
600 :param c: (float) : actuators coupling (<0.3)
602 self.
__coupling__coupling = csu.enforce_float(c)
604 coupling = property(get_coupling, set_coupling)
607 """ Get the Influence function sensitivity
609 :return: (float) : Influence function sensitivity in unit/volt
614 """ set the Influence function sensitivity
616 :param u: (float) : Influence function sensitivity in unit/volt
620 unitpervolt = property(get_unitpervolt, set_unitpervolt)
623 """ Get the nominal voltage for imat
625 :return: (float) : nominal voltage for imat
630 """ set the nominal voltage for imat
632 :param p: (float) : nominal voltage for imat
636 push4imat = property(get_push4imat, set_push4imat)
639 """ Get the total number of actuators
641 :return: (long) : total number of actuators
646 """ set the total number of actuators
648 :param n: (long) : total number of actuators
650 self.
__ntotact__ntotact = csu.enforce_int(n)
652 _ntotact = property(get_ntotact, set_ntotact)
655 """ Get the actuators pitch [pixels]
657 :return: (float) : actuators pitch [pixels]
662 """ set the actuators pitch [pixels]
664 :param p: (float) : actuators pitch [pixels]
666 self.
__pitch__pitch = csu.enforce_float(p)
668 _pitch = property(get_pitch, set_pitch)
671 """ Get the actuators influsize [pixels]
673 :return: (int) : actuators influsize [pixels]
678 """ set the actuators influsize [pixels]
680 :param s: (int) : actuators influsize [pixels]
684 _influsize = property(get_influsize, set_influsize)
687 """ Get the position of bottom left pixel in the largest support
689 :return: (int) : actuators n1 [pixels]
694 """ set the position of bottom left pixel in the largest support
696 :param n: (int) : actuators n1 [pixels]
698 self.
__n1__n1 = csu.enforce_int(n)
700 _n1 = property(get_n1, set_n1)
703 """ Get the position of bottom right pixel in the largest support
705 :return: (int) : actuators n2 [pixels]
710 """ set the position of bottom right pixel in the largest support
712 :param n: (int) : actuators n2 [pixels]
714 self.
__n2__n2 = csu.enforce_int(n)
716 _n2 = property(get_n2, set_n2)
719 """ Get the x positions of influ functions (lower left corner)
721 :return: (np.ndarray[ndim=1,dtype=np.float32_t]) : x positions of influ functions
726 """ Set the x positions of influ functions (lower left corner)
728 :param xpos: (np.ndarray[ndim=1,dtype=np.float32_t]) : x positions of influ functions
730 self.
__xpos__xpos = csu.enforce_array(xpos, self.
__ntotact__ntotact, dtype=np.float32)
732 _xpos = property(get_xpos, set_xpos)
735 """ Get the y positions of influ functions (lower left corner)
737 :return: (np.ndarray[ndim=1,dtype=np.float32_t]) : y positions of influ functions
742 """ Set the y positions of influ functions (lower left corner)
744 :param ypos: (np.ndarray[ndim=1,dtype=np.float32_t]) : y positions of influ functions
746 self.
__ypos__ypos = csu.enforce_array(ypos, self.
__ntotact__ntotact, dtype=np.float32)
748 _ypos = property(get_ypos, set_ypos)
751 """ Get the X-position of the bottom left corner of each influence function
753 :return: (np.ndarray[ndim=1,dtype=np.int32_t]) :
758 """ Set the X-position of the bottom left corner of each influence function
760 :param i1: (np.ndarray[ndim=1,dtype=np.int32_t]) :
762 self.
__i1__i1 = csu.enforce_array(i1, self.
__ntotact__ntotact, dtype=np.int32)
764 _i1 = property(get_i1, set_i1)
767 """ Get the Y-position of the bottom left corner of each influence function
769 :return: (np.ndarray[ndim=1,dtype=np.int32_t]) :
774 """ Set the Y-position of the bottom left corner of each influence function
776 :param j1: (np.ndarray[ndim=1,dtype=np.int32_t]) :
778 self.
__j1__j1 = csu.enforce_array(j1, self.
__ntotact__ntotact, dtype=np.int32)
780 _j1 = property(get_j1, set_j1)
783 """ Get the influence function
785 :return: (np.ndarray[ndim=3,dtype=np.float32_t]) : influence function
790 """ Set the influence function
792 :param influ: (np.ndarray[ndim=3,dtype=np.float32_t]) : influence function
794 self.
__influ__influ = csu.enforce_arrayMultiDim(influ,
796 self.
_ntotact_ntotact), dtype=np.float32)
798 _influ = property(get_influ, set_influ)
801 """ Get the pupil offset in meters
803 :return: (np.ndarray[ndim=1,dtype=np.float32_t]) : offsets [m]
808 """ Set the pupil offset in meters
810 :param off: (np.ndarray[ndim=1,dtype=np.float32_t]) : offsets [m]
812 self.
__pupoffset__pupoffset = csu.enforce_array(off, 2, dtype=np.float32)
814 pupoffset = property(get_pupoffset, set_pupoffset)
817 """ Get the pupil offset in pixels
819 :return: (np.ndarray[ndim=1,dtype=np.float32_t]) : offsets [pixels]
824 """ Set the pupil offset in pixels
826 :param off: (np.ndarray[ndim=1,dtype=np.float32_t]) : offsets [pixels]
828 self.
__puppixoffset__puppixoffset = csu.enforce_array(off, 2, dtype=np.float32)
830 _puppixoffset = property(get_puppixoffset, set_puppixoffset)
833 """ Get the outer scale for KL with Von Karman spectrum
835 :return: (float) : outer scale [m]
840 """ Set the outer scale for KL with Von Karman spectrum
842 :param L0: (float) : outer scale [m]
844 self.
__outscl__outscl = csu.enforce_float(L0)
846 outscl = property(get_outscl, set_outscl)
849 """ Get the number of radial points for KL
851 :return: (int) : number of radial points
856 """ Set the number of radial points for KL
858 :param n: (int) : number of radial points
860 self.
__nr__nr = csu.enforce_int(n)
862 _nr = property(get_nr, set_nr)
865 """ Get the number of elements (?) for KL
867 :return: (int) : number of elements
869 return self.
__npp__npp
872 """ Set the number of elements (?) for KL
874 :param n: (int) : number of elements
876 self.
__npp__npp = csu.enforce_int(n)
878 _npp = property(get_npp, set_npp)
881 """ Get the dimension of grid (?)
883 :return: (int) : dimension
888 """ Set the dimension of grid (?)
890 :param n: (int) : dimension
892 self.
__ncp__ncp = csu.enforce_int(n)
894 _ncp = property(get_ncp, set_ncp)
897 """ Get the radial orders of the basis
899 :return: (int) : radial order of the basis
904 """ Set the radial orders of the basis
906 :param n: (int) : radial order of the basis
908 self.
__ord__ord = csu.enforce_array(n, n.size, dtype=np.int32)
910 _ord = property(get_ord, set_ord)
913 """ Get the radial array of the KL basis
915 :return: (np.ndarray[ndim=1,dtype=np.float32_t]) : radial array
920 """ Set the radial array of the KL basis
922 :param r: (np.ndarray[ndim=1,dtype=np.float32_t]) : radial array
924 self.
__rabas__rabas = csu.enforce_arrayMultiDim(r, r.shape, dtype=np.float32)
926 _rabas = property(get_rabas, set_rabas)
929 """ Get the azimuthal array of the KL basis
931 :return: (np.ndarray[ndim=1,dtype=np.float32_t]) : azimuthal array
936 """ Set the azimuthal array of the KL basis
938 :param r: (np.ndarray[ndim=1,dtype=np.float32_t]) : azimuthal array
940 self.
__azbas__azbas = csu.enforce_arrayMultiDim(r, r.shape, dtype=np.float32)
942 _azbas = property(get_azbas, set_azbas)
945 """ Get the radial coordinates in carthesian grid
947 :return: (np.ndarray[ndim=1,dtype=np.float32_t]) : radial coordinates in carthesian grid
952 """ Set the radial coordinates in carthesian grid
954 :param r: (np.ndarray[ndim=1,dtype=np.float32_t]) : radial coordinates in carthesian grid
956 self.
__cr__cr = csu.enforce_arrayMultiDim(r, r.shape, dtype=np.float32)
958 _cr = property(get_cr, set_cr)
961 """ Get the phi coordinates in carthesian grid
963 :return: (np.ndarray[ndim=1,dtype=np.float32_t]) : phi coordinates in carthesian grid
968 """ Set the phi coordinates in carthesian grid
970 :param r: (np.ndarray[ndim=1,dtype=np.float32_t]) : phi coordinates in carthesian grid
972 self.
__cp__cp = csu.enforce_arrayMultiDim(r, r.shape, dtype=np.float32)
974 _cp = property(get_cp, set_cp)
977 """ Get the magnifying factor
979 :return: (float) : magnifying factor
984 """ Set the magnifying factor
986 :param G: (float) : magnifying factor
988 self.
__G__G = csu.enforce_float(G)
990 G = property(get_G, set_G)
993 """ Get the rotation angle in the pupil
995 :return: (float) : rotation angle (rad)
1000 """ Set the rotation angle in the pupil
1002 :param theta: (float) : rotation angle (rad)
1004 self.
__theta__theta = csu.enforce_float(theta)
1006 theta = property(get_theta, set_theta)
1009 """ Get the X axis misalignment
1011 :return: (float) : dx (pix)
1013 return self.
__dx__dx
1016 """ Set the X axis misalignment
1018 :param dx: (float) : dx (pix)
1020 self.
__dx__dx = csu.enforce_float(dx)
1022 dx = property(get_dx, set_dx)
1025 """ Get the Y axis misalignment
1027 :return: (float) : dy (pix)
1029 return self.
__dy__dy
1032 """ Set the Y axis misalignment
1034 :param dy: (float) : dy (pix)
1036 self.
__dy__dy = csu.enforce_float(dy)
1038 dy = property(get_dy, set_dy)
P-Class (parametres) Param_dm.
def get_nr(self)
Get the number of radial points for KL.
def get_unitpervolt(self)
Get the Influence function sensitivity.
def get_n2(self)
Get the position of bottom right pixel in the largest support.
def set_cube_name(self, cubename)
set the name of influence cube in hdf5
def set_cr(self, r)
Set the radial coordinates in carthesian grid.
def set_thresh(self, t)
set the threshold on response for selection
def get_margin_out(self)
Get the margin for outside actuator select.
def set_nfunc(self, nfunc)
Set nfunc TODO !!!
def get_ypos(self)
Get the y positions of influ functions (lower left corner)
def get_pzt_extent(self)
Get extent of pzt dm in pich unit default = 5.
def get_nfunc(self)
Get nfunc TODO !!!
def set_puppixoffset(self, off)
Set the pupil offset in pixels.
def set_type_kl(self, t)
Set the type of KL used for computation.
def get_y_name(self)
Get the name of y coord of influence fonction in file.
def get_xpos(self)
Get the x positions of influ functions (lower left corner)
def get_theta(self)
Get the rotation angle in the pupil.
def set_influsize(self, s)
set the actuators influsize [pixels]
def set_ntotact(self, n)
set the total number of actuators
def set_ypos(self, ypos)
Set the y positions of influ functions (lower left corner)
def set_pitch(self, p)
set the actuators pitch [pixels]
def get_influ_type(self)
Get the influence function type for pzt DM.
def set_gain(self, g)
Set the gain to apply to the actuators of the dm.
def set_margin_out(self, n)
set the margin for outside actuator select
def get_diam_dm(self)
Get the diameter of the tel pupil projected on the dm plane.
def set_alt(self, a)
set the conjugaison altitude
def set_influstart(self, n)
Set the index where to start a new DM pixel shape in the array influpos to each DM pixel.
def set_keep_all_actu(self, k)
set the flag for keeping all actuators
def set_type(self, t)
set the dm type
def get_dy(self)
Get the Y axis misalignment.
def get_n1(self)
Get the position of bottom left pixel in the largest support.
def set_outscl(self, L0)
Set the outer scale for KL with Von Karman spectrum.
def set_G(self, G)
Set the magnifying factor.
def set_nr(self, n)
Set the number of radial points for KL.
def set_y_name(self, yname)
set the name of y coord of influence fonction in file
def set_dx(self, dx)
Set the X axis misalignment.
def get_outscl(self)
Get the outer scale for KL with Von Karman spectrum.
def get_cr(self)
Get the radial coordinates in carthesian grid.
def get_cube_name(self)
Get the name of influence cube in hdf5.
def set_ap(self, ap)
Set ap TODO!!!
def get_ap(self)
Get ap TODO!!!
def set_pzt_extent(self, p)
Set extent of pzt dm in pich unit default = 5.
def get_i1(self)
Get the X-position of the bottom left corner of each influence function.
def get_influ(self)
Get the influence function.
def get_pupoffset(self)
Get the pupil offset in meters.
def set_ninflu(self, n)
Set the number of influence functions pixels that contributes to each DM pixel.
def set_influpos(self, ip)
Set the influence functions pixels that contributes to each DM pixel.
def get_influpos(self)
Get the influence functions pixels that contributes to each DM pixel.
def get_j1(self)
Get the Y-position of the bottom left corner of each influence function.
def set_coupling(self, c)
set the actuators coupling
def get_nact(self)
Get the number of actuator.
def get_file_influ_fits(self)
Get the name of hdf5 influence file.
def set_i1(self, i1)
Set the X-position of the bottom left corner of each influence function.
def get_nkl(self)
Get the number of KL modes used for computation of covmat in case of minimum variance controller.
def set_cp(self, r)
Set the phi coordinates in carthesian grid.
def get_influstart(self)
Get the index where to start a new DM pixel shape in the array influpos to each DM pixel.
def get_type_kl(self)
Get the type of KL used for computation.
def get_ncp(self)
Get the dimension of grid (?)
def get_cp(self)
Get the phi coordinates in carthesian grid.
def set_azbas(self, r)
Set the azimuthal array of the KL basis.
def get_keep_all_actu(self)
Get the flag for keeping all actuators.
def get_pitch(self)
Get the actuators pitch [pixels].
def get_influ_res(self)
Get the name of influence fonction resolution in file.
def set_file_influ_fits(self, f)
set the name of hdf5 influence file
def get_type_pattern(self)
Get the pattern type.
def set_j1(self, j1)
Set the Y-position of the bottom left corner of each influence function.
def set_diam_dm_proj(self, dp)
Set the diameter of the dm pupil projected on the tel pupil plane.
def set_ord(self, n)
Set the radial orders of the basis.
def get_center_name(self)
Get the name of hdf5 influence file.
def set_diam_dm(self, di)
Set the diameter of the tel pupil projected on the dm plane.
def get_influsize(self)
Get the actuators influsize [pixels].
def set_pupoffset(self, off)
Set the pupil offset in meters.
def get_dx(self)
Get the X axis misalignment.
def get_G(self)
Get the magnifying factor.
def get_coupling(self)
Get the actuators coupling.
def set_influ(self, influ)
Set the influence function.
def set_n2(self, n)
set the position of bottom right pixel in the largest support
def get_thresh(self)
Get the threshold on response for selection.
def set_dy(self, dy)
Set the Y axis misalignment.
def get_margin_in(self)
Get the margin for inside actuator select (central obstruction)
def set_center_name(self, f)
set the name of hdf5 influence file
def get_push4imat(self)
Get the nominal voltage for imat.
def get_puppixoffset(self)
Get the pupil offset in pixels.
def get_ninflu(self)
Get the number of influence functions pixels that contributes to each DM pixel.
def set_unitpervolt(self, u)
set the Influence function sensitivity
def set_npp(self, n)
Set the number of elements (?) for KL.
def set_theta(self, theta)
Set the rotation angle in the pupil.
def get_gain(self)
Get the gain to apply to the actuators of the dm.
def get_diam_dm_proj(self)
Get the diameter of the dm pupil projected on the tel pupil plane.
def get_ord(self)
Get the radial orders of the basis.
def set_type_pattern(self, t)
set the pattern type
def set_influ_type(self, t)
Set the influence function type for pzt DM.
def set_push4imat(self, p)
set the nominal voltage for imat
def set_rabas(self, r)
Set the radial array of the KL basis.
def set_n1(self, n)
set the position of bottom left pixel in the largest support
def set_influ_res(self, res)
set the name of influence fonction resolution in file
def get_segmented_mirror(self)
def get_azbas(self)
Get the azimuthal array of the KL basis.
def set_nact(self, n)
set the number of actuator
def get_npp(self)
Get the number of elements (?) for KL.
def get_x_name(self)
Get the name of x coord of influence fonction in file.
def get_type(self)
Get the dm type.
def set_ncp(self, n)
Set the dimension of grid (?)
def get_ntotact(self)
Get the total number of actuators.
def get_rabas(self)
Get the radial array of the KL basis.
def set_nkl(self, n)
Set the number of KL modes used for computation of covmat in case of minimum variance controller.
def set_x_name(self, xname)
set the name of x coord of influence fonction in file
def get_alt(self)
Get the conjugaison altitude.
def set_segmented_mirror(self, b)
Define mirror influence functions to be cropped by the spiders (more generally, pupil edges)
def set_xpos(self, xpos)
Set the x positions of influ functions (lower left corner)
def set_margin_in(self, n)
set the margin for inside actuator select (central obstruction)
Numerical constants for shesha and config enumerations for safe-typing.