1414class ODE (CatalaxBase ):
1515 class Config :
1616 arbitrary_types_allowed = True
17- fields = {
18- "parameters" : {"exclude" : True },
19- "species" : {"exclude" : True },
20- }
2117
2218 species : Species
2319 equation : Expr
2420 observable : bool = True
2521 parameters : Dict [Union [str , Expr ], Parameter ] = Field (default_factory = DottedDict )
2622
27- __model__ : Optional ["Model" ] = PrivateAttr (default = None ) # type: ignore
23+ _model : Optional ["Model" ] = PrivateAttr (default = None ) # type: ignore
2824
2925 @validator ("equation" , pre = True )
3026 def converts_ode_to_sympy (cls , value ):
@@ -37,7 +33,7 @@ def __setattr__(self, name, value):
3733
3834 super ().__setattr__ (name , value )
3935
40- if name == "__model__ " :
36+ if name == "_model " :
4137 self .add_parameters_to_model ()
4238
4339 def add_parameters_to_model (self ):
@@ -48,20 +44,20 @@ def add_parameters_to_model(self):
4844 done upon addition of the model due to no given knowledge of the species.
4945 """
5046
51- if self .__model__ is None :
47+ if self ._model is None :
5248 return None
5349
5450 for symbol in self .equation .free_symbols :
55- if str (symbol ) in self .__model__ .species or str (symbol ) == "t" :
51+ if str (symbol ) in self ._model .species or str (symbol ) == "t" :
5652 # Skip species and time symbol
5753 continue
58- elif parameter_exists (str (symbol ), self .__model__ .parameters ):
54+ elif parameter_exists (str (symbol ), self ._model .parameters ):
5955 # Assign parameter if it is already present in the model
60- self .parameters [str (symbol )] = self .__model__ .parameters [str (symbol )]
56+ self .parameters [str (symbol )] = self ._model .parameters [str (symbol )]
6157 continue
6258
6359 # Create a new one and add it to the model and ODE
6460 parameter = Parameter (name = str (symbol ), symbol = symbol ) # type: ignore
6561
6662 self .parameters [str (symbol )] = parameter
67- self .__model__ .parameters [str (symbol )] = parameter
63+ self ._model .parameters [str (symbol )] = parameter
0 commit comments