From ef825ec43bda0af16d94eea4c79b16ca45a4ef0a Mon Sep 17 00:00:00 2001 From: LukasK13 Date: Mon, 11 May 2020 10:38:34 +0200 Subject: [PATCH] Support for obstruction factor added --- esbo_etc/classes/psf/IPSF.py | 4 +++- esbo_etc/classes/psf/Zemax.py | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/esbo_etc/classes/psf/IPSF.py b/esbo_etc/classes/psf/IPSF.py index 0b4f690..748bfa4 100644 --- a/esbo_etc/classes/psf/IPSF.py +++ b/esbo_etc/classes/psf/IPSF.py @@ -10,7 +10,7 @@ class IPSF(ABC): """ @abstractmethod def calcReducedObservationAngle(self, contained_energy: Union[str, int, float, u.Quantity], - jitter_sigma: u.Quantity = None) -> u.Quantity: + jitter_sigma: u.Quantity = None, obstruction: float = 0.0) -> u.Quantity: """ Calculate the reduced observation angle in lambda / d_ap for the given contained energy. @@ -20,6 +20,8 @@ class IPSF(ABC): The percentage of energy to be contained within a circle with the diameter reduced observation angle. jitter_sigma : Quantity Sigma of the telescope's jitter in arcsec + obstruction : float + The central obstruction as ratio A_ob / A_ap Returns ------- diff --git a/esbo_etc/classes/psf/Zemax.py b/esbo_etc/classes/psf/Zemax.py index 61390e1..58c0bec 100644 --- a/esbo_etc/classes/psf/Zemax.py +++ b/esbo_etc/classes/psf/Zemax.py @@ -67,7 +67,7 @@ class Zemax(IPSF): # @u.quantity_input(jitter_sigma=u.arcsec) def calcReducedObservationAngle(self, contained_energy: Union[str, int, float, u.Quantity], - jitter_sigma: u.Quantity = None) -> u.Quantity: + jitter_sigma: u.Quantity = None, obstruction: float = 0.0) -> u.Quantity: """ Calculate the reduced observation angle in lambda / d_ap for the given contained energy. @@ -77,6 +77,8 @@ class Zemax(IPSF): The percentage of energy to be contained within a circle with the diameter reduced observation angle. jitter_sigma : Quantity Sigma of the telescope's jitter in arcsec + obstruction : float + The central obstruction as ratio A_ob / A_ap Returns -------