Only apply is_tunable hack to Mirrors, not beamsplitters
See also the following thread in the mattermost https://chat.ligo.org/ligo/pl/taui5fd3cbf7dcoh1itsirp5uw
The problem is that Finesse introduced the 'misaligned' parameter for beamsplitters, while previously it only existed for mirrors. See https://gitlab.com/ifosim/finesse/finesse3/-/commit/9468d70e821ce4946dda43f987fac690bee8379c
It might even be cleaner to only do the isinstance
check, I'm not sure why it was a hasattr
before
It caused the following script to fail (should now work with this branch and finesse 3.0a27
from finesse.ligo.factory import ALIGOFactory
from finesse.ligo.actions import InitialLockLIGO
factory = ALIGOFactory("llo_O4.yaml")
factory.reset()
factory.options.apertures.add = True
factory.options.apertures.BS_HR = True
llo = factory.make()
lock = InitialLockLIGO(
exception_on_lock_fail=False,
exception_on_check_fail=False,
lock_steps=100,
gain_scale=0.4,
pseudo_lock_arms=False,
run_locks=True,
)
sol = llo.run(lock)
Edited by Miron vanderKolk