From 18729b12493105164f962222ad441f0e7ac3f1ff Mon Sep 17 00:00:00 2001 From: Andreas Freise <adf@star.bham.ac.uk> Date: Fri, 27 Jan 2017 16:54:04 +0000 Subject: [PATCH] adding different RTL method --- pykat/components.py | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/pykat/components.py b/pykat/components.py index 07ecaa3..ac1126a 100644 --- a/pykat/components.py +++ b/pykat/components.py @@ -339,7 +339,27 @@ class AbstractMirrorComponent(Component): if R is not None: self.R.value = R if T is not None: self.T.value = T if L is not None: self.L.value = L - + + def completeRTL(self, R=None, T=None, L=None): + setValues = sum(x is not None for x in [R,T,L]) + if setValues == 3: + self.setRTL(R,T,L) + elif setValues < 2: + raise pkex.BasePyKatException("must set at least two out of three parameters (R, T, L)") + else: + if R is not None: + self.R.value = R + else: + self.R.value = 1-T-L + if T is not None: + self.T.value = T + else: + self.T.value = 1-R-L + if L is not None: + self.L.value = L + else: + self.L.value = 1-R-T + @property def z(self): return self.__z @property -- GitLab