You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This error is being produced by interpolation.py for rare binary instances:
This error is happening in this chunk of code in get_final_values():
while (kvalue_low is None or np.isnan(kvalue_low)):
mass_low = np.max(self.grid_mass[mass_low > self.grid_mass])
try:
kvalue_low = self.grid_final_values[mass_low][key]
except KeyError:
self.load_grid(mass_low)
kvalue_low = self.grid_final_values[mass_low][key]
During the iteration of the while loop, mass_low becomes <= all values in self.grid_mass, so the cut self.grid_mass[mass_low > self.grid_mass] returns an empty array, and np.max() fails.
Not sure if the logic needs to be fixed or if this should be caught in some sort of try/except.
Note: This error is happening for binaries out-of-hull (see Issue #265 for more info):
You can reproduce this error by evolving the following binary with the posydon-error-checking branch:
@astroJeff I haven't done more than look at the very descriptive report provided by Camille and it's unclear to me how to proceed. My understanding is that the actual error is being raised outside the IFInterpolation, namely in what I think is the single star interpolation part of POSYDON. Presumably this is being caused by errors introduced by the 1NN approximation. If this is the case then I assume we need more tools to understand why this is happening in order to determine whether it is acceptable. In which case if it is I can edit the code so it doesn't throw an error, but instead throws a warning or continues the evolution in the most appropriate way (if possible).
From my end I need to know what specifically is needed for understanding why this happens in an astrophysical sense and then what is the most appropriate way to handle this from your perspective i.e just accept it and throw a warning / error that is more descriptive or continue the evolution of possible. As for actually answering your question, yes I can look into this but I am spread quite thin across research, classes, and some tasks I'm handling for Mathias, but if we could find a time to meet and get all of this straightened out I don't think this should take too long to resolve.
I've come across this too recently. I looked into the specific key it is trying to match. Although I don't remember it exactly, I believe it was trying to match something like the core_mass_at_He_depletion. But those values are NaN if the star doesn't reach it. Or something similar.
So mass_low is set to the maximum mass from the self.grid_mass[mass_low > self.grid_mass], but the kvalue is NaN. It keeps selecting the next one, but those are lower masses which will also have NaNs. Eventually, emptying the grid_mass array.
This error is being produced by interpolation.py for rare binary instances:
This error is happening in this chunk of code in
get_final_values()
:During the iteration of the
while
loop,mass_low
becomes <= all values inself.grid_mass
, so the cutself.grid_mass[mass_low > self.grid_mass]
returns an empty array, andnp.max()
fails.Not sure if the logic needs to be fixed or if this should be caught in some sort of try/except.
Note: This error is happening for binaries out-of-hull (see Issue #265 for more info):
You can reproduce this error by evolving the following binary with the posydon-error-checking branch:
The text was updated successfully, but these errors were encountered: