Telescope¶
__init__ ¶
__init__(
resolution: float,
diameter: float,
samplingTime: float = 0.001,
centralObstruction: float = 0,
fov: float = 0,
pupil: bool = None,
pupilReflectivity: float = 1,
logger=None,
)
Initialize a Telescope object for adaptive optics simulations.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
resolution
|
float
|
Resolution of the pupil mask (number of pixels across diameter). |
required |
diameter
|
float
|
Physical diameter of the telescope in meters. |
required |
samplingTime
|
float
|
Time step of the AO loop, used for updating atmospheric phase screens. |
0.001
|
centralObstruction
|
float
|
Central obstruction diameter as a fraction of telescope diameter (0–1). |
0
|
fov
|
float
|
Field of view in arcseconds. |
0
|
pupil
|
bool or ndarray
|
User-defined pupil mask. If None, generates a circular pupil with optional obstruction. |
None
|
pupilReflectivity
|
float or ndarray
|
Pupil reflectivity map or scalar. Defaults to 1. |
1
|
logger
|
Logger
|
Logger instance for output. If None, a default logger is created. |
None
|
set_pupil ¶
Generate the pupil mask either from user input or by creating a circular aperture with optional central obstruction.
Updates the following: - self.pupil - self.pupilReflectivity - self.pixelArea - self.pupilLogical
Returns:
| Type | Description |
|---|---|
None
|
|
apply_spiders ¶
Add spiders to the telescope pupil mask.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
angle
|
list of float
|
List of angles [deg] defining the spider orientation. |
required |
thickness_spider
|
float
|
Width of the spider arms in meters. |
required |
offset_X
|
list of float
|
X offsets per spider. Same length as angle. |
None
|
offset_Y
|
list of float
|
Y offsets per spider. Same length as angle. |
None
|
Returns:
| Type | Description |
|---|---|
None
|
|
print_properties ¶
Log and print key telescope properties: diameter, resolution, pixel size, surface area, central obstruction, and FOV.
Returns:
| Type | Description |
|---|---|
None
|
|