Re: [Freeeos-general] Current work on Free_EOS
Brought to you by:
airwin
From: Alan W. I. <ir...@be...> - 2006-01-07 05:18:48
|
On 2005-12-01 23:42-0800 Alan W. Irwin wrote: > On 2005-11-15 14:43-0800 Alan W. Irwin wrote: > >> [...] So with that background, the first two parts of the plan are to >> reorganize >> the FreeEOS iterations to combine the inner and outer iterations and >> provide >> an alternative BFGS convergence technique when the combined Newton-Raphson >> technique fails to converge. The first change should give a factor of ~ 3 >> improvement in speed for kif = 1 and 2 (but not kif = 0). > >> [...] The current status is I almost have the first part of the plan >> completed for >> the kif = 2 case. The previous free_eos_detailed code has large sections >> of >> code moved to additional subroutines that it now calls. Furthermore, the >> free_eos_detailed code has been completely reorganized. However, when I >> tried the revised kif = 2 code this morning for the first time, there were >> obviously some introduced bugs that will need to be sorted out. > > Here is an update on the status of the recent FreeEOS development effort. > > That debugging effort for the kif=2 case was long and difficult. First, I > discovered and fixed some long-standing bugs which gave poor starting values > for the FreeEOS iteration procedure and which were obfuscating some of my > test results. Those bugs also affected the reliability of convergence of > the previously released versions of FreeEOS, but not the results when > convergence was obtained. Second, the code reorganization also created some > bugs of its own. However, I think I have those fixed now, and, for example, > my comprehensive numerical tests of the new combined Newton-Raphson > technique gave excellent results for the first time today for the kif=2 > case. > > I am pleased at this large step forward, but substantially more work is > needed to consolidate the gain by implementing the kif=1 combined > Newton-Raphson case, implementing the BFGS technique for use when the > combined Newton-Raphson technique (either kif=0, 1, or 2) fails to converge, > and comprehensively testing the new convergence code (once completed) by > doing FreeEOS calculations for a wide variety of option suites and physical > conditions. Once all that is done, I plan to release the revised code as > FreeEOS-1.7.0. > Since the above progress report, I have done a lot more toward the goal of finishing the kif=1 (pressure as independent variable) and BFGS convergence cases so it is time for a new progress report. I am now mostly done with the partial derivatives of the pressure (required for kif=1 convergence) and free energy (required for the BFGS convergence technique). I have completed and tested the derivatives for the following components of these two thermodynamic functions: radiation, free electrons, free monatomics (both ionized and neutral), free diatomics (H2 and H2+), Coulomb (three distinct models corresponding to EOS1 [and EOS3], EOS2, and EOS4), pressure ionization (three distinct models corresponding to EOS1, EOS2, and EOS3 [and EOS4]), exchange, and Planck-Larkin occupation probability. Only the component of pressure and free energy due to the excitation effect still must be implemented and tested (two distinct models). Thus, I hope it will only be a few more days until the partial derivative effort is completed. I mentioned that I was testing (by comparing with numerical difference results) the partial derivatives as I went along, but I am doing that test only for one set of physical conditions. Once kif=1 works for the completely reorganized code (which does one combined iteration rather than the old "outer" and "inner" iterations), then I need to do some comprehensive tests over a large range of independent variables, option suites, and kif values to check derivatives, check thermodynamic consistency, and check against older versions of FreeEOS. Once those tests are completed I plan to release FreeEOS-1.7.0 without worrying about the final implementation of the BFGS method (except for the implementation of the partial derivatives of the free energy required for that method which will be finished by then). It should be worth your while to use version 1.7.0 rather than 1.6.0 since the new version should be roughly two to three times faster in most modes because of the combined iteration. I also plan to use the already implemented free-energy derivatives to implement the BFGS method to see whether it makes convergence more robust for high densities and low temperatures. If that pans out, I will release the results as FreeEOS-1.8.0. Finally, assuming I do have more robust convergence, I plan to adjust the semi-empirical coefficients describing the FreeEOS Coulomb model and pressure-ionization to better fit the latest OPAL work (EOS2005) while constraining results to avoid non-physical answers (negative pressures, etc.) for extreme LMS conditions beyond the high density limit of the EOS2005 calculations. I plan to release this work as FreeEOS-2.0.0. In sum, FreeEOS-1.7.0 should be substantially faster than previous versions and FreeEOS-1.8.0 should (I hope) have more robust convergence for extreme LMS conditions, but the actual results should be identical to previous results. FreeEOS-2.0.0 will be my best fit to EOS2005 that can be extrapolated reasonably to extreme LMS conditions. I expect only a tiny change from previous results for the solar case, but I expect the extreme LMS results (0.1 solar mass models and below) should be substantially different. There is a lot to look forward to in the coming weeks for those using FreeEOS. To prepare for those changes, I strongly urge you to download, build, and test FreeEOS-1.6.0 right now following the links to the README file and file release area from http://freeeos.sourceforge.net/documentation.html. The build of the later versions should be essentially identical to the FreeEOS-1.6.0 build so it is all good practice, and you should have access to FreeEOS-1.6.0 results in any case to provide a benchmark for results from later versions of the code. Alan __________________________ Alan W. Irwin email: ir...@be... phone: 250-727-2902 Astronomical research affiliation with Department of Physics and Astronomy, University of Victoria (astrowww.phys.uvic.ca). Programming affiliations with the FreeEOS equation-of-state implementation for stellar interiors (freeeos.sf.net); PLplot scientific plotting software package (plplot.org); the Yorick front-end to PLplot (yplot.sf.net); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________ Linux-powered Science __________________________ |