From 4fd8c4e893e6052cf81f440f53d0a3e5d9b37934 Mon Sep 17 00:00:00 2001 From: Philipp Arras <parras@mpa-garching.mpg.de> Date: Tue, 23 Mar 2021 15:48:16 +0100 Subject: [PATCH] Implemente pre-nonlineariaties --- src/operators/operator.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/operators/operator.py b/src/operators/operator.py index 0768bec1f..965c33bad 100644 --- a/src/operators/operator.py +++ b/src/operators/operator.py @@ -330,6 +330,9 @@ class Operator(metaclass=NiftyMeta): def ptw(self, op, *args, **kwargs): return _OpChain.make((_FunctionApplier(self.target, op, *args, **kwargs), self)) + def ptw_pre(self, op, *args, **kwargs): + return _OpChain.make((self, _FunctionApplier(self.domain, op, *args, **kwargs))) + for f in pointwise.ptw_dict.keys(): def func(f): @@ -337,6 +340,11 @@ for f in pointwise.ptw_dict.keys(): return self.ptw(f, *args, **kwargs) return func2 setattr(Operator, f, func(f)) + def func(f): + def func2(self, *args, **kwargs): + return self.ptw_pre(f, *args, **kwargs) + return func2 + setattr(Operator, f + "_pre", func(f)) class _FunctionApplier(Operator): -- GitLab