Skip to content

Commit e8a03ab

Browse files
committed
Make deepcopy in solver optional
1 parent 32dcedc commit e8a03ab

2 files changed

Lines changed: 10 additions & 4 deletions

File tree

src/elli/solver.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,11 @@ class Solver(ABC):
2626
def calculate(self) -> Result:
2727
pass
2828

29-
def __init__(self, experiment: "Experiment") -> None:
30-
self.experiment = deepcopy(experiment)
29+
def __init__(self, experiment: "Experiment", save_experiment: bool = False) -> None:
30+
if save_experiment:
31+
self.experiment = deepcopy(experiment)
32+
else:
33+
self.experiment = experiment
3134
self.structure = self.experiment.structure
3235
self.lbda = self.experiment.lbda
3336
self.theta_i = self.experiment.theta_i

src/elli/solver4x4.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -314,9 +314,12 @@ def get_k_z(
314314
return sqrt(k_z2)
315315

316316
def __init__(
317-
self, experiment: "Experiment", propagator: Propagator = PropagatorExpm()
317+
self,
318+
experiment: "Experiment",
319+
propagator: Propagator = PropagatorExpm(),
320+
save_experiment: bool = False,
318321
) -> None:
319-
super().__init__(experiment)
322+
super().__init__(experiment, save_experiment)
320323
self.propagator = propagator
321324

322325
def calculate(self) -> Result:

0 commit comments

Comments
 (0)