-
Notifications
You must be signed in to change notification settings - Fork 24
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
macro atoms - one free free errors (2) #511
Comments
The problem is occurring in these lines of matom.c
For some reason em_rnge.fmin and em_rnge.fmax are both 0. These are set in setup.c (375 and 376). Further analysis indicates that these lines are not accessed on restarts, so this clearly needs fixing. I fixed that problem on what is now the bug511_ff branch, and the routine did not fail as quickly, but ulitmately it failed with the same error in one_continuum near line 192 of continuum.c
It appears that this fails, by going through line 147 and then 148 of continuum.c the very first time it passes through this. gdb on my mac does not give quite enough information on what is exactly wrong here. Note that this part of the error may be associated with the specific model files I used, when I switched to the Kurucz models, the routine ran to completion. It may be relevant that these models cover a larger wavelength range. |
The set of models I have been using is tlusty_d14.ls. This has 681 models, and each model has 27801 bins, but this is less than the maxium 1000 models and 28000 bins. We also check that a model does not have more than NWAVES bins, so it is not obvious why there are errors with this grid, but not the Kurucz model grid. The problem is that when the program gets to cdf_gen_from array the last two bins in the spectrum have wavelength 5000.0 A. This is the upper limit to the wavelength range. It's as if somehow an additional bin got added. This problem, at this point, is not a macro atom problem, as I have run the same model with standard79 and simple thermal trapping. |
The problem is this code in continuum.c
At this point, we already have a point for 5000 A, and this adds another 1. |
…eated for cdf_gen_from_array does not have two points at the end of the array with the same wavelength. See #511.
* Removed emrng structure, which was causing problems in restarts of macro-atom models * Modifications to one_continuum to assure that the wavelength array created for cdf_gen_from_array does not have two points at the end of the array with the same wavelength. See #511.
OK, so this issue is resolved. Summary: There were two problems both of which generated the same cdf_gen_from_array error:
|
The following macro atom run crashes (on dev) at the beginning of creating a detailed spectrum. This may be related to #492, but the specific error is different and so I am starting a new issue for this problem.
hot.pf.txt
Although the error is a problem with cdf generation, the problem comes from one_free_free as indicated by this traceback:
The problem is related to the fact taht both f1 and f2 are 0 here. The problem occurs when hot.pf is run from scratch and when it is restarted from the end of the ionization cycles (so it is not that something is being overwritten on restart).
The text was updated successfully, but these errors were encountered: