Write new simulations#
We’ve seen that it’s possible to write new objective functions and plug them into the new inversion framework by inheriting from the base.Objective abstract class and implementing its abstract methods.
We can do something similar if we want to write our own simulations.
In that case we need to create a class that inherits from base.Simulation and implements its
base.Simulation.n_data
and
base.Simulation.n_params
abstract properties,
and its
base.Simulation.__call__
and
base.Simulation.jacobian
asbtract methods.