Closed carlettif closed 3 months ago
It is likely a SMRT version and installation issue. Can you check:
from smrt.rtsolver import dort
dort.DORT??
in ipython or in a notebook.
It should show the path to the dort.py file and the argument for the initialization. diagonalization_method must appear here. If not reinstall SMRT.
It worked, thank you very much for the fast reply!
Francesca
Good morning everyone,
I write here because I have problems making use of the new DORT solver feature to ease diagonalisation problems in active microwave modelling with SMRT. In this doc https://github.com/smrt-model/smrt/blob/master/smrt/rtsolver/dort.py, I read: _"Two new diagonalisation approches were added in Jan 2024. They are activated by setting the diagonalization_method optional argument (see :py:meth:
smrt.core.make_model
)"_. So, this is how I tried to make use of this new feature in my code:model = make_model("symsce_torquato21", "dort", rtsolver_options=dict(error_handling="nan", diagonalization_method="shur_forcedtriu")) sensor = sensor_list.sentinel1(theta=constants["incidence_angle_theta"]) results = model.run(sensor, snowpacks, snowpack_dimension=("date", dates)) results_array = results.sigmaVV_dB()
However, I get the following error message:
TypeError: DORT.__init__() got an unexpected keyword argument 'diagonalization_method'
I've already made sure to pull all the new changes in SMRT code. I can build the model without problems, the warning comes when I run it. For sure I am doing something wrong. Could you help me solving this issue?
Thank you and have a good day,
Francesca Carletti