-
-
Notifications
You must be signed in to change notification settings - Fork 39
Isochrones do not recalculate if filters are changed #100
Description
TLDR
After creating an isochrone object, changing the filters, while keep all else constant, does not cause SPISEA to not recalculate that isochrone.
Suspected cause
This appears to be due to the naming scheme of isochrone files, as well as the way the program checks to see if a particular isochrone file exists, which does not check for changes in filter. The program creates a savefile name parameterized by filepath/age/metallicity/extinction/distance, then checks to see if that file exists in specfied isochrone directory. If it does exist, it checks the isochrone's metadata array for changes in evolution model, atmosphere function, and reddening law; if any of the aforementioned changed, the program goes ahead with recalculating the isochrone.
Current workaround
This can be easily remedied by deleting the file or specific directory where a script saves isochrone files to, but this also appears to be the only parameter that does not prompt reconstruction or recalculation after being changed. All other parameters after being changed will either result in a new isochrone object being made, or the originally constructed object to be recalculated.
Reproducing the Defect
My team and I noticed this problem when we ran \docs\Quick_Start_Make_Cluster.ipynb, creating an isochrone object, then going back to edit code cell 2 so that filt_list contained strings for 2mass filters instead of HST. Running the rest of the cells looked like as if the program had not been changed at all, as printing the astropy table still showed "m_hst_153m" in the headers, and the resulting isochrone and cluster did not appear any different.