Sticky Revision: |
Revision | Tasks | Age | Author | |
---|---|---|---|---|
14407 |
Directory Listing |
Modified
8 months, 1 week ago Mon May 23 19:30:01 2022 UTC |
marios | |
Log: Update copyright year in Hazy |
||||
14402 |
Directory Listing |
Modified
8 months, 4 weeks ago Fri May 6 03:55:30 2022 UTC |
marios | |
Log: Increment minor version to 3 |
||||
14401 |
Directory Listing |
Modified
9 months, 2 weeks ago Fri Apr 15 21:47:48 2022 UTC |
marios | |
Log: Add missing '#' in save file header The command in question was 'save chemisty rates'. |
||||
14400 |
Directory Listing |
Modified
9 months, 3 weeks ago Thu Apr 14 21:17:40 2022 UTC |
marios | |
Log: Update data/stout/refs.json |
||||
14399 |
Directory Listing |
Modified
9 months, 3 weeks ago Thu Apr 14 21:14:27 2022 UTC |
marios | |
Log: Update bibliography |
||||
14398 |
Directory Listing |
Modified
9 months, 3 weeks ago Thu Apr 14 21:06:21 2022 UTC |
marios | |
Log: Update the Stout refs and species PDFs in docs |
||||
14397 |
Directory Listing |
Modified
9 months, 3 weeks ago Thu Apr 14 21:04:41 2022 UTC |
marios | |
Log: Update scripts to manage Stout references Copied from the Git repository. |
||||
14396 |
Directory Listing |
Modified
9 months, 3 weeks ago Tue Apr 12 14:02:22 2022 UTC |
marios | |
Log: Update PDFs in tsuite further |
||||
14395 |
Directory Listing |
Modified
9 months, 3 weeks ago Tue Apr 12 02:25:01 2022 UTC |
marios | |
Log: Update docs and tsuite in prep for release |
||||
14394 |
Directory Listing |
Modified
9 months, 3 weeks ago Mon Apr 11 14:53:00 2022 UTC |
marios | |
Log: Tell doxygen to not include full paths on output |
||||
14393 |
Directory Listing |
Modified
9 months, 3 weeks ago Mon Apr 11 01:21:22 2022 UTC |
marios | |
Log: Update todo_search.pl Cloudy does not follow a single format to TODO's, which causes the script to work incorrectly. The script has been updated to handle such variations: - It handles \todo entries, in addition to TODO. - It processes entries in C++ comments (starting with //). - It does not require a priority number to immediately follow the TODO / \todo string. - If a dash occurs in lieu of a priority number, it removes it from the comment. - It accepts any kind of whitespace character after the TODO string, not just tabs. - It accepts comments in Doxygen docstrings (starting with /**) and properly extracts comments from them. - It does not print the '#'-only separator in the HTML file. The few files that do not conform to these rules were edited and committed previously. |
||||
14392 |
Directory Listing |
Modified
9 months, 3 weeks ago Mon Apr 11 01:09:23 2022 UTC |
marios | |
Log: Add mole_reactions.cpp missing from previous commit |
||||
14391 |
Directory Listing |
Modified
9 months, 3 weeks ago Mon Apr 11 01:08:00 2022 UTC |
marios | |
Log: Conform \todo's syntax to standard in source files Some Cloudy files contain TODO's (or \todo's) that do not follow the general syntax rules, which require that the string be followed by at least one space (or tab), and that there is only one TODO per comment. The edited files atmdat_chianti.cpp, container_classes.h, and stars.cpp now follow that syntax. |
||||
14390 |
Directory Listing |
Modified
9 months, 3 weeks ago Sun Apr 10 23:12:59 2022 UTC |
marios | |
Log: Create file to hold unused header files list_headers.pl creates a file that shows all files that use each header file. It takes some parsing to find if there are files not being used. The new file contains all unused header files. |
||||
14389 |
Directory Listing |
Modified
9 months, 3 weeks ago Sun Apr 10 23:09:14 2022 UTC |
marios | |
Log: Show include files in output of list_headers.pl The previous implementation did not search through other header files when searching for uses of a given header file. As a result, on output (in listfiles.list) some header files would be followed by a blank line, ie, they would appear as not being used. listfiles.list now shows both header and C++ files that use each header file. The only header files that may be followed by a blank line are those that are genuinely unused. |
||||
14388 |
Directory Listing |
Modified
9 months, 4 weeks ago Thu Apr 7 21:18:59 2022 UTC |
marios | |
Log: Update author list |
||||
14387 |
Directory Listing |
Modified
9 months, 4 weeks ago Thu Apr 7 21:17:52 2022 UTC |
marios | |
Log: Update release year to 2022 |
||||
14386 |
Directory Listing |
Modified
13 months ago Mon Jan 3 18:46:50 2022 UTC |
marios | |
Log: Deleting branch update-stout |
||||
14385 |
Directory Listing |
Modified
14 months, 1 week ago Mon Nov 22 19:06:15 2021 UTC |
marios | |
Log: Fixed cast to of INT_MAX to realnum to silence LLVM v12 warning |
||||
14384 |
Directory Listing |
Modified
14 months, 1 week ago Mon Nov 22 19:03:39 2021 UTC |
marios | |
Log: Fixed cast to of LONG_MAX to double to silence LLVM v12 warning |
||||
14383 |
Directory Listing |
Modified
15 months, 1 week ago Thu Oct 21 20:04:05 2021 UTC |
marios | |
Log: Update LineLabels in docs/ |
||||
14382 |
Directory Listing |
Modified
15 months, 1 week ago Thu Oct 21 19:59:34 2021 UTC |
marios | |
Log: Add links to Hazy 1-3 and Quickstart PDFs to docs/ |
||||
14381 |
Directory Listing |
Modified
15 months, 1 week ago Thu Oct 21 19:57:35 2021 UTC |
marios | |
Log: Remove PDF documentation from docs/ |
||||
14380 |
Directory Listing |
Modified
15 months, 2 weeks ago Tue Oct 19 20:07:10 2021 UTC |
marios | |
Log: Add Gargi Shaw's Markdown for CO reactions |
||||
14379 |
Directory Listing |
Modified
15 months, 2 weeks ago Tue Oct 19 19:36:41 2021 UTC |
marios | |
Log: Update data/md5datafiles.dat |
||||
14378 |
Directory Listing |
Modified
15 months, 2 weeks ago Tue Oct 19 18:42:42 2021 UTC |
marios | |
Log: Update md5datafiles.dat, .gitignore |
||||
14377 |
Directory Listing |
Modified
15 months, 2 weeks ago Tue Oct 19 18:27:42 2021 UTC |
marios | |
Log: Enable Mn+ with Stout baseline model with 45 levels |
||||
14376 |
Directory Listing |
Modified
15 months, 2 weeks ago Tue Oct 19 18:26:25 2021 UTC |
marios | |
Log: Update energies as per Camilloni et al. 2021, RNAAS |
||||
14375 |
Directory Listing |
Modified
15 months, 2 weeks ago Tue Oct 19 18:25:15 2021 UTC |
marios | |
Log: Forbid numbers on 'metals deplete' command User Andreas Faisst reported that a scale factor issued with the 'metals deplete' command does not actually reset the abundances. Cloudy is not designed to do both with a single command. Hazy 1, however, does not clearly state so. Mitigate by explicitly forbidding numbers on the command, and by updating Hazy 1 to clarify current policy. https://cloudyastrophysics.groups.io/g/Main/message/4679 |
||||
14374 |
Directory Listing |
Modified
15 months, 2 weeks ago Tue Oct 19 18:23:56 2021 UTC |
marios | |
Log: Fix bug in 'save species bands' User Swayam Panda reported that using the 'save species bands' command more than once in an input deck leads to a segmentation fault. I have been able to reproduce the bug. What causes the bug is a misconception about C++ vector iterators. When storing the data entered in the commands, the file that holds the bands is read in, and its data stored in static vector for the bands file objects by growing the vector (with push_back()). An iterator to that memory location is returned to, and stored by the object that holds all command info. This assumes that the iterator remains invariant after growing the vector. That is not true. C++ vectors are not like C arrays. Iterators (save the last one entered) no longer point to valid memory after the vector grows by one member. The least disturbing solution in the current scheme is first to read the band files, and then to store the info for each command. |
||||
14373 |
Directory Listing |
Modified
15 months, 2 weeks ago Tue Oct 19 18:20:59 2021 UTC |
marios | |
Log: Fix bug with multiple 'save species lines' commands Stefano Bianchi reported that for multiple instances of the command 'save species lines', only the first one is honored. The code expects only one instance of this command, and relies on a static bool 'lgRunOnce' to decide whether it has run. As a result, subsequent calls produce empty files. Remove the bool, and replace it with a record of processed species to guarantee that all requested species are processed, and each is processed only once. https://cloudyastrophysics.groups.io/g/Main/message/4612 |
||||
14372 |
Directory Listing |
Modified
15 months, 2 weeks ago Tue Oct 19 18:18:55 2021 UTC |
marios | |
Log: Update remaining links in Hazy from trac to gitlab |
||||
14371 |
Directory Listing |
Modified
15 months, 2 weeks ago Tue Oct 19 18:17:35 2021 UTC |
marios | |
Log: Add description of TABLE STARS |
||||
14370 |
Directory Listing |
Modified
15 months, 2 weeks ago Tue Oct 19 18:16:35 2021 UTC |
marios | |
Log: Fix broken links to wiki |
||||
14369 |
Directory Listing |
Modified
15 months, 2 weeks ago Tue Oct 19 18:15:01 2021 UTC |
marios | |
Log: Parse 'no collisional ionization' Patch ported from git. Original comments: ================== Marios Chatzikos, 2021-Apr-07: ------------------------------ Remove dead code from 'no collisional ionization' parser Gary Ferland, 2021-Apr-07: -------------------------- more doc on NO COLLISIONAL IONIZATION command Gary Ferland, 2021-Mar-28: -------------------------- parse NO COLLISIONAL IONIZATION |
||||
14368 |
Directory Listing |
Modified
15 months, 2 weeks ago Tue Oct 19 18:08:27 2021 UTC |
marios | |
Log: Update .gitignore |
||||
14367 |
Directory Listing |
Modified
15 months, 2 weeks ago Tue Oct 19 18:06:55 2021 UTC |
marios | |
Log: Gargi Shaw docs CR background and PAH interactions This updates two parts of Hazy 1 and adds a citation to Shaw & Ferland (2021arXiv210103732S). The discussion reviews how the PAH abundance affects the cosmic ray secondary ionization rate and gives the recommended Galactic background for the case where PAHs are present. Our recommended default CR background rate remains the Indriolo+ value but we give the Cloudy command to change this rate to our recommended value when PAHs are present. Patch ported from git. |
||||
14366 |
Directory Listing |
Modified
15 months, 2 weeks ago Tue Oct 19 18:03:06 2021 UTC |
marios | |
Log: Fix bug in maser escape probabilities Patch ported from git. Original comments: ================== Merge branch 'maser' into 'master' See merge request cloudy/cloudy!9 Gary Ferland, 2021-Feb-15: -------------------------- Add debug print for special maser escape probability This adds a commented-out debug print statement to the routine that calls esc_CRDwing_1side. The report extends over the range of interesting optical depths. The range extends from close to the lower limit of the maser optical depths we can handle due to floating point limits to a high enough value well into the positive tau case. Note that this printout occurs for whatever damping constant the routine is called the first time. The print code exits after doing one loop. It does not test a range of damping constant and would not illustrate the problem being fixed on this branch.. An assert for positive escape probability has been added to esc_CRDwing_1side. That assert would have made it much easier to trace down the original thrown assert. Add tfile to list of ignored files. Improve the usefulness of error print when maser optical depth becomes too small by giving the smallest optical depth considered. Gary Ferland, 2021-Feb-08: -------------------------- Correct algebra on line 197 to preserve intent of original source. Gary Ferland, 2021-Feb-07: -------------------------- BUGFIX - CRD with damping wings did not do masers A sim that used all levels of the new Fe II and Fe III datasets threw an assert at Failed: escgrd_v > 0. It happened in the file ../rt_escprob.cpp at line number 330 It was due to a long-standing bug/oversight. The complete redistribution with wings escape probability did not protect against masers and a negative escape probability resulted. We now use the appropriate routine when the optical depth is negative. The sim follows. This oversight has been present for a long time. It is surprising that it has only now bitten. This is likely because we now have atomic models that are much larger than in the past. --- ```` set save prefix "assert" TURBULENCE= 0.600000 LOG 3.000000 species "Fe+" dataset="Smyth19" species "Fe+" levels=all species "Fe+2" levels=all stop column density 23 stop temperature exceeds 1e7 K print lines sort wavelength print lines column print lines faint 1 iterate print last hden 14 table SED "AGN_Jin12_Eddr_mid.sed" phi(H) 23 normalize to "Inci" 1215 scale factor = 1215 ```` |
||||
14365 |
Directory Listing |
Modified
15 months, 2 weeks ago Tue Oct 19 17:52:57 2021 UTC |
marios | |
Log: Merge updated docs from HEAD Patch ported from git. |
||||
14364 |
Directory Listing |
Modified
2 years, 2 months ago Tue Dec 1 22:05:10 2020 UTC |
gary | |
Log: update Ha wavelengths that changed with the NIST > energy levels upgrade |
||||
14363 |
Directory Listing |
Modified
2 years, 2 months ago Tue Dec 1 18:14:37 2020 UTC |
marios | |
Log: Merged from mainline r13840 through r14362 |
||||
14362 |
Directory Listing |
Modified
2 years, 2 months ago Tue Dec 1 18:13:46 2020 UTC |
marios | |
Log: Merged from mainline r13796 through r14361 |
||||
14361 |
Directory Listing |
Modified
2 years, 2 months ago Tue Dec 1 18:11:56 2020 UTC |
marios | |
Log: Merged from mainline r12859 through r14360 |
||||
14360 |
Directory Listing |
Modified
2 years, 2 months ago Mon Nov 30 21:59:56 2020 UTC |
marios | |
Log: tsuite/slow/time_cool_cp.in tsuite/slow/time_cool_cp_eq.in - Updated wavelengths following merge from mainline. |
||||
14359 |
Directory Listing |
Modified
2 years, 2 months ago Mon Nov 30 20:55:32 2020 UTC |
marios | |
Log: Merged from mainline r14155 through r14358 |
||||
14358 |
Directory Listing |
Modified
2 years, 2 months ago Mon Nov 30 20:45:25 2020 UTC |
marios | |
Log: Merged from mainline r14168 through r14357 |
||||
14356 |
Directory Listing |
Modified
2 years, 3 months ago Mon Oct 26 00:32:23 2020 UTC |
marios | |
Log: util/register/viz.py - bugfix: Hybrid transitions betweeen inverted levels were counted as branching from the top level, when in reality they decay *into* the level. This led to some BRs exceeding 1! Now ignoring inverted levels in calculations of BRs. Fixed. |
||||
14355 |
Directory Listing |
Modified
2 years, 3 months ago Thu Oct 22 01:34:12 2020 UTC |
marios | |
Log: util/register/viz.py - Commented out debugging statements in process_tran_WN_data(). |
||||
14354 |
Directory Listing |
Modified
2 years, 3 months ago Wed Oct 21 22:29:31 2020 UTC |
marios | |
Log: Removed bzip2-compressed files: - data/hydro_tpnl_n2000.dat.bz2 - data/hydro_tpn_n2000.dat.bz2 Added xz-compressed files, instead: - data/hydro_tpn_n2000.dat.xz - data/hydro_tpnl_n2000.dat.xz Updated script to work with .xz files. - data/hydro_tpnl_switch.pl Added instructions for how to use script: - data/hydro_tpn.README |
||||
14353 |
Directory Listing |
Modified
2 years, 3 months ago Wed Oct 21 21:49:38 2020 UTC |
marios | |
Log: Renamed: data/switch-hydro-Aul -> data/hydro_tpnl_switch.pl |
||||
14352 |
Directory Listing |
Modified
2 years, 3 months ago Wed Oct 21 19:27:54 2020 UTC |
marios | |
Log: util/idata/nrg.py - bugfix: Attempt to remove indices from an ConfTerm object was done on the fly, i.e., while the list to remove from was iterated over to check for matching indices. Now carrying out the deletion in 'post-processing', i.e., after the list of matching indices has been assembled. Fixed. - bugfix: Incorrect deletion of list of indices (done from local variable). Now removing them from ConfTerm() object. Fixed. - Logical error: Until now, empty terms were not removed from ConfTerms() object. Fixed. |
||||
14351 |
Directory Listing |
Modified
2 years, 3 months ago Wed Oct 21 15:52:26 2020 UTC |
marios | |
Log: util/idata/nrg.py - bugfix: Incorrect use of del to remove item from list. Now using remove() method. Fixed. |
||||
14350 |
Directory Listing |
Modified
2 years, 3 months ago Wed Oct 21 14:28:29 2020 UTC |
marios | |
Log: Bugfix in term registration plots. util/register/viz.py - bugfix in register_terms(): The hybrid energy used was always that of the first list of term indices, so in case of two terms with same configuration and term, the indices of the first were used to get the energy of the second. Now getting using the terms of theory_term_to_merged_term(), see below. Fixed. util/register/convert.py - Now returning the hybrid indices corresponding to the given theory ones, in addition to the hybrid term. Needed to disambiguate between terms. |
||||
14349 |
Directory Listing |
Modified
2 years, 3 months ago Wed Oct 21 13:14:32 2020 UTC |
marios | |
Log: util/register/viz.py - In term plots, do not mirror y-axis on the right-hand side of the plot. - Refactored preparation of file name suffixes for term- and BR update plots into function. It returns the format to be used, which includes leading zeros when needed, e.g., the suffix for file 1 of 20 is '01of20', intead of '1of20' used until now. |
||||
14348 |
Directory Listing |
Modified
2 years, 3 months ago Wed Oct 21 12:33:14 2020 UTC |
marios | |
Log: util/register/shifts.py - bugfix: Energy bracket was flipped, with shifts toward the lower term counted as positive, and vice versa. Reversed the signs. Fixed. - Also, refactored setting of bracket to a function. - Added some debugging info to BR update minimization. |
||||
14347 |
Directory Listing |
Modified
2 years, 3 months ago Tue Oct 20 17:22:22 2020 UTC |
marios | |
Log: util/idata/nrg.py - Logical error: Method BasicEnergy.set_energy() was setting an attribute ('_shifted') of the RegisterEnergy() class. Removed the assignment, and introduced method Energy.set_energy(), which calls the homonymous method of BasicEnergy(), as well as RegisterEnergy.set_shifted(). The latter has been modified to not require indices to be passed on (used with term registration). Fixed. |
||||
14346 |
Directory Listing |
Modified
2 years, 3 months ago Tue Oct 20 14:23:54 2020 UTC |
marios | |
Log: util/adas/extract.py - bugfix: Reading ionization potential off first ADF04 line failed when spaces existed in the ion string. Removed ion designation before processing the line. Fixed. |
||||
14345 |
Directory Listing |
Modified
2 years, 3 months ago Tue Oct 20 06:29:16 2020 UTC |
marios | |
Log: util/register/viz.py - Adapted comparisons against experimental wavelengths to handle datasets that have no WL uncertainties, or have no observed wavelengths at all. |
||||
14344 |
Directory Listing |
Modified
2 years, 3 months ago Tue Oct 20 05:42:58 2020 UTC |
marios | |
Log: adm-ingest-data.py - bugfix: Was not removing dismissed levels from final energy dataset. Fixed. util/idata/nrg.py - Implemented removal of dismissed levels from the entire dataset. Added methods: - Energies.remove_dismissed() - Groups.remove_dismissed() - ConfTerms.remove_dismissed() - ConfTerm.remove_dismissed() |
||||
14343 |
Directory Listing |
Modified
2 years, 3 months ago Tue Oct 20 01:22:29 2020 UTC |
marios | |
Log: util/register/shifts.py - bugfix in scipy.optimize.minimize_scalar: In some cases, minimization of the change to branching ratios failed to find the global minimum, presumably due to the non-linear form of that function. In fact, minimization of the level lifetimes produced a smaller BR change than the function minimizing the BR change! Tightened energy bracket to 1/4 of the range to the nearest terms, and recovered a global minimum lower than that obtained by minimizing the change to the lifetimes. Fixed. |
||||
14342 |
Directory Listing |
Modified
2 years, 3 months ago Tue Oct 20 00:35:27 2020 UTC |
marios | |
Log: util/register/shifts.py - bugfix in prep_trans(): Interlacing unregistered terms can lead to aborts, since the hybrid energy of the lower level cannot be predicted (not yet registered). For instance, in O+5, two interlaced unregistered terms have indices (67, 70), and (68, 69). Obviously transitions from level 70 to (68, 69) cannot be considered, for the above reason. We now explicitly ignore such levels. Fixed. - Increased the maximum number of iterations from 50 to 100 in the call to scipy.optimize.minimize_scalar(). |
||||
14341 |
Directory Listing |
Modified
2 years, 3 months ago Mon Oct 19 23:47:10 2020 UTC |
marios | |
Log: util/idata/nrg.py - bugfix in Energies.is_level_present(): r14334 introduced an overambituous check against a level's Jtot, which prevented J=0 levels from being entered. Removed the check altogether. Fixed. |
||||
14340 |
Directory Listing |
Modified
2 years, 3 months ago Mon Oct 19 19:34:38 2020 UTC |
marios | |
Log: data/switch-hydro-Aul - Added script to ease switching between the H Aul datasets with maximum n=100 and n=2000. |
||||
14339 |
Directory Listing |
Modified
2 years, 3 months ago Mon Oct 19 17:29:21 2020 UTC |
marios | |
Log: Added symbolic links: - data/hydro_tpn.dat -> hydro_tpn_n100.dat - data/hydro_tpnl.dat -> hydro_tpnl_n100.dat |
||||
14338 |
Directory Listing |
Modified
2 years, 3 months ago Mon Oct 19 17:27:06 2020 UTC |
marios | |
Log: Renamed: data/hydro_tpn.dat -> data/hydro_tpn_n100.dat Renamed: data/hydro_tpnl.dat -> data/hydro_tpnl_n100.dat |
||||
14337 |
Directory Listing |
Modified
2 years, 3 months ago Mon Oct 19 17:21:32 2020 UTC |
marios | |
Log: Truncated files to n=100. - data/hydro_tpn.dat - data/hydro_tpnl.dat |
||||
14336 |
Directory Listing |
Modified
2 years, 3 months ago Mon Oct 19 17:10:46 2020 UTC |
marios | |
Log: Added compressed versions of the Hydrogen Einstein A's going up to n=2000. - data/hydro_tpn_n2000.dat.bz2 - data/hydro_tpnl_n2000.dat.bz2 |
||||
14334 |
Directory Listing |
Modified
2 years, 3 months ago Sat Oct 17 22:14:49 2020 UTC |
marios | |
Log: adm-ingest-data.py - Added command-line option to exclude certain levels from hybrid model. util/nist/nrg.py - Added comment to form_name(), explaining that unphysical configurations, such as the O5+ level 1s.2d.3d 4D at 5197910 on NIST, produce undefined names. util/idata/nrg.py - bugfix: In Energies.is_level_present(), a level with no name (see above) would cause an abort. Now guarding against that possibility. Fixed. |
||||
14333 |
Directory Listing |
Modified
2 years, 3 months ago Sat Oct 17 17:28:21 2020 UTC |
marios | |
Log: util/idata/nrg.py - Defined method Energies.max_index() to return the maximum index in a dataset. - Added missing changelog from module docstring. test/idata/test_nrg.py - Exercised method in unit tests. |
||||
14332 |
Directory Listing |
Modified
2 years, 3 months ago Sat Oct 17 16:50:47 2020 UTC |
marios | |
Log: test/idata/test_nrg.py - Rearranged code. Inner functions converted to module functions. |
||||
14331 |
Directory Listing |
Modified
2 years, 3 months ago Fri Oct 16 22:05:57 2020 UTC |
marios | |
Log: Branch to deal with phasing out data/ file hydro_tpnl.dat (and probably hydro_tpn.dat). |
||||
14330 |
Directory Listing |
Modified
2 years, 3 months ago Thu Oct 15 22:12:16 2020 UTC |
marios | |
Log: adm-ingest-data.py - Improved warning for multipole orders discrepant from that determined by ADM. |
||||
14329 |
Directory Listing |
Modified
2 years, 3 months ago Thu Oct 15 22:05:27 2020 UTC |
marios | |
Log: adm-ingest-data.py - bugfix: Spin was extracted from term with a regular expression, which failed for uncertain terms (ending in '?'). Now using specialized functions for LS and JK coupling to extract spin. Fixed. - Refactored code to figure out the 'correct' J-order of terms only when the reordering was requested via the '-r' flag. |
||||
14328 |
Directory Listing |
Modified
2 years, 3 months ago Thu Oct 15 21:43:39 2020 UTC |
marios | |
Log: Added changelog for r14327. - util/idata/tp.py - util/idata/wl.py - util/nist/extract.py |
||||
14327 |
Directory Listing |
Modified
2 years, 3 months ago Thu Oct 15 21:18:17 2020 UTC |
marios | |
Log: Added supervised replacement of transition wavelengths. util/idata/tp.py - Updated TranList.insert_transition() to accept a keyword argument 'replace' to enable user-permitted replacement of duplicate data, instead of bailing with an error. - bugfix in TranList.bail_if_exists(): Attempt was made to execute method of object on the list that holds such objects. Fixed. util/idata/wl.py - Enable replacements when entering and object to a list of wavelengths, method WLS.add_transition(). util/nist/extract.py - Updated process_line_table() to accept keyword argument 'just_wl' to only extract the wavelengths from a HTML table, not the probabilities. - Updated do_get_transitions() to accept the same keyword. - Air wavelengths are obtained ignoring transition probabilities. This becomes important for species with a transition specified twice, once for each multipole order. By disabling the TPs, the user does not have to validate any replacements for them. S/he has to do so for wavelengths, though. |
||||
14326 |
Directory Listing |
Modified
2 years, 3 months ago Thu Oct 15 17:39:28 2020 UTC |
marios | |
Log: util/idata/wl.py - Uncertainty to calculated wavelength is no longer required. test/idata/test_wl.py - Updated unit tests to new interface. - Added tests for data records with no uncertainty in calculated wavelength. util/nist/extract.py - Updated call for WLs() object. - A file of wrong wavelengths is created only if any are found. |
||||
14325 |
Directory Listing |
Modified
2 years, 3 months ago Wed Oct 14 20:31:41 2020 UTC |
marios | |
Log: adm-ingest-data.py - Added changelog for r14324. |
||||
14324 |
Directory Listing |
Modified
2 years, 3 months ago Wed Oct 14 20:26:37 2020 UTC |
marios | |
Log: adm-ingest-data.py - Disabled reordering (typically degenerate) terms by default. Enabled via command line option, -r. |
||||
14323 |
Directory Listing |
Modified
2 years, 3 months ago Wed Oct 14 16:54:55 2020 UTC |
gary | |
Log: load leveling for slowest sims. The lowest abundant elements were turned off. Some predictions did change at the five to ten perent level but the purpose of these sims is to demonstate the global behavior and convergence. |
||||
14322 |
Directory Listing |
Modified
2 years, 3 months ago Wed Oct 14 01:04:31 2020 UTC |
gary | |
Log: svn merge -r14320:14321 ^/trunk/data/SED |
||||
14320 |
Directory Listing |
Modified
2 years, 3 months ago Tue Oct 13 14:08:56 2020 UTC |
marios | |
Log: Merged from mainline r14170 through 14319. |
||||
14319 |
Directory Listing |
Modified
2 years, 3 months ago Fri Oct 9 00:00:16 2020 UTC |
marios | |
Log: adm-merge-tp.py - Only use experimental transitions if their accuracy is 10% or better. |
||||
14315 |
Directory Listing |
Modified
2 years, 4 months ago Sun Oct 4 00:09:06 2020 UTC |
gary | |
Log: svn merge -r14313:14314 ^/trunk/data |
||||
14311 |
Directory Listing |
Modified
2 years, 4 months ago Thu Oct 1 19:22:44 2020 UTC |
marios | |
Log: tsuite/auto/agn_warm_absorber_hiU.in - Updated wavelength for Fe26 1^2S-2^2P to current value, following Priyanka's changes to data/phfit.dat. See r14306. tsuite/auto/fix_input_scripts_wl.pl - Ported changes to look for suggested wavelength, instead of assuming it is always 3 lines after the emitted warning. First implemented on the Priyanka branch in late Aug 2020. docs/LineLabels.txt - Updated to current wavelengths. |
||||
14309 |
Directory Listing |
Modified
2 years, 4 months ago Wed Sep 30 19:19:10 2020 UTC |
gary | |
Log: Priyanka updates to IPs in phfit.dat to current NIST values |
||||
14308 |
Directory Listing |
Modified
2 years, 4 months ago Wed Sep 30 15:59:27 2020 UTC |
gary | |
Log: svn merge -r14236:14304 ^/trunk |
||||
14307 |
Directory Listing |
Modified
2 years, 4 months ago Wed Sep 30 14:56:47 2020 UTC |
gary | |
Log: update wavelengths that changed in r14306 |
||||
14306 |
Directory Listing |
Modified
2 years, 4 months ago Wed Sep 30 14:56:04 2020 UTC |
gary | |
Log: update H-like n=2 energies. Priyanka extended the ionization potential precision in data/phfit.dat to current NIST values. A polynomial correction to 1/n^2 is now applied in source/iso_create.cpp to bring the n=2 energies to their NIST values. Some Ka wavelengths change slightly as a result. |
||||
14305 |
Directory Listing |
Modified
2 years, 4 months ago Wed Sep 30 03:11:55 2020 UTC |
gary | |
Log: svn merge -r14303:14304 ^/trunk |
||||
14303 |
Directory Listing |
Modified
2 years, 4 months ago Sun Sep 20 00:35:05 2020 UTC |
gary | |
Log: svn merge -r14301:14302 ^/trunk |
||||
14301 |
Directory Listing |
Modified
2 years, 4 months ago Sun Sep 20 00:21:51 2020 UTC |
gary | |
Log: svn merge -r14299:14300 ^/trunk |
||||
14299 |
Directory Listing |
Modified
2 years, 4 months ago Sat Sep 19 20:48:38 2020 UTC |
gary | |
Log: svn merge -r14297:14298 ^/trunk |
||||
14297 |
Directory Listing |
Modified
2 years, 4 months ago Thu Sep 17 21:37:55 2020 UTC |
marios | |
Log: Merge from mainline r14200 to r14296 |
||||
14296 |
Directory Listing |
Modified
2 years, 4 months ago Thu Sep 17 21:33:36 2020 UTC |
marios | |
Log: Added option to create scatter plots for transition energy updates. - adm-visualize.py - util/register/trans.py - util/register/viz.py |
||||
14295 |
Directory Listing |
Modified
2 years, 4 months ago Thu Sep 17 02:42:56 2020 UTC |
gary | |
Log: svn merge -r14293:14294 ^/trunk |
||||
14293 |
Directory Listing |
Modified
2 years, 4 months ago Thu Sep 17 02:16:26 2020 UTC |
marios | |
Log: util/register/report.py - Fix title of TeX table for term registration. |
||||
14292 |
Directory Listing |
Modified
2 years, 4 months ago Tue Sep 15 16:35:38 2020 UTC |
marios | |
Log: util/io/json.py - Indent by only 1 space in output JSON files. 2 spaces were used previously. |
||||
14291 |
Directory Listing |
Modified
2 years, 4 months ago Tue Sep 15 14:56:21 2020 UTC |
marios | |
Log: adm-fine-tune.py - Added menu option 'rp' to inspect the wavelength updates in terms of the resolving power required to identify the wavelength shifts. |
||||
14290 |
Directory Listing |
Modified
2 years, 4 months ago Tue Sep 15 14:54:37 2020 UTC |
marios | |
Log: util/register/trans.py - bugfix: The wavelength updates gathered under 'matched_terms' did not truly refer to registered terms, but to transitions that involved (exactly) one registered level. Rearranged the logic to first capture transitions that involve at least one arbitrarily shifted level, and then those that involve two registered terms. Fixed. - Parametrized the registration labels for these transitions with module-wide parameters. |
||||
14289 |
Directory Listing |
Modified
2 years, 4 months ago Tue Sep 15 14:07:30 2020 UTC |
marios | |
Log: adm-fine-tune.py - Changed the formatting of the energy splitting ratio in the output of menu option 'td' (transition details). |
||||
14288 |
Directory Listing |
Modified
2 years, 4 months ago Mon Sep 14 22:53:55 2020 UTC |
marios | |
Log: util/register/viz.py util/register/trans.py - Moved function prepare_WL_scatter_data() from viz.py to trans.py. |
||||
14287 |
Directory Listing |
Modified
2 years, 4 months ago Mon Sep 14 22:45:46 2020 UTC |
marios | |
Log: util/register/viz.py - Modified data structure for data in wavelength scatter and resolving power plots to hold dicts, instead of tuples, as the most fundamental data structure. |
||||
14286 |
Directory Listing |
Modified
2 years, 4 months ago Mon Sep 14 21:50:08 2020 UTC |
marios | |
Log: adm-fine-tune.py - bugfix: Output of menu option 'ld' (level details) fails for a level that does not exist in the theoretical dataset. Added check that the theory level exists. Fixed. - Now showing the experimental level if the theoretical level does not exist. |
||||
14285 |
Directory Listing |
Modified
2 years, 4 months ago Mon Sep 14 21:47:22 2020 UTC |
marios | |
Log: util/register/viz.py - Decluttered delchi plots of wavelength offsets between hybrid and experimental wavelengths, see r14268: Removed error bars; added dotted lines at +/-1, instead, to demark range of consistency within one sigma. |
||||
14284 |
Directory Listing |
Modified
2 years, 4 months ago Mon Sep 14 16:15:56 2020 UTC |
marios | |
Log: util/register/viz.py - Added log-scale plots for the comparison between theory/hybrid and experimental (observed and calculated) wavelengths. |
||||
14283 |
Directory Listing |
Modified
2 years, 4 months ago Mon Sep 14 14:49:50 2020 UTC |
marios | |
Log: util/nist/extract.py - Added wavelength validation. Now air wavelengths are also downloaded and are compared against vacuum wavelengths. The user is notified of any problems, and prompted to correct for air refraction. Any changes made are also reported in a text file. - Refactored line acquisition to be used with both vacuum and air wavelengths. Most notably, process_line_table() has been modified to work over table 'sections', defined as a header followed by lines of data. This is because tables reporting air wavelengths contain three such sections, each reporting the switch between vacuum and air values. util/nist/files.py - Modified get_html_transition_filename() to include '_air' in the output file name, controlled by a keyword argument. By default, the string is omitted. util/idata/wl.py - In BasicWL(), added methods reset_calc_wl() and reset_obs_wl() to update existing wavelengths. test/idata/test_wl.py - Exercised new methods in unit tests. |
||||
14282 |
Directory Listing |
Modified
2 years, 4 months ago Mon Sep 14 14:42:12 2020 UTC |
marios | |
Log: util/nist/wl.py - Modified default wavelength strings to use Unicode symbols. |
||||
14281 |
Directory Listing |
Modified
2 years, 4 months ago Mon Sep 14 13:59:32 2020 UTC |
marios | |
Log: util/nist/phtml.py - In TranParser(): - Enabled parser to read air wavelengths in addition to vacuum. - Modified methods obs_wl(), obs_wl_unc(), calc_wl(), and calc_wl_unc() to report the wavelengths read, either vacuum or air. - In Header(), refactored column validation in method validate_column(). test/nist/test_phtml.py - Exercised new capabilities in unit tests. |
||||
14280 |
Directory Listing |
Modified
2 years, 4 months ago Fri Sep 11 19:33:16 2020 UTC |
marios | |
Log: util/lines util/lines/__init__.py - Added package for spectral lines. util/lines/air.py - Added module for refractive index of air. test/lines test/lines/test_air.py - Added module to exercise new module. |
||||
14279 |
Directory Listing |
Modified
2 years, 4 months ago Fri Sep 11 15:57:45 2020 UTC |
marios | |
Log: util/io/log.py - Implemented shutting down output to STDOUT from calls to prt() via a keyword argument. Also adapted calls to error(), warn(), and note() to print their prefix (e.g., ERROR) only if the main message is printed. Introduced function prep_prefix_kwargs() to handle printing the prefix. |
||||
14278 |
Directory Listing |
Modified
2 years, 4 months ago Fri Sep 11 15:25:35 2020 UTC |
marios | |
Log: util/io/log.py - Added function to tell if printing to STDOUT is enabled or not. test/io/test_log.py - Exercised function in unit tests. |
||||
14277 |
Directory Listing |
Modified
2 years, 4 months ago Thu Sep 10 23:14:47 2020 UTC |
marios | |
Log: util/nist/phtml.py - Refactored code extracting columns from a table line into function parse_table_line(). test/nist/test_phtml.py - Exercised function in unit tests. |
||||
14276 |
Directory Listing |
Modified
2 years, 4 months ago Thu Sep 10 20:41:12 2020 UTC |
marios | |
Log: util/nist/web.py - Added option to extract air wavelengths for lines in the range 0.2--2 micron. test/nist/test_web.py - Exercised option in unit test. |
||||
14275 |
Directory Listing |
Modified
2 years, 4 months ago Thu Sep 10 20:37:56 2020 UTC |
marios | |
Log: adm-fine-tune.py - Added option to sort branching ratios (menu option 'br') in ascending order. The default was descending. |
||||
14274 |
Directory Listing |
Modified
2 years, 4 months ago Wed Sep 9 16:48:33 2020 UTC |
marios | |
Log: adm-fine-tune.py - bugfix: In output of branching ratio updates, each level was assumed to have at least two transitions. This fails for the first excited level. Added check against number of radiative decays. Fixed. |
||||
14273 |
Directory Listing |
Modified
2 years, 4 months ago Wed Sep 9 12:26:42 2020 UTC |
marios | |
Log: adm-fine-tune.py - Added column of theoretical indices to the output of the wavelengths option. util/register/trans.py - bugfix: The same dict was used for storing both the calculated and observed wavelenghts, causing the calculated wavelengths to be overwritten. Now the observed data are stored in a separate dict, preventing an overwrite. Fixed. util/register/viz.py - The word 'Theoretical' was used instead of 'Hybrid' in the output plot showing the wavelength differences from the experimental values in units of the (exp) uncertainty. Fixed. |
||||
14272 |
Directory Listing |
Modified
2 years, 4 months ago Tue Sep 8 21:23:47 2020 UTC |
marios | |
Log: util/io/nicks.py - Added function to append the suffix of a given nickname to another nickname, match_suffix(). test/io/test_nicks.py - Added unit tests for match_suffix(). adm-fine-tune.py adm-merge-tp.py adm-visualize.py - Updated to use new function. |
||||
14271 |
Directory Listing |
Modified
2 years, 4 months ago Tue Sep 8 19:58:32 2020 UTC |
marios | |
Log: adm-fine-tune.py - Added menu option to compare hybrid wavelengths to experimental values. util/register/trans.py - Now recording the experimental indices with wavelength data. util/ui/upr.py - Silence warning in readline_floats() when an empty line is given. |
||||
14270 |
Directory Listing |
Modified
2 years, 4 months ago Tue Sep 8 16:45:35 2020 UTC |
marios | |
Log: util/ui/upr.py - Added function for reading a list of user-supplied floats. test/ui/test_upr.py - Exercised function in unit tests. |
||||
14269 |
Directory Listing |
Modified
2 years, 4 months ago Tue Sep 8 14:51:56 2020 UTC |
marios | |
Log: util/register/viz.py util/register/trans.py - Moved functions to trans.py: - experm_level_to_theory() - experm_level_to_hybrid() - prepare_WL_comparison() - Modified 'obs' and 'calc' datasets furnished by prepare_WL_comparison() to be lists of dicts, not tuples. |
||||
14268 |
Directory Listing |
Modified
2 years, 4 months ago Tue Sep 8 13:40:02 2020 UTC |
marios | |
Log: util/register/viz.py - Added delchi plots for wavelength offsets between the hybrid and experimental datasets. In them, the y axis is the difference of wavelengths, divided by the error in the wavelength. Similar to delchi residual plots in XSPEC. |
||||
14267 |
Directory Listing |
Modified
2 years, 4 months ago Tue Sep 8 12:52:25 2020 UTC |
marios | |
Log: util/register/shifts.py - Added comment in module docstring for recent changes (r14265). |
||||
14266 |
Directory Listing |
Modified
2 years, 4 months ago Mon Sep 7 23:27:41 2020 UTC |
marios | |
Log: util/register/viz.py - Now reporting the range for total change in branching ratio changes of all levels. |
||||
14265 |
Directory Listing |
Modified
2 years, 4 months ago Mon Sep 7 23:26:11 2020 UTC |
marios | |
Log: util/register/shifts.py - In getting the energy shift by minimizing the total correction to the TP: - bugfix: The multipole order index, k, was being as the exponent of the energy ratio in the TP update, instead of 2k+1. Fixed. - Modified code to compute change in the level (inverse) lifetime for the given energy shift, instead of the sum of the log of the TP update factors. This is because the latter does not discriminate between strong and weak lines, leading to an unbiased average that did not work well in many cases. By contrast, the current implementation favors strong transitions over weak ones. The changes are in ufac(); the TP update factors may be obtained by use of a keyword argument. - Parallelized exponentiation using numpy. - Introduced option to set the energy shift by minimizing the total change in branching ratios for this level. - Modified minimize_tp_ufac() to accept a function as its first argument, to use with both minimization options, and renamed to do_minimize(). - Now using inner function to produce uniform output to log for all shifting options. |
||||
14264 |
Directory Listing |
Modified
2 years, 4 months ago Mon Sep 7 00:04:59 2020 UTC |
gary | |
Log: further update to McCall CR-related rates from r14260 |
||||
14261 |
Directory Listing |
Modified
2 years, 4 months ago Sun Sep 6 14:09:38 2020 UTC |
gary | |
Log: svn merge -r14259:14260 ^/trunk |
||||
14257 |
Directory Listing |
Modified
2 years, 4 months ago Sat Sep 5 17:44:56 2020 UTC |
marios | |
Log: util/register/report.py - Added column for fractional energy change in the output to terminal. Complement to r14254. |
||||
14254 |
Directory Listing |
Modified
2 years, 4 months ago Fri Sep 4 21:13:40 2020 UTC |
marios | |
Log: util/register/report.py - Updated TeX output to include column for fractional energy change. |
||||
14253 |
Directory Listing |
Modified
2 years, 4 months ago Fri Sep 4 20:35:04 2020 UTC |
marios | |
Log: adm/util/nist/phtml.py - Modified remove_junk() to also remove '+r' strings trailing energy values. Such strings occur, for example, in the NIST data of F+7. |
||||
14252 |
Directory Listing |
Modified
2 years, 5 months ago Tue Sep 1 15:01:33 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - bugfix in output of 'bs' option: Loop was over level indices, leading to the first entry of the sorted levels not being displayed. Now looping over the list elements. Fixed. |
||||
14251 |
Directory Listing |
Modified
2 years, 5 months ago Tue Sep 1 13:57:40 2020 UTC |
marios | |
Log: adm/util/nist/phtml.py - In EnergyParser.parse(), made processing of entries referring to entire shells possible through a keyword argument (disabled by default). |
||||
14250 |
Directory Listing |
Modified
2 years, 5 months ago Tue Sep 1 13:50:52 2020 UTC |
marios | |
Log: Implemented plots of branching ratio updates per level. - adm/adm-visualize.py - adm/util/register/viz.py |
||||
14249 |
Directory Listing |
Modified
2 years, 5 months ago Tue Sep 1 13:41:29 2020 UTC |
marios | |
Log: adm/util/idata/state.py - Added OneState.full_name() to tell the name of a level including any omitted subshells. - Added MixedState.primary_full_name() to tell the primary full name of the level. adm/test/idata/test_state.py - Added unit tests for the new methods. - Added unit tests for OneState.name(). |
||||
14248 |
Directory Listing |
Modified
2 years, 5 months ago Tue Sep 1 12:43:51 2020 UTC |
marios | |
Log: adm/util/register/trans.py - Newly added module. Contains a refactored function for the weight of a BR update. adm/adm-fine-tune.py - Use refactored function with 'bs' option. adm/util/register/init.py - Added new module to the list of modules for 'import *'. |
||||
14247 |
Directory Listing |
Modified
2 years, 5 months ago Tue Sep 1 12:32:33 2020 UTC |
marios | |
Log: Reverted r14246 |
||||
14246 |
Directory Listing |
Modified
2 years, 5 months ago Tue Sep 1 12:28:31 2020 UTC |
marios | |
Log: adm/util/register/trans.py - Newly added module. Contains a refactored function for the weight of a BR update. adm/adm-fine-tune.py - Use refactored function with 'bs' option. adm/util/register/__init__.py - Added new module to the list of modules for 'import *'. |
||||
14245 |
Directory Listing |
Modified
2 years, 5 months ago Mon Aug 31 21:21:41 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - In the output of the 'bs' option: Allow user to sort each level by the theoretical value of branching ratio, the hybrid one, or the difference. |
||||
14244 |
Directory Listing |
Modified
2 years, 5 months ago Fri Aug 28 18:30:11 2020 UTC |
gary | |
Log: allow all transitions from ground state of two-electron systems to become optically thick in the Case B limit. Previous code had been designed for He I so expected only E1 transitions to be fast |
||||
14243 |
Directory Listing |
Modified
2 years, 5 months ago Fri Aug 28 13:24:08 2020 UTC |
gary | |
Log: svn merge -r14234:14236 ^/trunk |
||||
14242 |
Directory Listing |
Modified
2 years, 5 months ago Fri Aug 28 13:14:12 2020 UTC |
gary | |
Log: allow all transitions from ground state of two-electron systems to become optically thick in the Case B limit. Previous code had been designed for He I so expected only E1 transitions to be fast |
||||
14241 |
Directory Listing |
Modified
2 years, 5 months ago Fri Aug 28 12:56:05 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - Calculations of level lifetimes actually used the total Einstein A. Now using the inverse, i.e., computing the proper lifetimes. Brought in line with the calculations for the scatter plots. The computed ratio is now the same between the two calculations. - Implemented command to show the largest changes in branching ratios out of levels. |
||||
14240 |
Directory Listing |
Modified
2 years, 5 months ago Fri Aug 28 12:40:34 2020 UTC |
marios | |
Log: adm/util/register/viz.py - bugfix in scatter plots of level lifetimes: Calculated theoretical values including TP corrections. Now they are explicitly excluded. Fixed. |
||||
14239 |
Directory Listing |
Modified
2 years, 5 months ago Wed Aug 26 16:06:29 2020 UTC |
marios | |
Log: tsuite/auto/hii_blister.in - Fixed typos: Removed repeated list of lines. |
||||
14238 |
Directory Listing |
Modified
2 years, 5 months ago Wed Aug 26 15:25:47 2020 UTC |
marios | |
Log: tsuite/auto/igm_perseus.in - Updated to CS from Si+2017 used for He-like Fe. |
||||
14237 |
Directory Listing |
Modified
2 years, 5 months ago Wed Aug 26 15:21:15 2020 UTC |
marios | |
Log: Updated wavelengths in test suite and data/LineList_*. source/lines.h source/conv_itercheck.cpp source/iter_startend.cpp source/lines.cpp source/parse_stop.cpp source/parse_test.cpp source/prt_comment.cpp source/prt_final.cpp source/prt_lines_hydro.cpp - Parametrized (and updated) Hbeta wavelength, and used it around the code. tsuite/auto/fix_input_scripts_wl.pl - Updated to search for the line that holds the wavelength suggestion, instead of assuming that it is always 3 lines after the emitted warning. |
||||
14234 |
Directory Listing |
Modified
2 years, 5 months ago Mon Aug 24 15:34:13 2020 UTC |
gary | |
Log: svn merge -r14231:14232 ^/trunk |
||||
14233 |
Directory Listing |
Modified
2 years, 5 months ago Mon Aug 24 15:29:59 2020 UTC |
gary | |
Log: direct update of r14232, limit number of levels, svn merge failed due to change in format |
||||
14231 |
Directory Listing |
Modified
2 years, 5 months ago Mon Aug 24 12:19:02 2020 UTC |
marios | |
Log: Partial update to test suite, following r14228. |
||||
14228 |
Directory Listing |
Modified
2 years, 5 months ago Sat Aug 22 13:46:14 2020 UTC |
marios | |
Log: source/iso.cpp - Read the new Stout files holding the H- and He-like energies, instead of hydro_energies.dat and helike_energies.dat. |
||||
14227 |
Directory Listing |
Modified
2 years, 5 months ago Sat Aug 22 12:36:47 2020 UTC |
marios | |
Log: Split hydro_energies.dat and helike_energies.dat into files in the Stout directory |
||||
14226 |
Directory Listing |
Modified
2 years, 5 months ago Fri Aug 21 00:22:30 2020 UTC |
gary | |
Log: Priyanka update to NIST energies for Fe 1 electron |
||||
14225 |
Directory Listing |
Modified
2 years, 5 months ago Thu Aug 20 00:33:54 2020 UTC |
gary | |
Log: add command No scattering intensity to not include electron scattering as part of the reported total line intensity, due to its very large Doppler width |
||||
14224 |
Directory Listing |
Modified
2 years, 5 months ago Tue Aug 18 15:19:37 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - bugfix: Hybrid dataset was used for theoretical level lifetimes in the branching ratios menu. Fixed. |
||||
14223 |
Directory Listing |
Modified
2 years, 5 months ago Mon Aug 17 21:42:27 2020 UTC |
marios | |
Log: helike_cs.cpp - Added data for Fe, due to Si+2017. |
||||
14222 |
Directory Listing |
Modified
2 years, 5 months ago Mon Aug 17 20:26:26 2020 UTC |
gary | |
Log: adjust He II 1640.40 wavelength hardcoded in a few places |
||||
14221 |
Directory Listing |
Modified
2 years, 5 months ago Mon Aug 17 19:59:25 2020 UTC |
gary | |
Log: mesh.cpp - improve print statement data/hydro_energies.dat - adjust energy of He II n=2 shell so not redundant with H I on Cloudy energy mesh |
||||
14220 |
Directory Listing |
Modified
2 years, 5 months ago Mon Aug 17 16:52:28 2020 UTC |
marios | |
Log: Implemented scatter plots of branching ratio updates. - adm-visualize.py - util/register/viz.py |
||||
14219 |
Directory Listing |
Modified
2 years, 5 months ago Mon Aug 17 15:44:39 2020 UTC |
marios | |
Log: Implemented genreration of level lifetime scatter plots. - adm/adm-visualize.py - adm/util/register/viz.py |
||||
14218 |
Directory Listing |
Modified
2 years, 5 months ago Mon Aug 17 15:40:32 2020 UTC |
marios | |
Log: util/register/viz.py - Modified plots of registration of terms relative to each other to be 20cm in length, if more than 10 terms are shown in such a plot. This was needed to improve appearance of Be+ core-excitation term plots. - Minor improvements to axis labels of energy, TP, and WL plots. |
||||
14217 |
Directory Listing |
Modified
2 years, 5 months ago Mon Aug 17 14:05:42 2020 UTC |
marios | |
Log: test/idata/test_tp.py - In unit tests of total_TP(), exercised ground level total TPs of 0. This is possible as of the previous commit, r14216. |
||||
14216 |
Directory Listing |
Modified
2 years, 5 months ago Mon Aug 17 14:02:06 2020 UTC |
marios | |
Log: util/idata/tp.py - Modified Transitions.total_TP() to remove check that given index is among the list of upper level indices in the dataset. Indices without entries are now reported as having a total TP of 0. adm-fine-tune.py - Removed function get_level_TP_total() in favor of Transitions.total_TP(). - bugfix: With get_level_TP_total(), total TPs of theoretical levels were computed by applying any known corrections to each TP. This could, in principle, affect the reported TPs, although in practice theoretical TPs are computed from the initial dataset, which contains no corrections. In any case, calls to total_TP() now explicitly include a flag to suppress application of any corrections. Fixed. |
||||
14215 |
Directory Listing |
Modified
2 years, 5 months ago Mon Aug 17 13:26:22 2020 UTC |
marios | |
Log: util/idata/tp.py - Defined new Transitions.total_TP() method to compute the total TP in all transitions out of a level; this is essentially the inverse of the level lifetime. test/idata/test_tp.py - Exercised new method in unit tests. Defined new dataset to use with new method; also used with other unit tests. |
||||
14214 |
Directory Listing |
Modified
2 years, 5 months ago Mon Aug 17 00:54:21 2020 UTC |
marios | |
Log: Data for level energies in H-like ions are now read from hydro_energies.dat. iso_create.cpp - Replaced hydro_energy() with a function that is similar to helike_energy(), so that it uses energy data read from a file. The function, in principle, works with all the supplied quantum numbers. However, because the data in the input are not resolved (-1's are used in lieu of the actual values) calls to this function from iso_create(), and prt_lines_hydro() also use -1. prt_lines_hydro.cpp - Updated call to hydro_energy(). helike_energy.cpp - Added useful print statements, currectly commented out. |
||||
14213 |
Directory Listing |
Modified
2 years, 5 months ago Fri Aug 14 23:20:34 2020 UTC |
gary | |
Log: svn merge -r14156:14207 ^/trunk |
||||
14212 |
Directory Listing |
Modified
2 years, 5 months ago Fri Aug 14 20:19:49 2020 UTC |
marios | |
Log: Added capability to produce TeX files of the level and term registration. adm/adm-registration-summary.py - Added CLI --tex option, which enables the TeX output. The regular tables are not produced in this case. adm/util/register/report.py - Added functions to produce AASTeX long deluxetables summarizing the level and term registration. The code uses the same output for each field as the regular tables, so not as many LaTeX formatting options are used as they could -- with the exception of the parity. This may be something to improve upon in the future. |
||||
14211 |
Directory Listing |
Modified
2 years, 5 months ago Fri Aug 14 00:28:28 2020 UTC |
marios | |
Log: adm/util/register/report.py - Refactored reporting functions to separate data preparation from table presentation. This is a preparatory step for producing TeX tables with the same information. |
||||
14210 |
Directory Listing |
Modified
2 years, 5 months ago Thu Aug 13 17:01:56 2020 UTC |
marios | |
Log: adm/util/register/convert.py adm/util/register/viz.py - Minor changes. |
||||
14209 |
Directory Listing |
Modified
2 years, 5 months ago Thu Aug 13 16:58:43 2020 UTC |
marios | |
Log: adm/util/adas/extract.py - Switched back to ignoring Aul <= 1e-30, but keeping the associated collision strengths. |
||||
14208 |
Directory Listing |
Modified
2 years, 5 months ago Thu Aug 13 15:10:09 2020 UTC |
gary | |
Log: svn merge -r14206:14207 ^/trunk |
||||
14206 |
Directory Listing |
Modified
2 years, 5 months ago Wed Aug 12 19:29:15 2020 UTC |
marios | |
Log: Added wavelength comparison plots. adm/util/register/viz.py - Implemented wavelength comparison plots. Each plot shows the difference between the wavelengths of a dataset and the experimental wavelengths. Plots are created for each of the theory and hybrid datasets, against each of the observed and calculated experimental data. adm/adm-visualize.py - Added WL comparisons as the first kind of scatter plots created. The plots are generated only if experimental wavelength exist (as wls_*.json files in the experimental directory). |
||||
14205 |
Directory Listing |
Modified
2 years, 5 months ago Wed Aug 12 14:49:42 2020 UTC |
marios | |
Log: adm/util/register/merge.py - bugfix: The last matched level was reported for levels shifted with experimental terms. The correct level was entered in the hybrid dataset. Now reporting all the relevant experimental levels. Fixed. adm/adm-merge-nrg.py - Minor comment changes. |
||||
14204 |
Directory Listing |
Modified
2 years, 5 months ago Mon Aug 10 22:40:03 2020 UTC |
marios | |
Log: adm-fine-tune.py - bugfix in branching ratios: Theory transition indices were overwritten when levels flipped, ie, the lower level was above the upper level relative to the hybrid dataset. Now using temporary variables for the indices. Fixed. - Reorganized script into separate sections for functions operating on energies and transitions. - Dropped reading of collision files. They were initially read in to set the connectedness of the dataset, but, as of r14147, this is done upon generation of the hybrid dataset. |
||||
14203 |
Directory Listing |
Modified
2 years, 5 months ago Mon Aug 10 16:53:18 2020 UTC |
marios | |
Log: adm/util/register/viz.py - Added scatter plots of theoretical transitions involving valence-only and AI levels. Each dataset is split depending on whether it involves levels that that have been registered (resolved terms), registered en masse with their term (unresolved terms), and shifted en mass with their term. |
||||
14202 |
Directory Listing |
Modified
2 years, 5 months ago Fri Aug 7 22:31:50 2020 UTC |
marios | |
Log: Computing term energy shifts that minimize the total TP updates for the term. adm-shift-unreg-terms.py - Theoretical transitions are always read in; the nickname used depends on which command-line option was given. util/register/shifts.py - Implemented the calculation of the energy shift that minimizes the total updates for a given term. The updates are computed as the absolute log value, to guarantee that the increasing and decreasing factors are treated equally. Computed value offered as an option to shift the term by. - Modified printed list of terms to show at most 11 terms to the user (5 below the term in question, and 5 above). - Added final validation confirmation before the update is committed to memory. util/register/convert.py - In predict_hybrid_level_energy(), allow for calculations of terms shifted by some amount, using the code for terms registered against experimental terms. |
||||
14201 |
Directory Listing |
Modified
2 years, 5 months ago Fri Aug 7 17:58:01 2020 UTC |
marios | |
Log: util/adas/extract.py - Reverted changes of r14006: Now using all transitions, not just those with TP > 1e-30. This prevents skipping collisions between intersystem levels. |
||||
14200 |
Directory Listing |
Modified
2 years, 5 months ago Fri Aug 7 17:49:02 2020 UTC |
marios | |
Log: Merge from mainline r14094 through r14199. |
||||
14198 |
Directory Listing |
Modified
2 years, 5 months ago Fri Aug 7 14:27:12 2020 UTC |
marios | |
Log: adm-ingest-data.py - When setting the custom order of transitions, ask the user if the data involve calculations with configuration interaction, and in LS coupling, and set the order accordingly. - Added index updates for the wavelength dataset, so an initial dataset be created. |
||||
14197 |
Directory Listing |
Modified
2 years, 5 months ago Fri Aug 7 13:07:05 2020 UTC |
marios | |
Log: util/nist/extract.py - When generating the internal energies dataset, use the index of the level in the main dataset to insert it in the groups and terms datasets. The previous practice of using the level index itself is not rigorous, and could in theory cause problems, although that'd be very unlikely. |
||||
14196 |
Directory Listing |
Modified
2 years, 5 months ago Fri Aug 7 12:59:55 2020 UTC |
marios | |
Log: util/nist/phtml.py test/idata/test_nrg.py test/idata/test_coll.py - Minor updates to module docstrings. |
||||
14195 |
Directory Listing |
Modified
2 years, 5 months ago Fri Aug 7 12:54:30 2020 UTC |
marios | |
Log: util/idata/state.py - Renamed class J() -> AngMom(). - bugfix in AngMom(): Missing comma in list of required keywords led to implicit concatentation of strings, which caused copy() and all methods that use that list to fail. Essentially, the code was trying to manipulate non-existent private variables, but it was doing nothing. The test suite failed to detect this because the equality operator also operates on these keywords, so with no data to compare, it reported that objects were equal. Added the missing comma. Fixed. - Added AngMom.pprt(). - Recoded OneState.term_names_agree() and MixedState.Jtot(). test/idata/test_state.py - Updated calls involing new class name, AngMom(). - bugfix: Putative bugfix in r14185 in a test of MixedState.term_names() was (likely) the result of the AngMom() bug involving the missing comma. Reverted. |
||||
14194 |
Directory Listing |
Modified
2 years, 5 months ago Thu Aug 6 23:56:03 2020 UTC |
marios | |
Log: util/nist/extract.py - Query for and extract the wavelengths of all line data, including the uncertainties, and the relevant reference code; all wavelength data in Angstrom. Stored in JSON. - Renamed: - load_tp_data() -> load_line_data() - process_tp_table() -> process_line_table() |
||||
14193 |
Directory Listing |
Modified
2 years, 5 months ago Thu Aug 6 22:41:31 2020 UTC |
marios | |
Log: util/nist/phtml.py - bugfix in Header.parse_header(): Only the last wavelength column read would have an uncertainty column set up. Now columns are set up for both the observed and the Ritz wavelengths. Fixed. - In DataParser.parse(): With the previous fix in place, only one wavelength uncertainty would be stored. Now the uncertainty value read is copied to both uncertainty columns. The code was redesigned so that the assignment of data to columns takes place in one step instead of two. |
||||
14192 |
Directory Listing |
Modified
2 years, 5 months ago Thu Aug 6 19:38:15 2020 UTC |
marios | |
Log: util/idata/wl.py test/idata/test_wl.py - Changed names of methods / variables to align names with NIST modules: - WL_calc -> calc_wl - WL_calc_unc -> calc_wl_unc - WL_obs -> obs_wl - WL_obs_unc -> obs_wl_unc - WL_unit -> wl_unit |
||||
14191 |
Directory Listing |
Modified
2 years, 5 months ago Thu Aug 6 17:16:04 2020 UTC |
marios | |
Log: util/nist/wl.py - Added new module. Contents refactored from util.idata.wl. util/idata/wl.py - Removed code refactored in util.nist.wl module. test/idata/test_wl.py - Updated module imports. util/nist/__init__.py - Added new module to list for 'import *'. |
||||
14190 |
Directory Listing |
Modified
2 years, 5 months ago Thu Aug 6 16:39:58 2020 UTC |
marios | |
Log: util/idata/wl.py - Defined list of acceptable units for wavelengths, and validation function. - Added data field for the unit in the basic wavelength class, and get method, and adapted subclasses to pass a value to it. test/idata/test_wl.py - Updated unit tests to set wavelength unit value, and test stored values. |
||||
14189 |
Directory Listing |
Modified
2 years, 5 months ago Thu Aug 6 13:16:47 2020 UTC |
marios | |
Log: util/idata/wl.py - Added module to handle wavelength data. test/idata/test_wl.py - Exercised new module classes in unit tests. util/idata/__init__.py - Updated for 'import *'. |
||||
14188 |
Directory Listing |
Modified
2 years, 5 months ago Thu Aug 6 12:52:47 2020 UTC |
marios | |
Log: util/idata/tp.py - Renamed Transitions.copy_tran() -> Transitions.insert_transition(). adm-ingest-data.py adm-merge-tp.py - Updated method calls. test/idata/test_tp.py - Updated unit tests. |
||||
14187 |
Directory Listing |
Modified
2 years, 5 months ago Thu Aug 6 12:44:08 2020 UTC |
marios | |
Log: util/idata/tp.py - Refactored several methods of Transitions() into class TranList(). Transitions() now derives from TranList(). test/idata/test_tp.py - Minor formatting changes. |
||||
14186 |
Directory Listing |
Modified
2 years, 6 months ago Tue Aug 4 21:35:05 2020 UTC |
marios | |
Log: test/idata/test_tp.py - Exercised unit tests for BasicTranMeta.export_dict() and .import_dict(); the function was written, but never used. - Promoted unit_tests() inner functions to module tests. |
||||
14185 |
Directory Listing |
Modified
2 years, 6 months ago Tue Aug 4 16:43:44 2020 UTC |
marios | |
Log: util/idata/state.py - Defined class J() to handle angular momentum data. - OneState() methods Jtot() and statw() now methods of J(). - Renamed SpTerm._ignore -> SpTerm._term_ignore. - OneState() now derives from J, as well as from EConfig & SpTerm. test/idata/test_state.py - Exercises new class in unit tests. - Fixed bug in a test of MixedState.term_names(), which failed to identify that compatible terms had been provided. |
||||
14184 |
Directory Listing |
Modified
2 years, 6 months ago Tue Aug 4 02:22:17 2020 UTC |
gary | |
Log: update H3+ rates to Indriolo+2012 |
||||
14183 |
Directory Listing |
Modified
2 years, 6 months ago Tue Aug 4 02:21:49 2020 UTC |
gary | |
Log: svn merge -r14180:14181 ^/trunk |
||||
14180 |
Directory Listing |
Modified
2 years, 6 months ago Tue Aug 4 01:30:25 2020 UTC |
marios | |
Log: util/idata/state.py - Modified has-a relationship of OneState() to EConfig() and SpTerm() to is-a: OneState() now derives from these classes. - Updated calls. test/idata/test_state.py - Updated unit tests. |
||||
14179 |
Directory Listing |
Modified
2 years, 6 months ago Mon Aug 3 23:37:54 2020 UTC |
gary | |
Log: svn merge -r14177:14178 ^/trunk |
||||
14177 |
Directory Listing |
Modified
2 years, 6 months ago Mon Aug 3 00:43:44 2020 UTC |
gary | |
Log: svn merge -r14175:14176 ^/trunk |
||||
14175 |
Directory Listing |
Modified
2 years, 6 months ago Fri Jul 31 15:42:58 2020 UTC |
marios | |
Log: test/idata/test_state.py - Added unit tests for export_dict() and import_dict() methods of OneState() and MixedState(). |
||||
14174 |
Directory Listing |
Modified
2 years, 6 months ago Thu Jul 30 23:23:24 2020 UTC |
marios | |
Log: util/atoms/trans.py - Renamed keyword argument to clarify its purpose: with_CI -> with_no_CI Renamed function: obey_CI_rules() -> obey_no_CI_rules() test/atoms/test_trans.py - Updated unit tests. - Promoted inner functions of unit_tests() to module functions. |
||||
14173 |
Directory Listing |
Modified
2 years, 6 months ago Thu Jul 30 19:16:33 2020 UTC |
marios | |
Log: util/idata/state.py - Defined class SpTerm() to handle spectroscopic term data. - Renamed OneState.term() -> OneState.spterm(). test/idata/test_state.py - Exercised new class methods in unit tests. util/atoms/spterm.py - Minor docstring update. |
||||
14172 |
Directory Listing |
Modified
2 years, 6 months ago Mon Jul 27 22:59:58 2020 UTC |
marios | |
Log: util/idata/state.py - In EConfig(), renamed private variable: _e_config -> _ec. - bugfix in OneState.__eq__(): Using required keywords of EConfig(), instead of OneState(). Fixed. |
||||
14171 |
Directory Listing |
Modified
2 years, 6 months ago Mon Jul 27 22:46:48 2020 UTC |
marios | |
Log: util/idata/state.py - In OneState(): - Demoted _jtot to an optional keyword, as there may be levels of uknown J. - Renamed private variable: _config -> _name - Renamed method: config_level() -> name() - In MixedState(): - Renamed: - _config -> _names - input_config() -> input_names() - have_two_configs() -> have_two_names() - primary_config() -> primary_name() - other_config() -> other_name() - config_level() -> names() adm-fine-tune.py test/idata/test_nrg.py test/idata/test_state.py util/idata/nrg.py util/register/terms.py util/register/viz.py - Update calls to MixedState() methods. |
||||
14170 |
Directory Listing |
Modified
2 years, 6 months ago Mon Jul 27 18:23:04 2020 UTC |
marios | |
Log: Added command 'save dt'. source/save.h - Defined new parameters to control command output. source/init_defaults_preparse.cpp - Initialized some of the new parameters. source/parse_save.cpp - Added parsing of command 'save dt'. source/dynamics.cpp - Defined function that saves the contents of the file. tsuite/auto/time_cool_cd.in - Exercised new command. docs/latex/hazy1/conout.tex - Documented new command. |
||||
14169 |
Directory Listing |
Modified
2 years, 6 months ago Mon Jul 27 16:13:09 2020 UTC |
marios | |
Log: source/dynamics.cpp - Restored timestep_next() to original coding involving only changes to the H density. Permits cooling below 6,500 K. |
||||
14168 |
Directory Listing |
Modified
2 years, 6 months ago Mon Jul 27 14:45:42 2020 UTC |
marios | |
Log: New branch |
||||
14167 |
Directory Listing |
Modified
2 years, 6 months ago Mon Jul 27 00:00:03 2020 UTC |
marios | |
Log: scripts/adm/util/idata/state.py - Defined class EConfig() to handle electronic configurations with. Now OneState() uses an object of EConfig() to store, and to manage the electronic configuration. The refactored methods have been removed from OneState(). - The new class also provides methods to access the ground configuration subshells, as well as the number of electrons in the ion, used with filling any missing shells. In addition, it comes with methods to copy, compare, and export / import data as dictionaries. - Refactored OneState() methods copy(), __eq__(), export_dict(), and import_dict() to use the base.Base methods. scripts/adm/test/idata/test_state.py - Exercised new class in unit tests. - Promoted inner functions of unit_tests() to module functions. scripts/adm/util/idata/nrg.py - Minor formatting changes. |
||||
14166 |
Directory Listing |
Modified
2 years, 6 months ago Sun Jul 26 23:07:45 2020 UTC |
gary | |
Log: fix user suppled density label dat -> sden |
||||
14164 |
Directory Listing |
Modified
2 years, 6 months ago Sun Jul 26 19:25:10 2020 UTC |
gary | |
Log: svn merge -r14162:14163 ^/trunk |
||||
14162 |
Directory Listing |
Modified
2 years, 6 months ago Sat Jul 25 23:43:32 2020 UTC |
gary | |
Log: svn merge -r14160:14161 ^/trunk |
||||
14160 |
Directory Listing |
Modified
2 years, 6 months ago Sat Jul 25 20:08:11 2020 UTC |
gary | |
Log: svn merge -r14158:14159 ^/trunk |
||||
14158 |
Directory Listing |
Modified
2 years, 6 months ago Sat Jul 25 19:13:38 2020 UTC |
gary | |
Log: svn merge -r14156:14157 ^/trunk |
||||
14156 |
Directory Listing |
Modified
2 years, 6 months ago Sat Jul 25 17:36:48 2020 UTC |
gary | |
Log: hack at lines 864-868 rt_escprob.cpp to include or exclude Pesc |
||||
14155 |
Directory Listing |
Modified
2 years, 6 months ago Sat Jul 25 17:30:04 2020 UTC |
gary | |
Log: Copied trunk to branches/Priyanka. |
||||
14154 |
Directory Listing |
Modified
2 years, 6 months ago Sat Jul 25 17:21:50 2020 UTC |
gary | |
Log: svn merge -r14152:14153 ^/trunk |
||||
14152 |
Directory Listing |
Modified
2 years, 6 months ago Fri Jul 24 18:18:16 2020 UTC |
gary | |
Log: changes due to r14151, update CR rate from 2020RNAAS...4...78S |
||||
14151 |
Directory Listing |
Modified
2 years, 6 months ago Fri Jul 24 00:08:36 2020 UTC |
gary | |
Log: svn merge -r14149:14150 ^/trunk/source update from 2020RNAAS...4...78S |
||||
14149 |
Directory Listing |
Modified
2 years, 6 months ago Mon Jul 20 13:16:48 2020 UTC |
gary | |
Log: svn merge -r14147:14148 ^/trunk/data/SED |
||||
14147 |
Directory Listing |
Modified
2 years, 6 months ago Sat Jul 18 14:45:22 2020 UTC |
marios | |
Log: adm/adm-merge-tp.py adm/adm-merge-coll.py - Now setting the connectedness of a dataset as soon as both the transitions and collisions datasets have been merged. The stored energies dataset is updated. - bugfix: It was possible to operate on an unset value for the energies file nickname. If unset, the merged energies dataset is now used by default. Fixed. - bugfix: Checks against the presence of the output file actually produced a new filename if the one of intereset already existed. Now using the intended file name for the checks. Fixed. adm/adm-fine-tune.py adm/adm-finalize.py - No longer setting the hybrid dataset connectedness after loading. |
||||
14146 |
Directory Listing |
Modified
2 years, 6 months ago Sat Jul 18 11:24:48 2020 UTC |
marios | |
Log: adm/util/register/viz.py - In term FS plots, now printing the label of the energy difference on the top left corner when the bottom left is being used (by levels). Left more room for the label both on the bottom, and top corners. |
||||
14145 |
Directory Listing |
Modified
2 years, 6 months ago Fri Jul 17 22:58:17 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py adm/adm-visualize.py - Removed calls to JoinedEnergies.populate_cterms(). The hybrid dataset now has its dataset of terms populated when created. These calls compromise the existing one. See r14139. |
||||
14144 |
Directory Listing |
Modified
2 years, 6 months ago Fri Jul 17 22:34:13 2020 UTC |
marios | |
Log: adm/util/register/viz.py - bugfix: Function remove_degenerate_label_positions() did not remove all degenerate levels, if more than two existed. That was due to how the removal was done. Now the removal is done in two steps: first the list indices to be removed are recorded, and then they are removed (walking the lists backwards). Fixed. |
||||
14143 |
Directory Listing |
Modified
2 years, 6 months ago Fri Jul 17 22:29:29 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - bugfix: In the calculation of the energy, validation of the supplied indices was using the supplied configuration and term. A theoretical combination that has been replaced by an experimental term would therefore fail the test (done on the hybrid dataset). In addition, two terms of different ancestry could also lead to a failure. To avoid such cases, the cterms() dataset is searched for all matches of conf-term combinations, which are then used to validate the supplied indices. Fixed. |
||||
14142 |
Directory Listing |
Modified
2 years, 6 months ago Fri Jul 17 01:50:22 2020 UTC |
marios | |
Log: adm/adm-sort-nrg.py - Refactored code for sorting the indices in ascending order into function get_sort_map(). The function is called before do_sort_energies() is invoked, which now requires the index mapping as an argument. - Now adding a terms sub-dataset to the hybrid energies dataset, with newly defined function update_sorted_cterms(). - Now saving the level index mapping of unsorted to sorted datasets as a file in the OUTPUT directory. adm/util/idata/nrg.py - Defined method ConfTerm.update_indices() to change a list of indices to a different list. adm/util/register/levels.py - Updated class LevelIndexMap(): - It now derives from base.Base, instead of object. - Output file name modified to something more meaningful. - json.py module's save() and pathname() functions are now invoked with the overwrite option turned off. |
||||
14141 |
Directory Listing |
Modified
2 years, 6 months ago Fri Jul 17 01:37:08 2020 UTC |
marios | |
Log: adm/util/register/merge.py - bugfix: For 14140, I had disabled the copying of level and term data into the hybrid dataset to expedite testing, but left them in the commited code by accident. Re-enabled. Fixed. |
||||
14140 |
Directory Listing |
Modified
2 years, 6 months ago Fri Jul 17 01:34:33 2020 UTC |
marios | |
Log: adm/util/register/merge.py - bugfix: The theoretical data were used to enter a configuration and term into the ConfTerms() dataset for a term replaced (level-registered) with an experimental. This led to loss of information, and a mismatch between the configurations in the level and term datasets. Now using the experimental configuration and term for this procedure. Fixed. - Now validating the consistency of levels and terms data, to guard against the possibility of the previous bug resurfacing. |
||||
14139 |
Directory Listing |
Modified
2 years, 6 months ago Thu Jul 16 23:22:24 2020 UTC |
marios | |
Log: adm/util/register/merge.py - Now complementing the level energy dataset with a term dataset. Both theoretical and experimental terms are added to that dataset, using their hybrid level indices. adm/util/idata/nrg.py - Defined ConfTerm.set_indices() to set the indices of a term in one go. - Defined ConfTerms.insert_term() to insert a term (instance of ConfTerm()) to the dataset. - In JoinedEnergies(): - Now allocating a ConfTerms() dataset upon initialization, which is now removed from method populate_cterms(). |
||||
14138 |
Directory Listing |
Modified
2 years, 6 months ago Wed Jul 15 18:31:49 2020 UTC |
marios | |
Log: adm-ingest-data.py - Minor update. |
||||
14137 |
Directory Listing |
Modified
2 years, 6 months ago Wed Jul 15 15:47:16 2020 UTC |
marios | |
Log: adm/adm-sort-nrg.py - Partition the levels into terms before storing the sorted dataset. |
||||
14136 |
Directory Listing |
Modified
2 years, 6 months ago Wed Jul 15 14:47:25 2020 UTC |
marios | |
Log: adm/util/register/merge.py - Now counting experimental levels registered by terms separately from levels registered by levels (in (J,p) groups) against theoretical levels. - Converted the warning that a level already exists to a note. Now also reporting the energy difference between the hybrid (theoretical) and experimental levels to give the user an idea of how different the level would be if it were registered. - If an experimental level is flagged as possibly not real, let the user decide whether to insert it or not in the hybrid dataset. adm/util/idata/nrg.py - Defined BasicEnergyMeta.may_not_be_real to tell if the level is flagged as possibly not real. adm/test/idata/test_nrg.py - Exercised new method in unit tests. |
||||
14135 |
Directory Listing |
Modified
2 years, 6 months ago Wed Jul 15 12:31:22 2020 UTC |
marios | |
Log: adm/util/register/shifts.py - bugfix: When selecting terms to shift, terms were skipped if they were both shifted to match an experimental term, and shifted by an arbitrary energy. The contradictory demand was not met for registered terms (shifted to match an experimental term) and caused them to be presented for shifting by an arbitrary amount, undoing their registration. Removed the test against an arbitrary shift. Fixed. |
||||
14134 |
Directory Listing |
Modified
2 years, 6 months ago Tue Jul 14 23:15:45 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - Highlight notes saying that the level may not be real. adm/util/nist/notes.py - Defined function to test if the given note is for a possibly unreal level, by comparing against a new module parameter. adm/test/nist/test_notes.py - Exercised new function in unit tests. |
||||
14133 |
Directory Listing |
Modified
2 years, 6 months ago Sat Jul 11 00:00:12 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - bugfix in ConfTerms.shifted_with(): Call to ConfTerms.shifted() examines if the Term has been shifted by an arbitrary amount, not if it has been shifted with an experimental term. This is an orthogonal use case, and the function could never give the list of experimental levels. Removed the calls to self.shifted(). Fixed. - Energies.register_level_print() now shows the original energy by default, but accepts an option to show the current value, and the uncertainty if it has been copied. See r14128. adm/util/register/terms.py - When showing the levels of a shifted term, show the updated energy, not the original. (Update related to last change above, made in function check_term_order().) - When shifting a term, now copying the experimental uncertainty to the theoretical level, see r14128. (Update in shift_term_interactive().) - When multiple experimental terms match the theoretical one, offer to shift against the first one that is not already shifted. No check was previously done. Related to r14105. (Change in register_term_by_term().) |
||||
14132 |
Directory Listing |
Modified
2 years, 6 months ago Fri Jul 10 19:46:49 2020 UTC |
marios | |
Log: scripts/adm/util/idata/nrg.py - In ConfTerms.shifted_with(), added validation of input level indices. Refactored function. |
||||
14131 |
Directory Listing |
Modified
2 years, 6 months ago Fri Jul 10 19:38:50 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - Updated ConfTerms.shifted_with() to accept a list of level indices to operate on. |
||||
14130 |
Directory Listing |
Modified
2 years, 6 months ago Fri Jul 10 18:27:26 2020 UTC |
marios | |
Log: adm/util/register/terms.py - bugfix in match_levels(): Required variables not passed in the function interface. Fixed. |
||||
14129 |
Directory Listing |
Modified
2 years, 6 months ago Fri Jul 10 18:06:51 2020 UTC |
marios | |
Log: adm/util/register/terms.py - Refactored code of level registration into function match_levels(). - Refactored inner function check_term_order() as a module function. |
||||
14128 |
Directory Listing |
Modified
2 years, 6 months ago Fri Jul 10 16:50:45 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - Added methods to BasicEnergy() to allow setting the energy uncertainty manually. This includes an unsetter, as well as method a querying the origin of the uncertainty value. The methods are: - set_energy_unc() - unset_energy_unc() - is_energy_unc_manually_set() They are envisioned being used with copying experimental uncertainties to the theory dataset. adm/test/idata/test_nrg.py - Exercised new methods in unit tests. |
||||
14127 |
Directory Listing |
Modified
2 years, 6 months ago Fri Jul 10 04:30:10 2020 UTC |
marios | |
Log: adm/util/register/terms.py - bugfix: Attempt to return obsolete variable in do_shift_term(). Variable name updated. Fixed. |
||||
14126 |
Directory Listing |
Modified
2 years, 6 months ago Fri Jul 10 04:18:21 2020 UTC |
marios | |
Log: adm/util/register/terms.py - Changes to logic when shifting a theory term with an experimental: - The term is shifted en masse, to preserve its fine structure. The per-level confirmation has been disabled. - It is now possible to register the experimental levels as being involved in shifting the theoretical term. This helps highlight already used terms during term registration. - Renamed: shift_interactive() -> shift_term_interactive() adm/util/idata/nrg.py - Minor change in RegisterEnergy.unset_shifted(). - Minor formatting change in Groups.prt_group(). |
||||
14125 |
Directory Listing |
Modified
2 years, 6 months ago Thu Jul 9 05:09:30 2020 UTC |
marios | |
Log: adm/adm-merge-coll.py - Added error messages if either of the indices is not found. The program aborts in such a case. |
||||
14124 |
Directory Listing |
Modified
2 years, 6 months ago Thu Jul 9 05:07:27 2020 UTC |
marios | |
Log: adm/util/register/merge.py - Added module to handle the synthesis of hybrid datasets. Unlike the treatment so far, the hybrid dataset is compiled not by iterating over groups and terms, but over the levels themselves, first theoretical and then experimental. The composition of the hybrid no longer requires user input. adm/adm-merge-nrg.py - Now using the new functionality, although the old one is still available. adm/util/idata/nrg.py - When printing level details for the purposes of registration, show the original energy, not the current value, which may be different. |
||||
14123 |
Directory Listing |
Modified
2 years, 6 months ago Wed Jul 8 23:13:13 2020 UTC |
marios | |
Log: adm/util/atoms/shells.py - bugfix in fix_hex(): Doubly-excited levels with uncertain valence shell (appearing as 'n', e.g., in 'nd') could not processed, and led to crashes. Such levels have only one electron, so there is no hex number to fix for them. They are now being explicitly skipped. Fixed. adm/test/atoms/test_shells.py - Added a unit test to exercise the new functionality. |
||||
14122 |
Directory Listing |
Modified
2 years, 6 months ago Wed Jul 8 16:49:54 2020 UTC |
marios | |
Log: adm/util/register/terms.py - Removed unused function register_terms(). - Minor code rearrangement to keep synthesis functions together. |
||||
14121 |
Directory Listing |
Modified
2 years, 6 months ago Wed Jul 8 15:41:18 2020 UTC |
marios | |
Log: adm/adm-merge-tp.py - bugfix: When searching for a matching experimental transition, no provision was made for levels being in different order between the two datasets. This led to crashes for flipped levels, as the lower index was higher than the upper index. The indices are now brought in order before querying the experimental dataset. Fixed. adm/util/stout/check.py - Minor formatting change. |
||||
14120 |
Directory Listing |
Modified
2 years, 6 months ago Wed Jul 8 15:14:49 2020 UTC |
marios | |
Log: adm/adm-sort-nrg.py - Removed unnecessary import of the util.stout package. |
||||
14119 |
Directory Listing |
Modified
2 years, 6 months ago Wed Jul 8 14:58:42 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - Indent warnings with a blank string when printing level details for registration. |
||||
14118 |
Directory Listing |
Modified
2 years, 6 months ago Tue Jul 7 20:40:23 2020 UTC |
marios | |
Log: adm/util/register/terms.py - When inserting terms into the hybrid dataset, no check was made against matched theory terms. This prevented the corresponding experimental terms to be used in the hybrid dataset. Theory matched terms are no longer processed. Fixed. - This is the second part of the changes introduced in r14117, which prohibit the processing of matched theory levels that do not appear in the experimental groups. adm/util/idata/nrg.py - Updated ConfTerms.prt_cterm() to print information only on one term based on its level indices. |
||||
14117 |
Directory Listing |
Modified
2 years, 6 months ago Tue Jul 7 18:56:20 2020 UTC |
marios | |
Log: adm/util/register/levels.py - During synthesis of hybrid energy dataset, omit reporting levels that are matched with levels that are not in experimental groups. This could happen if the experimental level was removed from the group (because, e.g., it was in a degenate term), but the levels were matched during the term-by-term registration. - Minor updates to how registered levels are presented. See below. adm/util/idata/nrg.py - Modified Energies.register_level_print() and Groups.level_print() to allow passing a string with which to prepend the output for a level. The string is used with the first line of state information. Subsequent lines use a blank string instead. This now includes the lines showing the energy uncertainty, and the notes to the energy value, if present. |
||||
14116 |
Directory Listing |
Modified
2 years, 6 months ago Tue Jul 7 17:23:45 2020 UTC |
marios | |
Log: adm/adm-merge-nrg.py - Removed unnecessary imports. |
||||
14115 |
Directory Listing |
Modified
2 years, 6 months ago Tue Jul 7 04:11:44 2020 UTC |
marios | |
Log: adm/util/register/report.py - bugfix in function show_term_registration(): Experimental term energy and indices were requested using the theoretical configuration and term. That led to craches when ancestry terms were present in the configuration. Now using the experimental configuration and term. Fixed. See also r14109. |
||||
14114 |
Directory Listing |
Modified
2 years, 6 months ago Tue Jul 7 03:59:46 2020 UTC |
marios | |
Log: adm/util/register/shifts.py - bugfix: Incorrect list name in calls to print. Now using the correct name. Fixed. |
||||
14113 |
Directory Listing |
Modified
2 years, 6 months ago Tue Jul 7 03:37:26 2020 UTC |
marios | |
Log: adm/util/register/shifts.py - In list of bracketing terms, columns of printed configuration and term are now guaranteed to be aligned -- string sizes adjust to maximum in dataset. adm/adm-export-stout.py - Removed (repeated) import of util.stout.fmt. |
||||
14112 |
Directory Listing |
Modified
2 years, 6 months ago Tue Jul 7 03:31:02 2020 UTC |
marios | |
Log: adm/util/stout/nrg.py - Refactored code formatting the energy value as function fmt_energy(). adm/test/stout/test_nrg.py - Exercised new function in unit tests. |
||||
14111 |
Directory Listing |
Modified
2 years, 6 months ago Tue Jul 7 01:08:23 2020 UTC |
marios | |
Log: adm/util/register/shifts.py - bugfix: Bracketing failed for terms above the highest term matched/shifted. Redesigned how the bracketing is done to address such cases -- which can be quite common in ions with AI levels. Relative splitting now available for terms that fall within the energy range of registered terms. Fixed. - Removed package name from imports of local modules. adm/util/register/convert.py - Added function predict_hybrid_term_energy(), which was extracted from get_final_term_energy(), inner function of get_bracketing_terms_energies() in shifts.py. adm/util/register/terms.py - Removed package name from imports of local modules. |
||||
14110 |
Directory Listing |
Modified
2 years, 6 months ago Mon Jul 6 19:40:11 2020 UTC |
marios | |
Log: adm/util/register/convert.py adm/util/register/shifts.py - Renamed function predict_hybrid_energy() to predict_hybrid_level_energy(). |
||||
14109 |
Directory Listing |
Modified
2 years, 7 months ago Fri Jul 3 22:19:29 2020 UTC |
marios | |
Log: adm/util/register/shifts.py - In get_bracketing_terms_energies(): - bugfix in inner function get_final_term_energy(): Experimental term energy and indices were requested using the theoretical configuration and term. That led to craches when ancestry terms were present in the configuration. Now using the experimental configuration and term. Fixed. - bugfix: When printing the list of terms, the theoretical configuration and term were used to query the experimental dataset. ConfTerms.get_equiv() is now used to get a list of matching terms, which are then iterated over until a term that matches in indices is also found. An error is issued if no match is produced. Fixed. - Now reporting the relative energy shifts, in terms of the original energy. - bugfix in shift_unregistered_terms(): register.terms.do_shift_terms() call did not include relative energy shift. Fixed. |
||||
14108 |
Directory Listing |
Modified
2 years, 7 months ago Fri Jul 3 21:48:07 2020 UTC |
marios | |
Log: adm/util/idata/state.py - bugfix: Methods() statw used Jtot ignoring that might be a string. Now converted to float using the jtot.Jtot_tofloat() function. Fixed. adm/util/idata/nrg.py - Defined method ConfTerms.get_equiv() to find the combination(s) of configuration and term that is equivalent (ignoring e.g., ancestry terms) to that given. - Simplified ConfTerms.exists() to not search for an equivalent pair of configuration-term, but instead to just confirm the presence of the given pair in the dataset. - bugfix in ConfTerms.energy(): Validation of indices was using the given list unsorted, which lead to failures when the list was not in order (b/c, e.g., two levels flipped). Now using sorted list in validation. Fixed. adm/test/idata/test_nrg.py - In dataset for Ne+7: - Added data structure to enable validation of cterms() infrastructure. - bugfix: Additional configurations were not being processed because they were not prepended by ':'. Fixed. - Updated tests to enable validation of the full configuration, when an additional configuration is available. - bugfix in Energies.cterms(): Validation of configurations was done without any sorting, leading to test failured. Now sorting both lists being compared. Fixed. - Exercised ConfTerms.get_equiv() in unit tests. |
||||
14107 |
Directory Listing |
Modified
2 years, 7 months ago Tue Jun 30 05:00:19 2020 UTC |
marios | |
Log: adm/util/register/terms.py - bugfix: Relative energy change is w.r.t. to the original theoretical, but the experimental was used. Fixed. |
||||
14106 |
Directory Listing |
Modified
2 years, 7 months ago Tue Jun 30 04:14:31 2020 UTC |
marios | |
Log: adm/util/register/terms.py - Report relative energy changes when shifting a term to match the term energy of the experimental term. |
||||
14105 |
Directory Listing |
Modified
2 years, 7 months ago Mon Jun 29 23:27:55 2020 UTC |
marios | |
Log: adm/util/register/terms.py - bugfix: When multiple experimental terms matched, only the first one was processed, even if it were matched. Now processing all matching terms. Fixed. - When shifting levels mark the experimental levels as shifted with their corresponding theoretical levels. These are now shown on screen, and are especially useful when multiple experimental terms match the ADAS terms that appear the same because their ancestry is not preserved -- they help keeping track of level registration. - Removed an outdated dict that keeps track of which experimental terms have been matched from __process_terms(). adm/util/register/levels.py - Now printing energy differences between theory and experiment in bold. adm/util/idata/nrg.py - When printing to screen: - Use bold text for headers of terms (prior to the levels being displayed). - Use red color for already-matched levels. - Print warnings in blue about which levels they are matched with. adm/util/io/log.py - Added ability to print text using ANSI colors and decorations. |
||||
14103 |
Directory Listing |
Modified
2 years, 7 months ago Wed Jun 24 20:22:17 2020 UTC |
marios | |
Log: adm/util/register/levels.py - To allow for multiple configurations contributing to a level, when comparing the excitation signatures of two levels, do not require they be identical, but rather that their intersection is not the empty set. |
||||
14102 |
Directory Listing |
Modified
2 years, 7 months ago Wed Jun 24 16:24:09 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - In Energy.register_level_print(), print the uncertainty on the level energy in a separate line, after the data for all configurations contributing to the level are reported. |
||||
14101 |
Directory Listing |
Modified
2 years, 7 months ago Wed Jun 24 16:08:34 2020 UTC |
marios | |
Log: adm/util/nist/fmt.py - Modified parse_nrg_comment() to process components in the comment string irrespective of the order they are written in. adm/test/nist/test_fmt.py - Minor updates: - Now sing fmt.py parameter for note string in comments, instead of bare 'note:'. - Promoted inner functions of unit_tests() to module functions. |
||||
14100 |
Directory Listing |
Modified
2 years, 7 months ago Wed Jun 24 06:11:43 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - In Energies.insert(): Allow for levels duplicate in terms of their configuration, term, and J, to be entered to the dataset -- but do issue a warning (as before). The change is necessary for ADAS levels with missing ancestry terms to be processed. |
||||
14099 |
Directory Listing |
Modified
2 years, 7 months ago Wed Jun 24 06:04:36 2020 UTC |
marios | |
Log: adm/adm-ingest-data.py - Minor formatting changes in partition_overpopulated_multiplets(). - When processing terms with multiple orderings of J's in the dataset, orderings are reported sorted, and for each of them, the reported groups of levels are sorted by level index. - When asking for the correct order of J's, allow for the order to be given by copying and pasting one of the orders listed on output. - bugfix in process_wrong_orderings(): Apply the changes, only if changes have been made. Previously, there was no check against the data structure (dict) being empty. Fixed. |
||||
14098 |
Directory Listing |
Modified
2 years, 7 months ago Wed Jun 24 05:53:39 2020 UTC |
marios | |
Log: adm/util/nist/extract.py - Removes superfluous keyword argument 'overwrite' from calls to save_json() of the IPs and References classes -- they both invoke util.io.json.save() with this argument set to True. |
||||
14097 |
Directory Listing |
Modified
2 years, 7 months ago Wed Jun 24 03:47:14 2020 UTC |
marios | |
Log: Ingest ADAS ionization potential. adm/util/adas/extract.py - Save ADAS ionization in Stout comment section. adm/util/stout/files.py - In get_IP(), extended acquisition of IP value from Stout file entries that do not quite an error value, e.g., files that come from ADAS data. |
||||
14096 |
Directory Listing |
Modified
2 years, 7 months ago Fri Jun 19 18:34:00 2020 UTC |
marios | |
Log: scripts/adm/util/adas/web.py scripts/adm/util/atoms/splevel.py scripts/adm/util/atoms/spterm.py scripts/adm/util/atoms/trans.py scripts/adm/util/cloudy/cloudy.py scripts/adm/util/cloudy/lines.py scripts/adm/util/cloudy/stout_refs.py scripts/adm/util/idata/nrg.py scripts/adm/util/idata/unified.py scripts/adm/util/io/fs.py scripts/adm/util/io/json.py scripts/adm/util/io/nicks.py scripts/adm/util/nist/extract.py scripts/adm/util/ptable/element_data.py scripts/adm/util/ptable/ions.py scripts/adm/util/ptable/spectra.py scripts/adm/util/register/convert.py scripts/adm/util/register/levels.py scripts/adm/util/register/nocfg.py scripts/adm/util/register/report.py scripts/adm/util/register/shifts.py scripts/adm/util/register/terms.py scripts/adm/util/register/viz.py scripts/adm/util/stout/check.py scripts/adm/util/stout/dirtree.py scripts/adm/util/stout/files.py scripts/adm/util/types/base.py scripts/adm/util/ui/cli.py scripts/adm/util/ui/dirs.py scripts/adm/util/ui/pfile.py - Use relative imports throughout the util package. These modules were using absolute imports. scripts/adm/util/adas/web.py - Removed executable property. |
||||
14095 |
Directory Listing |
Modified
2 years, 7 months ago Wed Jun 17 21:42:48 2020 UTC |
marios | |
Log: Merged from mainline r13527 through r14094. |
||||
14094 |
Directory Listing |
Modified
2 years, 7 months ago Mon Jun 15 20:00:35 2020 UTC |
marios | |
Log: Deleted obsolete file: - fetch-NIST-IP.py |
||||
14093 |
Directory Listing |
Modified
2 years, 7 months ago Mon Jun 15 19:58:53 2020 UTC |
marios | |
Log: Removed commented out code in: - adm/util/idata/nrg.py - adm/util/idata/tp.py - adm/util/register/levels.py - adm/util/register/shifts.py - adm/util/register/terms.py |
||||
14092 |
Directory Listing |
Modified
2 years, 7 months ago Mon Jun 15 19:48:29 2020 UTC |
marios | |
Log: Updated manual: - adm/docs/manual/adm-macros.tex - adm/docs/manual/algorithm.tex - adm/docs/manual/appendix-ML.tex - adm/docs/manual/commands.tex - adm/docs/manual/examples.tex Figures added: - adm/docs/manual/images/final-TP-updates-adas-error.pdf - adm/docs/manual/images/final-TP-updates-adas.pdf - adm/docs/manual/images/final-WL-updates-arbitrary_shift-respowr.pdf - adm/docs/manual/images/final-WL-updates-arbitrary_shift-scatter.pdf - adm/docs/manual/images/final-WL-updates-matched_levels-respowr.pdf - adm/docs/manual/images/final-WL-updates-matched_levels-scatter.pdf - adm/docs/manual/images/final-WL-updates-matched_term-respowr.pdf - adm/docs/manual/images/final-WL-updates-matched_term-scatter.pdf - adm/docs/manual/images/final-WL-updates-respowr.pdf - adm/docs/manual/images/final-WL-updates-scatter.pdf - adm/docs/manual/images/final-terms-p1of4.pdf - adm/docs/manual/images/final-terms-p2of4.pdf - adm/docs/manual/images/final-terms-p3of4.pdf - adm/docs/manual/images/final-terms-p4of4.pdf |
||||
14091 |
Directory Listing |
Modified
2 years, 7 months ago Mon Jun 15 18:12:35 2020 UTC |
marios | |
Log: adm/adm-export-json.py - Improved clarity on log output: Changed the order of writing lean energies file, and putting together the list of excluded level indices -- operations were correct, but the output log gave the impression that the file was created before the indices were excluded. |
||||
14090 |
Directory Listing |
Modified
2 years, 7 months ago Mon Jun 15 18:04:57 2020 UTC |
marios | |
Log: adm/adm-export-json.py adm/adm-export-stout.py - Added option to exclude unconnected levels from output datasets. These are defined as levels that partake in no radiative or collisional transitions. adm/util/ui/cli.py - Defined function for command-line option to exclude unconnected levels. adm/util/idata/nrg.py - Added option to LeanEnergies.copy() to exlude unconnected levels. |
||||
14089 |
Directory Listing |
Modified
2 years, 7 months ago Mon Jun 15 16:18:21 2020 UTC |
marios | |
Log: adm/adm-export-json.py adm/adm-export-stout.py - Now updating the dataset indices before producing an output dataset. This necessary procedure was removed from adm-finalize.py in r14075. adm/util/idata/coll.py - Defined JoinedEnergies.update_indices() to update the index in an Energy() entry to the index used for that entry in the dataset. adm/util/idata/nrg.py - Defined JoinedTransitions.update_indices() to update the indices in a Transitions() entry to the indices used for that entry in the dataset. adm/util/idata/tp.py - Defined Collisions.update_indices() to update the indices in a Collisions() entry to the indices used for that entry in the dataset. |
||||
14088 |
Directory Listing |
Modified
2 years, 7 months ago Mon Jun 15 15:09:20 2020 UTC |
marios | |
Log: adm/util/nist/refs.py - In References.prt_to_file(), use util.stout.fmt.compose_comment_line() to write the line to the file -- it automatically prepends the line with a comment character, if appropriate. adm/util/stout/fmt.py - As above, for write_comments_header(). |
||||
14087 |
Directory Listing |
Modified
2 years, 7 months ago Fri Jun 12 22:39:09 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - In JoinedEnergies.populate_cterms(), now processing levels sorted by index. - In ConfTerm(), renamed __get_term_index_by_term_indices() to __get_term_index_by_level_indices(). |
||||
14086 |
Directory Listing |
Modified
2 years, 7 months ago Fri Jun 12 17:56:45 2020 UTC |
marios | |
Log: adm/adm-visualize.py - Added option to produce registration plots of terms relative to each other. - Undid (unintentional) commenting-out of scatter plots. adm/util/idata/nrg.py - Absorbed data field for energy, and method energy() into ConfTermBasic() from ConfTermSort(). - bugfix in ConfTerms.cterm_by_indices(): Comparison of list of indices fails if they are out of order. Now sorting indices before comparison. Fixed. adm/util/register/convert.py - Added function to identify the hybrid term that matches the given theory one. Identification is done by virtue of the registered indices (see also changes in cterm_by_indices() above). adm/util/register/viz.py - Added plots for the registration of terms relative to each other. - Renamed pre-existing functions treating term levels to contain '_FS_'. - Refactored code for adjusting term labels into function edit_label(). |
||||
14085 |
Directory Listing |
Modified
2 years, 7 months ago Tue Jun 9 23:50:56 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - Refactored common functionality between ConfTerm() anc ConfTermSort() in class ConfTermBasic() from which the former two both derive. - Renamed ConfTerm() data field '_levels' to '_indices'. |
||||
14084 |
Directory Listing |
Modified
2 years, 7 months ago Mon Jun 8 20:54:06 2020 UTC |
marios | |
Log: Changed order in argument lists of all plot-generating functions. - adm/adm-visualize.py - adm/util/register/viz.py adm/util/register/viz.py - Prepended detailed-transition-update file names with dataset nickname. |
||||
14083 |
Directory Listing |
Modified
2 years, 7 months ago Sun Jun 7 23:56:50 2020 UTC |
marios | |
Log: adm/util/register/viz.py - Refined Gnuplot plots. Font sizes increased. |
||||
14082 |
Directory Listing |
Modified
2 years, 7 months ago Sun Jun 7 21:22:04 2020 UTC |
marios | |
Log: adm/adm-visualize.py - Use the nickname of the dataset selected as the final dataset (stored in the JSON file, r14081) to read the correct theoretical energies dataset. adm/util/register/viz.py - Added scatter plots for the individual transition subsets (according to whether both levels were (J,p)-matched, term-matched, or shifted by some amount -- introduced in r14077), and a resolving-power plot for the entire dataset. Now both scatter and resolving-power plots are generated for the dataset subsets, as well as for the whole. |
||||
14081 |
Directory Listing |
Modified
2 years, 7 months ago Sun Jun 7 04:55:54 2020 UTC |
marios | |
Log: adm/adm-finalize.py - Save a JSON file in each of the species directories, holding the given nickname for the final dataset. adm/util/io/nicks.py - Defined class FinalDataset() to handle storing the nickname for the final dataset, as well as writing and reading JSON files. adm/test/io/test_nicks.py - Added unit tests for new class, FinalDataset(). |
||||
14080 |
Directory Listing |
Modified
2 years, 7 months ago Sat Jun 6 23:43:27 2020 UTC |
marios | |
Log: adm/adm-visualize.py - Changed the order scatter plots are generated: Now WL plots are done after TP plots. adm/util/register/viz.py - Now printing the output of gnuplot runs to the log file. - To do so, now using prun.run_command() to run gnuplot in the background, instead of prun.run_command_interactive(). adm/util/misc/prun.py - Guarantee that the command output is printed to file. - To do so, run_command() now uses subprocess.getoutput() instead of subprocess.check_output(). - Both run_command() and run_command_interactive() flush the log before executing a subprocess. adm/util/io/log.py - When a subprocess is executed, end_of_run() now prints only the command name. It used to be that if the entire command was given as one str, the entired command would be reported. - To do so, updated argument processing function (__proc_cline_args()) to split single-line commands into a list of arguments. |
||||
14079 |
Directory Listing |
Modified
2 years, 7 months ago Sat Jun 6 22:10:11 2020 UTC |
marios | |
Log: adm/docs/manual/NIST-notes.txt - Added file. |
||||
14078 |
Directory Listing |
Modified
2 years, 7 months ago Sat Jun 6 22:06:34 2020 UTC |
marios | |
Log: adm/docs/manual/images/adm-flowchart-export-stout-json.pdf - Updated Figure. |
||||
14077 |
Directory Listing |
Modified
2 years, 8 months ago Thu Jun 4 22:57:55 2020 UTC |
marios | |
Log: adm/adm-visualize.py - Added menu for updates on transition wavelengths. adm/util/register/viz.py - Added functionality to produce plots on wavelength updates, both a scatter plot (cross-correlation) of theory vs hybrid values, as well as a plots of theory wavelengths vs the inverse relative change, i.e., in terms of the resolving power a spectrograph must have to detect the wavelength change. |
||||
14076 |
Directory Listing |
Modified
2 years, 8 months ago Thu Jun 4 22:49:42 2020 UTC |
marios | |
Log: adm/util/register/viz.py - bugfix in energy update plots: Energy was scaled by a power of 10 more than intended. Fixed. adm/docs/manual/images/energy-updates.pdf - Deleted incorrect plot. adm/docs/manual/images/sorted-energy-updates.pdf - Added new plot. adm/docs/manual/examples.tex - Updated text to use correct plot of energy updates. |
||||
14075 |
Directory Listing |
Modified
2 years, 8 months ago Thu Jun 4 21:20:15 2020 UTC |
marios | |
Log: adm/adm-finalize.py - Index updates are no longer done for the 'final' dataset, so that it may be used with other tools, notably adm-visualize.py. |
||||
14074 |
Directory Listing |
Modified
2 years, 8 months ago Thu Jun 4 19:09:23 2020 UTC |
marios | |
Log: adm/adm-export-stout.py - Refactored code that computes precision to use with printed energy, TP, and collision strength values as methods of the relevant classes. adm/util/idata/nrg.py - In Energies(), defined set_nrg_prec() and nrg_prec(). adm/util/idata/tp.py - In Transitions(), defined set_exp_prec() and exp_prec(). adm/util/idata/coll.py - In Collisions(), defined set_exp_prec() and exp_prec(). adm/util/types/base.py - In Base.__eq__(), fields with empty values (empty str or None) no longer trigger a False result if the field is missing in only one of the datasets. adm/test/idata/test_coll.py adm/test/idata/test_nrg.py adm/test/idata/test_tp.py - Added unit tests to exercise new methods. |
||||
14073 |
Directory Listing |
Modified
2 years, 8 months ago Thu Jun 4 18:49:13 2020 UTC |
marios | |
Log: adm/test/idata/test_tp.py - Updated to r14069. |
||||
14072 |
Directory Listing |
Modified
2 years, 8 months ago Thu Jun 4 18:45:24 2020 UTC |
marios | |
Log: adm/test/idata/test_coll.py - Updated to r14065. |
||||
14071 |
Directory Listing |
Modified
2 years, 8 months ago Fri May 29 05:00:47 2020 UTC |
marios | |
Log: adm/util/idata/tp.py adm/util/idata/coll.py - Changed the upper level index short keyword from 'h' to 'u' in: - LeanTransition() - LeanCollision() |
||||
14070 |
Directory Listing |
Modified
2 years, 8 months ago Fri May 29 02:05:05 2020 UTC |
marios | |
Log: adm/util/nist/ip.py - Removed call to dict_remove_empty() from IonPot.export_dict(). adm/util/types/base.py - Removed definition of dict_remove_empty(). No longer needed. |
||||
14069 |
Directory Listing |
Modified
2 years, 8 months ago Fri May 29 02:01:37 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - In LeanEnergyMeta(): - Defined keyword renaming map, to use on output JSON files. - Implemented export_dict(), instead of simply calling its super() method. - In LeanEnergy(): - Changed keyword for metadata to 'm', used on output. adm/util/idata/tp.py - In LeanTranMeta(): - Replaced storing the comment with storing both the reference code, and the TP accuracy. - Defined keyword renaming map, to use on output JSON files. - Removed unused method init(). - Implemented export_dict(), instead of simply calling its super() method. - In LeanTransition(): - Changed keyword for metadata to 'm', used on output. adm/util/idata/coll.py - In LeanCollMeta(): - Defined keyword renaming map, to use on output JSON files. - Implemented export_dict(), instead of simply calling its super() method. - In LeanCollision(): - Changed keyword for metadata to 'm', used on output. adm/adm-export-json.py - Trivial change: order of CLI arguments on help message. |
||||
14068 |
Directory Listing |
Modified
2 years, 8 months ago Thu May 28 20:24:29 2020 UTC |
marios | |
Log: adm/adm-view-json - bugfix: After turning into executable, script runs in a separate shell, and so is unaware of the ADM installation. Modified to specify the ADM directory, where it can find the required util.io.json module. Fixed. |
||||
14067 |
Directory Listing |
Modified
2 years, 8 months ago Thu May 28 20:08:14 2020 UTC |
marios | |
Log: Further reduced storage footprint of output JSON files. adm/util/idata/nrg.py - Defined LeanEnergies.export_dict() to modify section titles in output JSON. adm/util/idata/tp.py - In LeanTransition(): - Changed the TP key in the output JSON to 'P'. - In export_dict(), commented out code to print the TPs as strings in exponential notation, as it makes files bigger. - Defined LeanTransitions.export_dict() to export the data as a list of LeanTransition() data, instead of a dict of dicts. Reduces JSON storage footprint. adm/util/idata/coll.py - Defined LeanCollisionBlock.export_dict() to export the data as a list of LeanCollision() data, instead of a dict of dicts of dicts. Reduces JSON storage footprint. - Defined LeanCollisions.export_dict() to modify section titles in output JSON. adm/adm-view-json - Turned into an executable. |
||||
14066 |
Directory Listing |
Modified
2 years, 8 months ago Thu May 28 05:31:30 2020 UTC |
marios | |
Log: adm/adm-view-json - Added (bash) script to view the contents of compact JSON files. adm/util/io/json.py - Added function to load a JSON, and then pretty-print it. |
||||
14065 |
Directory Listing |
Modified
2 years, 8 months ago Thu May 28 05:27:39 2020 UTC |
marios | |
Log: adm/adm-export-json.py - Added command-line option '-c' to generate compact JSON files of minimal size. adm/util/types/base.py - In Base(): - In export_dict(), added ability to swap the stored keyword names with given alternatives. - No longer storing empty strings. - In import_dict(), implemented the reverse operation: Loading data stored under different keywords. adm/util/idata/nrg.py - Modified LeanEnergy() to use abbreviated keywords with export_dict(). - Enabled LeanEnergies.save_json() to save compact dataset. adm/util/idata/tp.py - Modified LeanTransition() to use abbreviated keywords with export_dict(). - Storing TP as a str in exponential notation, for extra savings in space. - Enabled LeanTransitions.save_json() to save compact dataset. adm/util/idata/coll.py - Modified LeanCollision() to use abbreviated keywords with export_dict(). - Modified LeanCollisionBlock() to store the list of temperatures, not the temperature data line. - Enabled LeanCollisions.save_json() to save compact dataset. adm/util/io/json.py - Added option to save() to create a compact file, of minimal size. |
||||
14064 |
Directory Listing |
Modified
2 years, 8 months ago Wed May 27 16:52:52 2020 UTC |
marios | |
Log: adm/adm-export-json.py - It is now possible to exclude auto-ionization levels, and any transitions they are involved in, from the output datasets with the '--noai' CL option. adm/util/idata/nrg.py - In LeanEnergies.copy(), enabled exclusion of auto-ionization levels. adm/util/idata/tp.py - In LeanTransitions.copy(), enabled exclusion of transitions that involve excluded levels. adm/util/idata/coll.py - In LeanCollisionBlock.copy(), and LeanCollisions.copy(), enabled exclusion of transitions that involve excluded levels. adm/test/idata/test_nrg.py adm/test/idata/test_tp.py adm/test/idata/test_coll.py - Exercised exclusion capabilities in unit tests. adm/adm-export-stout.py - Minor docstring updates. |
||||
14063 |
Directory Listing |
Modified
2 years, 8 months ago Wed May 27 05:28:49 2020 UTC |
marios | |
Log: adm/adm-export-stout.py - Refactored statistical calculations on the registration as a separate script (not yet added). |
||||
14062 |
Directory Listing |
Modified
2 years, 8 months ago Tue May 26 02:30:13 2020 UTC |
marios | |
Log: adm/adm-export-stout.py - Added command-line option '--noai'. It prints auto-ionization levels, and any transitions involving them, after the end-of-data line in the respective files. - Now loading the experimental IP file before preparing the energy data lines, instead of while preparing the energy comments. - Modified .tp output to print TP values in exp notation, with an adaptive precision. - bugfix in add_tp_accuracy(): Attempt was made to append non-existent variable to list of accuracies. Now using the correct local variable. Fixed. - Defined prep_coll_datalines() to prepare the datalines to print, and the ones to print as excluded, in the output .coll file. - Slightly modified the format of the command output. adm/util/ui/cli.py - Added parse_add_noai() to enter option '--noai' to the CLI. adm/util/idata/tp.py - bugfix in JoinedTransitions.new_dataline(): stout.tp.compose_line() was invoked with the TP value cast as a str(). This caused the printed string to appear as a plain float, not in exponential notation. Now using the float TP value directly, which produces output in exponential notation. Fixed. adm/util/idata/coll.py - Defined BasicCollision.new_dataline(), with variable precision, to produce a dataline. - Defined CollisionBlock.sorted_order() to access the output of the sort() method. adm/util/stout/tp.py - Modified compose_line(): - To allow None values be given for the precision. - To work with both str and float TP values. adm/util/stout/coll.py - Modified compose_dataline() to permit control over the precision of the collision parameter values. adm/util/stout/files.py - In FileSections(): - Defined add_excluded_dataline() to add an 'excluded' line of data. - Defined excluded_datalines() to access these lines. - Modified prepare_file_lines() to print these lines after an end-of-data line. adm/util/stout/__init__.py - Added missing module check.py. adm/util/stout/info.py - Updated module docstring. adm/test/stout/test_files.py - Added unit tests for new FileSections() methods. |
||||
14061 |
Directory Listing |
Modified
2 years, 8 months ago Tue May 26 01:37:49 2020 UTC |
marios | |
Log: adm/util/adas/extract.py adm/util/nist/extract.py - Updated stout subpackage calls from r14060: - nrg.get_energy_fmt_precision() -> fmt.get_fmt_precision_floats() - tp.get_tp_fmt_precision() -> fmt.get_fmt_precision_exps() |
||||
14060 |
Directory Listing |
Modified
2 years, 8 months ago Tue May 26 01:32:09 2020 UTC |
marios | |
Log: adm/util/stout/nrg.py adm/util/stout/fmt.py - Moved get_energy_fmt_precision() to fmt.py as get_fmt_precision_floats(). adm/util/stout/tp.py adm/util/stout/fmt.py - Moved get_tp_fmt_precision() to fmt.py as get_fmt_precision_exps(). - Adapted to process lists of floats, as well. - Introduced get_fmt_precision_exp() to handle the processing of a single float value. adm/test/stout/test_nrg.py adm/test/stout/test_fmt.py - Moved tests for get_energy_fmt_precision() to test_fmt.py, using the new function name. adm/test/stout/test_tp.py adm/test/stout/test_fmt.py - Moved tests for get_tp_fmt_precision() to test_fmt.py, using the new function name. - Added unit tests for get_fmt_precision_exp(). |
||||
14058 |
Directory Listing |
Modified
2 years, 8 months ago Mon May 25 15:24:18 2020 UTC |
marios | |
Log: Moved: adm/util/idata/meta.py from: adm/util/stout/meta.py Moved: adm/test/idata/test_meta.py from: adm/test/stout/test_meta.py adm/util/idata/__init__.py adm/util/stout/__init__.py adm/test/stout/__init__.py - Updated lists of modules loaded with 'import *'. |
||||
14057 |
Directory Listing |
Modified
2 years, 8 months ago Sun May 24 16:45:28 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - Fixed typos in branching ratios sub-menu. |
||||
14055 |
Directory Listing |
Modified
2 years, 8 months ago Sun May 24 06:00:21 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - Updated command-line interface to require a nickname for a complete dataset, as opposed to nicknames for energies and transitions, separately. - bugfix in show_level_details(): Text input that is not a level name caused abort. Added check before resolving name into configuration and level. Fixed. |
||||
14054 |
Directory Listing |
Modified
2 years, 8 months ago Sat May 23 21:48:31 2020 UTC |
marios | |
Log: adm/adm-visualize.py - Added CLI option (--nick) for the nickname of a complete dataset. If a numerical label is present in the nickname, it is also applied in the selection of a (merged) theoretical dataset. adm/util/register/viz.py - Output file names are now prepended by a string. adm/adm-visualize.py adm/adm-merge-tp.py - bugfix: Missing import of util.types. Fixed. |
||||
14053 |
Directory Listing |
Modified
2 years, 8 months ago Sat May 23 21:02:48 2020 UTC |
marios | |
Log: adm/adm-ingest-data.py adm/util/nist/extract.py - Make sure that when original and initial JSON datasets are created: they overwrite any pre-existing files. adm/util/nist/extract.py - Extended this policy to IP and reference JSON files: existing files are overwritten. |
||||
14052 |
Directory Listing |
Modified
2 years, 8 months ago Sat May 23 15:48:43 2020 UTC |
marios | |
Log: Same nickname for merged JSON energy datasets in input and output directories. adm/util/io/nicks.py - Removed nickname 'matched'. adm/adm-merge-nrg.py adm/adm-merge-tp.py adm/adm-visualize.py adm/adm-fine-tune.py - Now using nickname 'merged' instead of 'matched'. |
||||
14051 |
Directory Listing |
Modified
2 years, 8 months ago Sat May 23 15:29:04 2020 UTC |
marios | |
Log: adm/util/register/shifts.py - Provide option to use energy shift preserving the relative gaps to both bracketting terms, in addition to preserving the energy gap to the nearest term. Also, let arbitrary energy shifts be used. adm/util/register/levels.py - Clarify pre-matching HINT message. |
||||
14050 |
Directory Listing |
Modified
2 years, 8 months ago Sat May 23 00:38:45 2020 UTC |
marios | |
Log: adm/adm-ingest-data.py - bugfix: Old Energy() method name copy_level() used instead of new name copy(). Fixed. - Added space on log output after creation of energies_original.json. adm/adas-fix-fnames.py - Modified to operate with a path, instead of with an ADM parameter file. adm/adm-setup.py adm/adm-fetch-nist.py - Reordered CLI options. adm/adm-adas-to-stout.py - Added clarification in help message. adm/util/nist/extract.py - Guard against creating a JSON file, when only the IP uncertainty is available. - In write_nrg() and write_nrg_json(), guard against not extracting ionization potential values. adm/util/nist/files.py - Use fs.write_file() in save_original_data(), instead of custom code. |
||||
14049 |
Directory Listing |
Modified
2 years, 8 months ago Fri May 22 19:58:36 2020 UTC |
marios | |
Log: adm/util/nist/refs.py - Bugfix in prep_URL_data(): Check for commented refcode was done after the check for Lines and Transitions, and as a result never accessed. Now done before any other check. Fixed. - Print to log with Reference.show() and References.show(). - Parameterized the heading "Bibliography" as a References() class-wide parameter. |
||||
14048 |
Directory Listing |
Modified
2 years, 8 months ago Thu May 21 01:50:48 2020 UTC |
marios | |
Log: adm/docs/manual/algorithm.tex - Updated to current flow of operations. adm/docs/manual/adm-macros.tex - Added definitions for missing scripts. Updated flowcharts (removed "Fix filenames" box, and adjusted size): - adm/docs/manual/images/adm-flowchart-adas-acquisition.pdf - adm/docs/manual/images/adm-flowchart-nist-acquisition.pdf Added new flowcharts: - adm/docs/manual/images/adm-flowchart-export-stout-json.pdf - adm/docs/manual/images/adm-flowchart-vertical-sections-setup-collision-json.pdf |
||||
14047 |
Directory Listing |
Modified
2 years, 8 months ago Wed May 20 17:44:53 2020 UTC |
marios | |
Log: adm/docs/manual/intro.tex - Updated Chapter 1, Introduction. - Now showing current format of Stout file contents (minor changes). - Colored in red the discussion about preserving data from current Stout files -- not sure this will ever be done. - Added discussion on JSON-format output files, instead of Stout. |
||||
14046 |
Directory Listing |
Modified
2 years, 8 months ago Wed May 20 16:45:38 2020 UTC |
marios | |
Log: adm/nist-extract-species.py - Import missing modules, not ported with the move from nist.extract.py. |
||||
14045 |
Directory Listing |
Modified
2 years, 8 months ago Wed May 20 02:51:22 2020 UTC |
marios | |
Log: adm/adm-ingest-data.py - Modified the code to look for an 'original' energies dataset before ingesting a Stout file. This enables reading datasets with energy uncertainties (produced with adm-fetch-nist.py). adm/util/stout/files.py - Updated get_IP(): - To skip the title line of the IP comment section. - To parse the IP value correctly, now that its error may also appear on that line. |
||||
14044 |
Directory Listing |
Modified
2 years, 8 months ago Wed May 20 02:28:58 2020 UTC |
marios | |
Log: adm/util/nist/extract.py - Enabled extraction of level energy uncertainties. - Storage of 'original' energy dataset as a JSON file now depends on requests for uncertainty values, and for creating a JSON file. If the uncertainty column is not present in the HTML table output, no JSON file is produced. - Now sanitizing reported paths to newly created files. - Modified drive() to accept the directory for data storage, instead of evaluating it based on the given species. adm/adm-fetch-nist.py - Added CLI option to fetch the level energy uncertainties, if available. - Now using the relative basepath including the top directory (e.g., 'nist/li/li_1/li_1') when calling the driver function to extract data from NIST. No need to move into the top experimental directory anymore (that was a residual of running NistExtractor.py as a subprocess). - Also, now requesting to save 'original' JSON datasets, if fetching the uncertainties has also been requested, and the uncertainty column is there. adm/util/nist/extract.py adm/nist-extract-species.py - Moved path preparation function from util.stout.nist.extract. - Moved statements processing the output of prepare_path() from extract.drive() to the main program. adm/util/idata/nrg.py - In BasicEnergy(): - Added optional data field for energy uncertainty. - Updated init() to process the energy uncertainty and store it as float. - Defined method energy_unc() to access stored value. adm/util/nist/nrg.py - In EnergyLevel(), added data field for energy uncertainty. adm/util/nist/files.py - Now sanitizing reported paths to newly created files. adm/test/nist/test_nrg.py adm/test/idata/test_nrg.py - Updated unit tests to exercise energy uncertainty data fields. |
||||
14043 |
Directory Listing |
Modified
2 years, 8 months ago Wed May 20 00:25:21 2020 UTC |
marios | |
Log: adm/util/nist/extract.py - Refactored all functions to accept all options to data table acquisition as keyword arguments. - Modified process_nrg_table() to accept a variable for the IP as an argument, instead of accepting a flag for fetching the IP and returning its data. adm/util/nist/extract.py adm/nist-extract-species.py adm/adm-fetch-nist.py - Renamed extract_IP to fetch_IP. - Updated script docstring. |
||||
14042 |
Directory Listing |
Modified
2 years, 8 months ago Tue May 19 23:23:55 2020 UTC |
marios | |
Log: adm/util/nist/extract.py - Converted all positional arguments, except the one for the species, to keyword arguments. adm/adm-fetch-nist.py - Prepended all variables that store relevant command-line options with 'fetch_'. - Eliminated function run(). Its contents (two statements) are now part of main(). - Updated script docstring. adm/adm-fetch-nist.py adm/nist-extract-species.py - Updated call to nist.extract_drive(). |
||||
14041 |
Directory Listing |
Modified
2 years, 8 months ago Tue May 19 22:12:01 2020 UTC |
marios | |
Log: adm/run-unittests.sh - Include all modules in unit-test suite runs. adm/test/idata/test_tp.py - Update to stout.tp.compose_line() expecting a string for TP. |
||||
14040 |
Directory Listing |
Modified
2 years, 8 months ago Tue May 19 21:57:04 2020 UTC |
marios | |
Log: adm/util/nist/extract.py - Defined write_nrg_json() to produce an 'original' energies JSON dataset. The dataset is converted into an internal Energies() dataset from the existing list of EnergyLevel()'s. adm/util/idata/nrg.py - In BasicEnergyMeta(): - Turned dataline into an optional data field. It may now be undefined on calls to init(). - Defined Energy.set() to synthesize an Energy() object from BasicEnergy() and BasicEnergyMeta() objects. adm/util/types/base.py - In Base.export_dict(), do not write out keys with None values. |
||||
14039 |
Directory Listing |
Modified
2 years, 8 months ago Tue May 19 21:47:29 2020 UTC |
marios | |
Log: adm/util/ptable/ions.py - Defined function ion_nelectrons() to compute the number of electrons in an ion. - Refactored species_nelectrons() to use new function. adm/test/ptable/test_ions.py - Added unit tests to exercise new function. - Updated tests of get_isoseq_ions() to accommodate extending the list of natural elements to Plutonium. |
||||
14038 |
Directory Listing |
Modified
2 years, 8 months ago Tue May 19 21:43:37 2020 UTC |
marios | |
Log: adm/util/nist/nrg.py - In EnergyLevel.init(): Changed attribute from note to notes, which is actually used in set(). adm/util/nist/extract.py - bugfix in write_nrg(): Use of unset EnergyLevel.note instead of .notes. Fixed. - List of notes now accumulated during the preparation of datalines, because a comprehension does not accommodate the list of strings stored in notes. adm/test/nist/test_nrg.py - Updated unit tests to use EnergyLevel.notes instead of .note. - Added unit test to exercise list of two notes. |
||||
14037 |
Directory Listing |
Modified
2 years, 8 months ago Tue May 19 21:09:45 2020 UTC |
marios | |
Log: adm/util/nist/fmt.py - form_nrg_comment() now accepts a list of str for notes, and formats them into a string using notes.fmt_note(). adm/util/nist/fmt.py adm/util/nist/extract.py - Updated to use a nickname for the notes module, to avoid conflicts with local variables. adm/test/nist/test_fmt.py - Updated unit tests for form_nrg_comment() to use list of str for comments. Added test using a list of two elements for notes. adm/util/idata/nrg.py - Updated to new interface for nist.fmt.form_nrg_comment(). |
||||
14036 |
Directory Listing |
Modified
2 years, 8 months ago Tue May 19 20:49:49 2020 UTC |
marios | |
Log: adm/adm-ingest-data.py adm/util/stout/files.py - Removal of degenerate terms from the (J,p) groups is no longer done as part of reading a Stout file. It is now done by the data-ingestion script, after the original energies have been written to a JSON file. |
||||
14035 |
Directory Listing |
Modified
2 years, 8 months ago Tue May 19 00:35:44 2020 UTC |
marios | |
Log: Created subpackage adm/util/misc containing: - adm/util/misc/util_misc.py (moved from adm/util/util_misc.py) - adm/util/misc/util_prun.py (moved from adm/util/util_prun.py) Created testing subpackage adm/test/misc containing: - adm/test/misc/test_misc.py (moved from adm/test/test_misc.py) - adm/test/misc/test_prun.py (moved from adm/test/test_prun.py) Updated function calls. |
||||
14034 |
Directory Listing |
Modified
2 years, 8 months ago Tue May 19 00:18:46 2020 UTC |
marios | |
Log: Created subpackage adm/util/chianti containing only: - adm/util/chianti/chianti.py (moved from adm/util/chianti.py) Created testing subpackage adm/test/chianti containing only: - adm/test/chianti/test_chianti.py (moved from adm/test/test_chianti..py) |
||||
14033 |
Directory Listing |
Modified
2 years, 8 months ago Tue May 19 00:05:23 2020 UTC |
marios | |
Log: adm/util/register/levels.py - Now using io.json functions with LevelIndexMap(), instead of calling Python's json module directly. adm/util/stout/info.py - Removed unused method StoutInfo.emit_json(). |
||||
14032 |
Directory Listing |
Modified
2 years, 8 months ago Mon May 18 23:35:19 2020 UTC |
marios | |
Log: Created subpackage adm/test/io containing: - adm/util/io/fs.py (moved from adm/util/fs.py) - adm/util/io/json.py (moved from adm/util/json.py) - adm/util/io/log.py (moved from adm/util/ui/log.py) - adm/util/io/nicks.py (moved from adm/util/ui/nicks.py) - adm/util/io/__init__.py (for 'import *') Created testing subpackage adm/test/io containing: - adm/test/io/test_fs.py (moved from adm/test/test_fs.py) - adm/test/io/test_json.py (moved from adm/test/test_json.py) - adm/test/io/test_log.py (moved from adm/test/ui/test_log.py) - adm/test/io/test_nicks.py (moved from adm/test/ui/test_nicks.py) Updated function calls. |
||||
14031 |
Directory Listing |
Modified
2 years, 8 months ago Mon May 18 22:20:47 2020 UTC |
marios | |
Log: Renamed: - adm/util/io -> adm/util/ui - adm/test/io -> adm/test/ui Updated calls to functions. |
||||
14030 |
Directory Listing |
Modified
2 years, 8 months ago Mon May 18 22:12:58 2020 UTC |
marios | |
Log: Broke apart adm/util/io/ui.py into: - adm/util/io/cli.py (command-line interface) - adm/util/io/upr.py (user prompt) Renamed: - adm/test/io/test_ui.py -> adm/test/io/test_upr.py - adm/test/io/test_ui.py -> adm/test/io/test_upr.py adm/adas-extract-species.py adm/adas-fix-fnames.py adm/adm-adas-to-stout.py adm/adm-export-json.py adm/adm-export-stout.py adm/adm-fetch-nist.py adm/adm-finalize.py adm/adm-fine-tune.py adm/adm-ingest-data.py adm/adm-merge-coll.py adm/adm-merge-nrg.py adm/adm-merge-tp.py adm/adm-query-adas.py adm/adm-register-levels.py adm/adm-register-nocfg.py adm/adm-register-terms.py adm/adm-registration-summary.py adm/adm-setup.py adm/adm-shift-unreg-terms.py adm/adm-sort-nrg.py adm/adm-visualize.py adm/stout-data-summary.py adm/util/adas/extract.py adm/util/cloudy/lines.py adm/util/cloudy/stout_refs.py adm/util/io/__init__.py adm/util/nist/tp.py adm/util/register/levels.py adm/util/register/shifts.py adm/util/register/terms.py fetch-NIST-IP.py - Updated calls to functions. |
||||
14029 |
Directory Listing |
Modified
2 years, 8 months ago Mon May 18 22:07:54 2020 UTC |
marios | |
Log: adm/adm-export-stout.py - Writing of output files now uses the stout.files.FileSections() infrastructure. Calls to stout.fmt.compose_comment_line() have been dropped. - Preparation of energy and TP datalines has been refactored into functions, which also use stout package functions to get the optimal precision for output: stout.nrg.get_energy_fmt_precision() for energy and stout.tp.get_tp_fmt_precision() for TP values. - Now confirming the user name before putting together the ADM comments. The comments are now formed before producing any output files, and passed to the relevant functions. - Updated to new util package interface. adm/util/idata/nrg.py - Updated Energy.new_dataline() to the new interface of stout.nrg.compose_line(). Added keyword arguments to specify the accuracy of the output energy strings. - Updated to new util package interface. adm/util/idata/tp.py - Updated Transition.new_dataline() to the new interface of stout.tp.compose_line(). Added keyword argument to specify the accuracy of the output TP strings. - Updated to new util package interface. |
||||
14028 |
Directory Listing |
Modified
2 years, 8 months ago Mon May 18 21:15:44 2020 UTC |
marios | |
Log: adm/util/fs.py adm/util/misc.py adm/util/json.py - Moved the JSON() class from util.fs into new module util.json as module functions. Also moved JSON encoder class myEncoder() from util.misc. adm/util/__init__.py - Added util.json to list modules loaded with 'import *'. adm/test/test_fs.py adm/test/test_json.py - Extracted unit tests into new module test.test_json. adm/open-adas-download.py adm/util/cloudy/stout_refs.py adm/util/idata/coll.py adm/util/nist/ip.py adm/util/nist/refs.py adm/util/stout/meta.py - Updated calls to json functions. |
||||
14027 |
Directory Listing |
Modified
2 years, 8 months ago Mon May 18 20:22:43 2020 UTC |
marios | |
Log: adm/util/types/__init__.py - Added for loading modules with 'import *'. |
||||
14026 |
Directory Listing |
Modified
2 years, 8 months ago Mon May 18 19:12:44 2020 UTC |
marios | |
Log: Removed missing files: - adm/test/test_chtypes.py - adm/test/test_types.py |
||||
14025 |
Directory Listing |
Modified
2 years, 8 months ago Mon May 18 19:07:56 2020 UTC |
marios | |
Log: Created subpackage util.types and moved therein the util modules: - chtypes.py as chtypes.py - types.py as istype.py - base.py Created util.types.__init__ for 'import *' calls. Created testing subpackage test.types and moved therein the modules: - test_chtypes.py as test_chtype.py - test_types.py as test_istype.py Updated all scripts and modules using these modules. |
||||
14024 |
Directory Listing |
Modified
2 years, 8 months ago Mon May 18 17:56:38 2020 UTC |
marios | |
Log: adm/util/cloudy/lines.py adm/util/idata/state.py adm/util/io/dirs.py adm/util/io/pfile.py adm/util/nist/nrg.py adm/util/nist/tp.py adm/util/register/viz.py adm/util/stout/files.py adm/util/stout/info.py adm/util/stout/meta.py adm/test/cloudy/test_lines.py - Switched deriving from chtypes.Valid() to base.Base(). adm/util/chtypes.py - Removed class Valid(). |
||||
14023 |
Directory Listing |
Modified
2 years, 8 months ago Mon May 18 17:50:15 2020 UTC |
marios | |
Log: adm/test/test_fs.py - Remove all intermediate JSON files. |
||||
14022 |
Directory Listing |
Modified
2 years, 8 months ago Mon May 18 17:37:22 2020 UTC |
marios | |
Log: adm/test/stout/test_coll.py - Updated to r14017. |
||||
14021 |
Directory Listing |
Modified
2 years, 8 months ago Mon May 18 17:25:13 2020 UTC |
marios | |
Log: adm/test/nist/test_nrg.py - Updated unit tests to r14020. Added unit tests for EnergyLevel.set_index(). |
||||
14020 |
Directory Listing |
Modified
2 years, 8 months ago Mon May 18 17:09:33 2020 UTC |
marios | |
Log: adm/util/nist/extract.py - Now assigning level indices after the levels have been sorted in energy. adm/util/nist/nrg.py - In EnergyLevel(): - Removed the level index from the interface of set(). - Defined method set_index() to set the level index. |
||||
14019 |
Directory Listing |
Modified
2 years, 8 months ago Mon May 18 16:41:38 2020 UTC |
marios | |
Log: adm/util/adas/db.py - Added module containing parameter for ADAS database name. adm/util/adas/__init__.py - Included new module to list of modules loaded with 'import *'. adm/util/adas/extract.py - Updated to use new parameter instead of bare string. - Removed obsolete module parameter 'magic_number'. |
||||
14018 |
Directory Listing |
Modified
2 years, 8 months ago Mon May 18 16:36:50 2020 UTC |
marios | |
Log: adm/util/nist/db.py - Added module containing parameter for NIST database name. adm/util/nist/__init__.py - Included new module to list of modules loaded with 'import *'. adm/util/nist/extract.py adm/util/nist/files.py adm/util/register/shifts.py adm/nist-asd-ip.py fetch-NIST-IP.py - Updated to use new parameter instead of bare string. |
||||
14017 |
Directory Listing |
Modified
2 years, 8 months ago Mon May 18 15:41:25 2020 UTC |
marios | |
Log: adm/util/adas/extract.py - Writing of output files now uses the stout.files.FileSections() infrastructure. Modified functions: - write_nrg_file() - write_tp_file() - write_coll_file() - Renamed write_end_of_file() to add_timestamp_filename(): It enters the ADF04 file name as a Stout file comment. - Level.set() now expects the energy as a str, not a float. - RCtran.set() now expects the TP and the collision strengths as str, not floats. - No longer determine the energy precision in read_ADF04_file(). This is now done on output, because the energy is stored as a str, not a float. - Output file names are now set in the relevant functions, not in drive(). adm/adm-adas-to-stout.py - Now writing directly into the theory directory, without having to move into it. adm/util/stout/check.py - Defined parameters for Einstein A data type 'A", and collision data type 'CS'. adm/util/stout/coll.py - In compose_dataline(), now accepting collision strength parameters as str, not float. |
||||
14016 |
Directory Listing |
Modified
2 years, 8 months ago Mon May 18 03:27:19 2020 UTC |
marios | |
Log: adm/util/nist/extract.py - In process_nrg_table(): - bugfix: Notes on IP value no longer embedded in the energy value. Now using parser method instead. Fixed. - Extracting the IP or level refcodes now done only if requested. - In write_nrg() and write_tp(): - Now using the refactored code in stout.nrg.get_energy_fmt_precision() and stout.tp.get_tp_fmt_precision() to get the energy/TP precision for the output file. - Now using the stout.files.FileSections() infrastructure for preparing the contents of the output file. - Now using stout.dirtree functions for the output Stout filenames, instead of the intermediate functions in nist.files. adm/util/nist/files.py - Removed wrapper functions: - get_energy_filename() - get_transition_filename() - get_collisions_filename() adm/util/nist/refs.py - Modified title of Stout file (sub)section from "References" to "Bibliography": - References.show() - References.prep_print_pub() Removed calls to stout.fmt.compose_comment_line(), as it is handled by stout.files.FileSections.prepare_file_lines(): - adm.util.nist.notes.prepare_table() - adm.util.nist.tp.prepare_acc_table() - adm.util.nist.ip.IonPot.prep_for_stout() - adm.util.nist.ip.IonPots.prep_for_stout() - adm.util.nist.refs.References.prep_print_pub() |
||||
14015 |
Directory Listing |
Modified
2 years, 8 months ago Mon May 18 02:41:48 2020 UTC |
marios | |
Log: adm/util/stout/files.py - In FileSections(): - In add_comment_line(): - Allowed for blank lines. - Comment lines now have their leading comment sentinel ('#') removed, if present. - In prepare_file_lines(): - Set the magic number to the default value, if not defined. - Set the header of the comment section, so that the user does not have to issue it explicitly. The comments passed to the method should no longer include it, or it will be duplicated. - Comment lines may have a leading comment sentinel ('#') added before being added onto the output for printing. This is controlled by fmt.use_comment_sentinel(). - bugfix in parse_file_into_sections(): A blank comment line caused the check for magic number in the input line to fail. Changed the order of checks, so that comment lines are processed before anything else. Fixed. adm/util/stout/fmt.py - Defined remove_leading_comment_sentinel() to remove the leading comment sentinel ('#'), if present. - Prepending comment lines with a leading comment sentinel ('#') is now handled by FileSections.prepare_file_lines(). Changed the following functions to no longer process it by default: - prep_comments_header() - prep_IP_line() adm/util/stout/nrg.py - Defined get_energy_fmt_precision() to determine the max number of integer and fractional digits in a list of energy strings. Refactored from module nist.extract. - Changes in compose_line(): - Modified to allow it to be called with None values for the arguments for whole and fractional digits. - Limited the number of fractional digits to the maximum number to prevent printing too high a precision for levels that have been shifted. adm/util/stout/tp.py - Defined get_tp_fmt_precision() to determine the max number of fractional digits in a list of TP strings. Refactored from module nist.extract. - Modified compose_line() to accepted the TP argument as a str (from float). adm/test/stout/test_files.py adm/test/stout/test_fmt.py adm/test/stout/test_nrg.py adm/test/stout/test_tp.py - Updated unit tests. - Added unit tests to exercise new functions. |
||||
14014 |
Directory Listing |
Modified
2 years, 8 months ago Fri May 15 23:08:59 2020 UTC |
fguzman | |
Log: fix bug in unitary test |
||||
14013 |
Directory Listing |
Modified
2 years, 8 months ago Fri May 15 06:14:15 2020 UTC |
marios | |
Log: Renamed: - adm-adas-extract.py -> adas-extract-species.py - adm-fix-fnames.py -> adas-fix-fnames.py - adm-nist-extract.py -> nist-extract-species.py - adm-nist-notes.py -> nist-fetch-notes.py open-adas-download.py - Minor formatting change. |
||||
14012 |
Directory Listing |
Modified
2 years, 8 months ago Fri May 15 03:58:24 2020 UTC |
marios | |
Log: adm/open-adas-download.py - Do not download already existing files. adm/adm-query-adas.py adm/util/adas/web.py - Refactored function fetch_file_maybe() into module. |
||||
14011 |
Directory Listing |
Modified
2 years, 8 months ago Fri May 15 00:53:56 2020 UTC |
marios | |
Log: adm/open-adas-download.py - bugfix: Guard against non-existing species. If the table is empty, return immediately to caller. Fixed. |
||||
14010 |
Directory Listing |
Modified
2 years, 8 months ago Thu May 14 23:45:34 2020 UTC |
marios | |
Log: adm/open-adas-download.py - Added script to download the entire OpenADAS database. Apart from the data, for each species save a JSON file with the retrieved HTML table. adm/util/fs.py - Modified JSON.save() to accept data in the form of a list of dicts, in addition to a dict. |
||||
14009 |
Directory Listing |
Modified
2 years, 8 months ago Thu May 14 23:38:23 2020 UTC |
marios | |
Log: adm/adm-query-adas.py adm/util/adas/web.py - Refactored web access and HTML table parsing as module util.adas.web.py. - Replaced function parse_page() with aweb.extract_table_data(). The latter only extracts a BeautifulSoup representation of the HTML table, and does not attempt to parse it, or provide a user interface for file selection. (The latter are now absorbed in the driver function.) Thus, it is more friendly for use with other scripts. adm/util/adas/__init__.py - Added web.py to the list of modules loaded with 'import *'. |
||||
14008 |
Directory Listing |
Modified
2 years, 8 months ago Thu May 14 21:23:07 2020 UTC |
marios | |
Log: adf042stout.py NistExtractor/NistExtractor.py - Restore Matt's scripts to their versions on the trunk. |
||||
14006 |
Directory Listing |
Modified
2 years, 8 months ago Thu May 14 21:16:16 2020 UTC |
marios | |
Log: adm/util/adas/extract.py - Ignore all transitions and collisions with TP <= 1e-30. Previously, only transitions with TP of 1e-30 were excluded. |
||||
14005 |
Directory Listing |
Modified
2 years, 8 months ago Thu May 14 21:01:10 2020 UTC |
marios | |
Log: adm/adm-adas-extract.py adm/util/adas/extract.py - Added Matt Lykin's adf042stout.py as an ADM script, and refactored its main functionality as a util.adas module. adm/adm-adas-to-stout.py - Updated to use the new util.adas module, instead of running adf042stout.py as a subprocess. adm/util/adas/__init__.py - Updated to include the new extract.py module to the list of modules for 'import *'. |
||||
14004 |
Directory Listing |
Modified
2 years, 8 months ago Thu May 14 19:23:17 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - Do not use levels of uncertain or unresolved J with groups. adm/util/idata/state.py - In OneState.Jtot(), return a string for uncertain or unresolved J values. Exact J's are returned as a float. adm/util/stout/tp.py - bugfix: Restored default format for transition probabilities, used by idata.tp.do_printed_TP_differ(). Fixed. adm/test/idata/test_nrg.py - Updated unit tests. Added made-up level involving a mixed term, and uncertain / unresolved J to the dataset for Ne+7. |
||||
14003 |
Directory Listing |
Modified
2 years, 8 months ago Thu May 14 18:01:15 2020 UTC |
marios | |
Log: adm/util/nist/__init__.py - Added extract.py to the list of modules for 'import *'. |
||||
14002 |
Directory Listing |
Modified
2 years, 8 months ago Thu May 14 17:57:26 2020 UTC |
marios | |
Log: adm/util/atoms/spterm.py - In spec_term_nist_fmt(), allowed for blank terms. |
||||
14001 |
Directory Listing |
Modified
2 years, 8 months ago Thu May 14 17:55:31 2020 UTC |
marios | |
Log: adm/util/atoms/splevel.py - In is_spec_level(), also accept missing and uncertain terms, in addition to unassigned terms (which equal the energy), as valid terms. This is the conjugate for writing blank terms with nist-extract. - In spec_level_nist_fmt(), allowed for blank terms. adm/util/atoms/spname.py - In fmt_spname_output_noJ(), allowed for blank terms. - Removed leading and trailing spaces from the output of fmt_spname_output() and fmt_spname_output_noJ(). adm/test/atoms/test_splevel.py adm/test/atoms/test_spname.py - Updated unit tests. Added a few more to exercise levels with blank terms. |
||||
14000 |
Directory Listing |
Modified
2 years, 8 months ago Thu May 14 05:26:44 2020 UTC |
marios | |
Log: adm/util/nist/extract.py - Now using the Header() and DataParser() classes to extract data from the HTML tables. - Now processing uncertain (e.g., '1 or 2') and unresolved ('1,2,3') J-values. - Energy is no longer converted to a float -- permits exact matches for line data, and energies of higher precision in output files. - Now printing energy levels with all available precision. adm/util/nist/phtml.py - bugfix in extract_notes(): Permitted note codes with HTML markup to be added to the list of notes. Now exiting as soon as the first batch of notes is obtained. Fixed. - In TranParser.parse(): Restored storage of statistical weights as integers. adm/util/nist/nrg.py - Refactored form_name() to process first the case that we have only a valid configuration, and removed checks on the term. This permits levels without terms to be printed. - Removed functions parse_ionization() and level_parse_line(), both made obsolete with the use of the Parser classes. adm/util/nist/tp.py - In RadTrans.set() and AllRadTrans.insert(), switched to using str for Einstein A values. adm/test/nist/test_phtml.py adm/test/nist/test_nrg.py adm/test/nist/test_tp.py - Updated unit tests. - Promoted unit_tests() inner functions to module functions. |
||||
13999 |
Directory Listing |
Modified
2 years, 8 months ago Thu May 14 03:24:53 2020 UTC |
marios | |
Log: adm/util/atoms/jtot.py - Implemented the identification and processing of J values that are uncertain (1 or 2), or unresolved (1,2), or both (1, 2 or 3). 'Mixed' J values can be used with any of the module functions. adm/util/atoms/spterm.py - Updated are_terms_equiv() to be able to compare mixed terms. adm/util/atoms/splevel.py - Updated module functions to be able to handle mixed J values: - are_term_Jtot_consistent() - convert_spec_level_to_real() - convert_spec_level_to_frac() adm/util/atoms/spname.py - Updated parse_spname_into_ecl() to be able to handle mixed J values. adm/test/atoms/test_jtot.py adm/test/atoms/test_spterm.py adm/test/atoms/test_splevel.py adm/test/atoms/test_spname.py - Exercised new functions and new capabilities in unit tests. |
||||
13998 |
Directory Listing |
Modified
2 years, 8 months ago Wed May 13 19:43:38 2020 UTC |
marios | |
Log: adm/util/atoms/spterm.py - Updated calc_gtot() to handle mixed terms: the highest statistical weight is returned for them. - Also updated valid_Jtot() to handle mixed terms: a concatenated list of valid J values is returned for them. adm/test/atoms/test_spterm.py - Exercised new capabilities of functions in unit tests. |
||||
13997 |
Directory Listing |
Modified
2 years, 8 months ago Wed May 13 17:29:03 2020 UTC |
marios | |
Log: adm/util/atoms/spterm.py - Renamed is_term_mixed() to the more appropriate is_term_missing(). - Defined function is_term_mixed() to identify mixed terms of the form '1,3G' or '2P,4P'. - Defined function resolve_mixed_term() to convert a mixed term into a list of (LS) terms. - Updated is_term() to handle mixed terms. adm/test/atoms/test_spterm.py - Updated function name in tests of is_term_mixed() to is_term_missing(). - Added unit tests for new functions is_term_mixed() and resolve_mixed_term(). - Exercised is_term() in unit tests with mixed terms. - Promoted inner functions of unit_tests() to module functions. |
||||
13996 |
Directory Listing |
Modified
2 years, 8 months ago Tue May 12 05:05:10 2020 UTC |
marios | |
Log: adm/util/stout/tp.py - Modified compose_line() to admit, as a keyword argument, the precision in printed (exponential format) value of the Einstein A value. - Removed unused module parameter TP_format. adm/test/stout/test_tp.py - Added unit tests to exercise new functionality. - Fixed failing test to came up after adjusting the format of the type column in r13958. - Promoted inner functions of unit_tests() to module functions. |
||||
13995 |
Directory Listing |
Modified
2 years, 8 months ago Mon May 11 22:46:44 2020 UTC |
marios | |
Log: adm/util/atoms/orbitals.py - Expanded is_nprim() to be able to handle str input. If the string can be converted to an positive integer with no fractional part, it is considered to be a valid principal quantum number. adm/util/atoms/econfig.py - Expanded are_econfig_equiv(), econfig_has_ancestor(), and fix_econfig() to handle configurations that are principal quantum numbers; unassigned (e.g., '1234d'); or mixed (e.g., '2,3.sp'). adm/test/atoms/test_orbitals.py adm/test/atoms/test_econfig.py - Added unit tests for the new capabilities of the modified functions. adm/util/atoms/shells.py - Minor format change to error message. adm/util/atoms/splevel.py - Removed unnecessary import of orbitals module. |
||||
13994 |
Directory Listing |
Modified
2 years, 8 months ago Mon May 11 21:44:24 2020 UTC |
marios | |
Log: adm/util/stout/nrg.py - Modified compose_line() to preserve the number of decimal places in the energy. It now accepts the energy as a str, and also accepts two keyword arguments to control the number of characters to be used in its integer and fractional parts. adm/test/stout/test_nrg.py - Updated to new interface of stout.nrg.compose_line(). Added unit tests for new functionality. - Promoted inner functions of unit_tests() to module functions. adm/util/idata/nrg.py adm/test/idata/test_nrg.py - Updated to new interface of stout.nrg.compose_line(). |
||||
13993 |
Directory Listing |
Modified
2 years, 8 months ago Fri May 8 22:36:02 2020 UTC |
fguzman | |
Log: ion_solver: retourning to the population solver iso_condensed: adapted to the population representation using bool variable lgpop obtained real ionization energies to get rid of negative source terms simplified indexing on Sourcebound and Sinkbound iso_level: retaured iso_level with condensation |
||||
13992 |
Directory Listing |
Modified
2 years, 8 months ago Fri May 8 21:51:21 2020 UTC |
marios | |
Log: adm/util/atoms/parity.py adm/util/atoms/trans.py - Warn when processing shells of multiple L symbols that the first one is being used. |
||||
13991 |
Directory Listing |
Modified
2 years, 8 months ago Fri May 8 21:40:41 2020 UTC |
marios | |
Log: adm/util/nist/nrg.py adm/test/nist/test_nrg.py - bugfix in level_parse_line(): extract_notes() now returns a list. Updated calls. Fixed. adm/util/nist/phtml.py - Modified extract_notes() to not bail after the first notes have been retrieved. adm/util/atoms/econfig.py - Missed in previous commit. |
||||
13990 |
Directory Listing |
Modified
2 years, 8 months ago Fri May 8 21:36:30 2020 UTC |
marios | |
Log: adm/util/atoms/orbitals.py - Removed functions exported to shells.py and econfig.py. adm/adm-fine-tune.py adm/util/atoms/econfig.py adm/util/atoms/parity.py adm/util/atoms/spname.py adm/util/atoms/trans.py adm/util/idata/nrg.py adm/util/idata/state.py adm/util/nist/extract.py adm/util/nist/nrg.py adm/util/register/levels.py adm/util/register/shifts.py adm/util/register/terms.py adm/util/register/viz.py adm/test/atoms/test_spname.py adm/test/atoms/test_trans.py adm/test/idata/test_nrg.py adm/test/idata/test_state.py - Updated calls to the appropriate module. adm/test/atoms/test_orbitals.py - Removed unit tests exported to tests for the shells.py and econfig.py modules. |
||||
13989 |
Directory Listing |
Modified
2 years, 8 months ago Fri May 8 19:08:21 2020 UTC |
marios | |
Log: adm/util/adas/adas.py adm/util/adas/eissner.py - Update to using fmt_econfig() in econfig.py |
||||
13988 |
Directory Listing |
Modified
2 years, 8 months ago Fri May 8 17:55:21 2020 UTC |
marios | |
Log: adm/util/atoms/spname.py - Removed duplicate functions that have been moved to econfig.py. adm/test/atoms/test_spname.py - Removed relevant unit tests. |
||||
13987 |
Directory Listing |
Modified
2 years, 8 months ago Fri May 8 04:30:43 2020 UTC |
marios | |
Log: adm/util/nist/phtml.py - In EnergyParser.parse(), if an ionization potential data line is read for a bare nucleus, use a single space, as its configuration. adm/nist-asd-ip.py - Drop resetting the ion above configuration to 3 spaces, now that it is guaranteed to not be the empty string. adm/test/nist/test_phtml.py - Exercised new functionality in unit test. |
||||
13985 |
Directory Listing |
Modified
2 years, 8 months ago Fri May 8 03:43:25 2020 UTC |
marios | |
Log: adm/nist-asd-download.py - Added script to download the NIST level and line data for the main isotope of all elements. adm/nist-asd-refs.py - Added script to extract the reference codes from NIST tables, and to resolve them into actual bibliographical references by querying the NIST bib server. adm/nist-asd-ip.py - Added script to extract the ionization potential information from NIST level tables, and to compose Cloudy's 'ionization_potential.dat' file. |
||||
13984 |
Directory Listing |
Modified
2 years, 8 months ago Fri May 8 03:23:26 2020 UTC |
marios | |
Log: adm/test/nist/test_web.py - Updated column parameter names to current in phtml.py. |
||||
13983 |
Directory Listing |
Modified
2 years, 8 months ago Fri May 8 03:17:56 2020 UTC |
marios | |
Log: adm/util/nist/phtml.py - Standardized the reading of table data. The header of the table is first ingested to record the order of columns. Accessing data for a column may simply be done by invoking its name. Column names in level and line tables are defined, and can be directly accessed, but for convenience two classes for reading level and line data are also defined. Overall, the new classes defined in this commit are: - Header() - DataParser() - EnergyParser() - TranParser() adm/test/nist/test_phtml.py - Exercised new classes in unit tests. - Promoted inner functions of unit_tests() to module functions. |
||||
13982 |
Directory Listing |
Modified
2 years, 8 months ago Thu May 7 18:11:47 2020 UTC |
marios | |
Log: adm/util/nist/phtml.py - Modified extract_note() to return list of note codes, not a concatenated string. Renamed to extract_notes(). adm/util/nist/nrg.py - Updated call to function. adm/util/nist/notes.py - Updated docstring of parse_note(). adm/test/nist/test_phtml.py - Updated unit tests. |
||||
13981 |
Directory Listing |
Modified
2 years, 8 months ago Thu May 7 17:20:22 2020 UTC |
marios | |
Log: adm/util/atoms/shells.py - Added file containing all functions that manage configuration shells. Extracted mainly from orbitals.py, but also from spname.py. The configuration parser, named subshells() in orbitals.py and renamed to parse_config(), has been completely rewritten to be able to handle the rich syntax encountered on NIST without relying on functions of the re module. adm/util/atoms/econfig.py - Added file containing all functions that manage configurations. Extracted mainly from orbitals.py, but also from spname.py. adm/test/atoms/test_shells.py adm/test/atoms/test_econfig.py - Exercised existing and new functionality in unit tests. Existing functions extracted mainly from test_orbitals.py, but also from test_spname.py. adm/util/atoms/__init__.py - Included new modules in the list of modules loaded with 'import *'. |
||||
13980 |
Directory Listing |
Modified
2 years, 9 months ago Sun May 3 15:01:28 2020 UTC |
marios | |
Log: adm/util/nist/files.py - bugfix: Missing module re. Now imported. Fixed. adm/util/io/log.py - In error(), removed the empty line before the error message. adm/util/fs.py - In chdir(), removed the empty line after the message. |
||||
13979 |
Directory Listing |
Modified
2 years, 9 months ago Sun May 3 14:58:08 2020 UTC |
marios | |
Log: adm/util/ptable/elements.py - Extend list of natural elements to include Plutonium. - Defined order_all_elements() to access all elements. adm/util/nist/web.py - Added keyword argument for Lande g column to set_NIST_levels_query(). - Added keyword arguments to query_NIST_levels_form() and query_NIST_lines_form() to allow for not getting a valid webpage from NIST. adm/util/stout/dirtree.py - bugfix in species_stout_relpath(): Case-sensitive relative paths were returned, non-compliant with the Stout format. Now all paths are returned in lowercase. Fixed. |
||||
13978 |
Directory Listing |
Modified
2 years, 9 months ago Fri May 1 21:42:53 2020 UTC |
fguzman | |
Log: minor fixes |
||||
13977 |
Directory Listing |
Modified
2 years, 9 months ago Fri May 1 00:37:50 2020 UTC |
marios | |
Log: adm/util/nist/refs.py - In References(): - bugfix in prt_to_file(): Did not update call prep_print() to prep_print_pub(). Now fixed. |
||||
13976 |
Directory Listing |
Modified
2 years, 9 months ago Thu Apr 30 15:28:00 2020 UTC |
marios | |
Log: adm/util/nist/ip.py - In IonPots(), defined methods __len__() and __getitem__(). adm/test/nist/test_ip.py - Added unit tests for new methods. - Converted inner functions to module functions. |
||||
13975 |
Directory Listing |
Modified
2 years, 9 months ago Thu Apr 30 04:33:00 2020 UTC |
marios | |
Log: adm/util/nist/refs.py - In References(): - Now using the fs.JSON infrastructure for handling JSON files. This has necessitated: - Dropping the '.json' suffix from the class-wide filename (now basename) parameters. - Defining object method to set the basename (pathname() won't do, as it sets the entire path). - Also refactored JSON-serialization code into methods export_dict() and import_dict(). - Defined method __len__(), used with calls to length(). - Defined function to read a master references file from a given directory. adm/test/nist/test_refs.py - Added unit tests for the new methods and functions. |
||||
13974 |
Directory Listing |
Modified
2 years, 9 months ago Thu Apr 30 02:08:42 2020 UTC |
marios | |
Log: util/nist/refs.py - bugfix in fetch_ref_data(): Some authors field do not have the expected number of HTML anchors, and that caused a failure. Now adapting to the number of returned fields. Fixed. - bugfix in References.__contains__(): Code could use an uninitialized object. Now guarding against an empty reference dict. Fixed. - bugfix in copy_ref(): Not copying a Reference() object if it already exists in the rederence dict prevented populating records with data from the master list of references. test/nist/test_refs.py - Added a couple of units tests for is_ref_commented(), parse_commented_ref(). |
||||
13973 |
Directory Listing |
Modified
2 years, 9 months ago Wed Apr 29 21:33:00 2020 UTC |
fguzman | |
Log: comment gap reducing on get_pivotal |
||||
13972 |
Directory Listing |
Modified
2 years, 9 months ago Wed Apr 29 21:08:53 2020 UTC |
marios | |
Log: adm/util/nist/refs.py - In References(): The practice of telling save_json() and read_json() if the dataset is for more than one species (master references) was fragile. To use a master references dataset consistently with reading and writing JSON files, method set_master() has been defined. - The is_master argument has been removed from save_json() and read_json(). - It has been retained in pathname(), because as a class method it has no access to the object data. - Class-wide parameters have been defined to the JSON filenames for master and regular datasets. adm/test/nist/test_refs.py - Updated unit tests. |
||||
13971 |
Directory Listing |
Modified
2 years, 9 months ago Wed Apr 29 20:24:06 2020 UTC |
marios | |
Log: adm/util/nist/refs.py - Fundamentally refactored class References(). It now holds a dict of Reference() objects. Methods and inner functions that did the bulk of the work for resolving a table entry into a URL, and fetching ref data have been made module functions. - Class Reference() provides get functions to all its data fields, populated after a call to resolve() to actually get the data. base.Base methods copy(), __eq__(), export_dict(), and import_dict() are overridden to ease the handling of objects. - Class References() maintains the methods it had, which now iterate over Reference() objects. The following methods have also been defined: - __iter__() - __contains__() - __getitem__() - __eq__() - copy_ref() - to copy Reference() objects into the dataset. Also, the JSON-related methods: pathname(), save_json(), and read_json(), now admit a keyword argument to set the JSON filename to 'master_refs.json', instead of 'refs.json'. adm/test/nist/test_refs.py - Exercised all function and class methods in unit tests. Several calls to the NIST server are made, which makes the unit test slow. |
||||
13970 |
Directory Listing |
Modified
2 years, 9 months ago Wed Apr 29 14:49:56 2020 UTC |
fguzman | |
Log: corrected factor 2 in iso_sequences departure coefficients and populations derivation, removed calculation of departures from populations |
||||
13969 |
Directory Listing |
Modified
2 years, 9 months ago Tue Apr 28 21:21:59 2020 UTC |
fguzman | |
Log: iso_level.cpp: reverted iso_departure.cpp: changed headers order to include definitions first removed unused variables optimize Boltzmann factors filling. print departures after matrix inversion. |
||||
13968 |
Directory Listing |
Modified
2 years, 9 months ago Tue Apr 28 14:37:54 2020 UTC |
marios | |
Log: adm/util/nist/ip.py - In IonPot, added optional field for notes on the IP value, and method note() to access it. Updated other methods as needed. - In IonPots.add_IP(), added optional keyword for IP notes. adm/test/nist/test_ip.py - Exercised new functionality in unit tests for both IonPot() and IonPots(). adm/util/fs.py - Changed default indentation in JSON files from 4 spaces to 2. |
||||
13966 |
Directory Listing |
Modified
2 years, 9 months ago Mon Apr 27 00:35:57 2020 UTC |
marios | |
Log: adm/util/nist/extract.py - bugfix in load_nrg_data(): Report used TP filename. Fixed. - Updated call to nist.web.set_NIST_lines_query() to request references according to command-line input. - Updated call to can_skip_line(). adm/util/misc.py - Silence debug print statement. |
||||
13965 |
Directory Listing |
Modified
2 years, 9 months ago Mon Apr 27 00:26:09 2020 UTC |
marios | |
Log: adm/util/nist/phtml.py - Renamed: skip_line() -> can_skip_line() fetch-NIST-IP.py NistExtractor/NistExtractor.py adm/test/nist/test_phtml.py adm/test/nist/test_web.py - Updated function calls. |
||||
13964 |
Directory Listing |
Modified
2 years, 9 months ago Sun Apr 26 23:53:28 2020 UTC |
marios | |
Log: adm/util/nist/web.py - In set_NIST_lines_query(): - Combined options 'with_obs_wl' and 'with_calc_wl' into option 'with_wl'. If only observed wavelengths are asked for, but none exist on output, no table is returned. For that reason, we will always get both. - Renamed option 'with_unc' to 'with_wl_unc' to clarify its meaning. adm/test/nist/test_web.py - Updated unit tests. |
||||
13963 |
Directory Listing |
Modified
2 years, 9 months ago Sun Apr 26 17:52:47 2020 UTC |
marios | |
Log: adm/util/nist/web.py - Added options to set_NIST_lines_query() to more finely control which columns to request. - Modified query_NIST_levels_form() and query_NIST_lines_form() to report the exception error, and give a more informative error message before exiting, should the data download fail. adm/util/misc.py - In download_page(): - bugfix: Angstrom and micron symbols cannot be converted into UTF-8, and throw exceptions that cause the code to abort. Unconvertable characters are now replaced with a unicode box. Fixed. - Updated to throw more meaningful messages on Exceptions raised when getting data from a remote server, and when decoding data into UTF-8. adm/test/nist/test_web.py - Exercised new options to query_NIST_lines() in unit tests. |
||||
13962 |
Directory Listing |
Modified
2 years, 9 months ago Sat Apr 25 18:02:26 2020 UTC |
marios | |
Log: adm/util/nist/extract.py - Removed property svn:executable. |
||||
13961 |
Directory Listing |
Modified
2 years, 9 months ago Sat Apr 25 17:52:12 2020 UTC |
marios | |
Log: adm/util/nist/extract.py - Read HTML tables from files, if present. Otherwise, do as before: download the data, and store them, if asked. |
||||
13960 |
Directory Listing |
Modified
2 years, 9 months ago Sat Apr 25 06:38:45 2020 UTC |
marios | |
Log: adm/adm-nist-extract.py adm/util/nist/extract.py - Added NistExtractor.py under these names. It has been refactored to hold the UI in the script, and the core functionality in the module. This permits using the latter from adm-fetch-nist.py directly. adm/adm-fetch-nist.py - The script now uses the functionality of NistExtractor.py refactored in the util.nist.extract module, instead of launching NistExtractor.py as a subprocess. |
||||
13959 |
Directory Listing |
Modified
2 years, 9 months ago Sat Apr 25 05:53:21 2020 UTC |
marios | |
Log: adm/util/nist/ip.py adm/util/nist/notes.py adm/util/nist/refs.py - In table output of notes, ionization potentials, and references, show title only if there are any data to be shown. |
||||
13958 |
Directory Listing |
Modified
2 years, 9 months ago Sat Apr 25 01:28:16 2020 UTC |
marios | |
Log: adm/adm-export-stout.py - Now including the comments of the original dataset with the theoretical comments in all output Stout files. - Now printing in the comment section some information about the ADM run. - The experimental part of the comment section of energy and transition files is not a mere copy of the input file. It has been updated to include only the notes table (in .nrg), accuracy table (in .tp), and references (in both) that involved in the dataset. adm/util/idata/nrg.py - In Energy.new_dataline(), now printing the notes on energy, and the comment, but without the secondary configuration. adm/util/idata/tp.py - In JoinedTransitions.new_dataline(): - bugfix: Check on existence of transition used the upper level index instead of the lower. Fixed. - An empty string is now used for the multipole order if it is missing, so as to keep the column of comments aligned. Custom orders are no longer accepted. adm/util/nist/refs.py - References.prep_print() now sorts all the references. Previously, sorting only occured when no list was given, and the entire dataset would be sorted. adm/util/nist/tp.py - In print_acc_table(): Refactored preparation of table contents into function prepare_acc_table(), which it now calls. adm/util/stout/files.py - bugfix in FileSections.prepare_file_lines(): Call of end_of_data_sentinel() did not include its module. Prepended with stout.fmt. Fixed. adm/util/stout/tp.py - In compose_line(), now using an empty string when the order is missing to keep the column of comments aligned. adm/util/stout/meta.py - Make output JSON files overwrite existing ones. |
||||
13957 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 24 21:45:17 2020 UTC |
marios | |
Log: adf042stout.py - Added ADM path to list of paths, to enable running stand-alone. - In write_end_of_file(), now using stout.fmt.compose_comment_line() to format the comment line. adm/adm-query-adas.py adm/util/adas/adas.py - Moved definition of the 'comments_file' to the module to make it more widely accessible. |
||||
13956 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 24 21:35:40 2020 UTC |
marios | |
Log: Adjusted appearance of comment section in the output of NistExtractor.py. adm/util/stout/fmt.py - In prep_comments_header(), added an empty line at the end of the header. - bugfix: In compose_comment_line(), in r13949 comment line was made to be stripped both at its front and back. This breaks the alignment of the notes when a comment sentinel is not being used. Now stripping only the back of the comment line. Fixed. adm/util/nist/notes.py - Updated prepare_table() to let util.stout.fmt.compose_comment_line() handle printing lines as comments. adm/util/nist/refs.py - In prep_print(): - Added header for the references. - Updated prep_print() to let util.stout.fmt.compose_comment_line() handle printing lines as comments. NistExtractor/NistExtractor.py - Updated call to IonPots.add_IP(). - Now using IonPots.prep_for_stout() to print the IP data. |
||||
13955 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 24 21:16:16 2020 UTC |
fguzman | |
Log: 1) Changed name of the function from iso_departure to iso_departure_solver to avoid ambiguity; 2) Finished coding iso_departure_solver implemented all checks and normalizations. Wrote header on iso.h 3) Checked and corrected Boltzmann factors implementation in iso_departure_solver 4) iso_solve would call now to iso_departure_solver |
||||
13954 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 24 20:58:53 2020 UTC |
marios | |
Log: adm/util/nist/ip.py - In IonPots.prep_for_stout(), added 3 lines of header to the output. adm/test/nist/test_ip.py - Updated tests. |
||||
13953 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 24 20:40:17 2020 UTC |
marios | |
Log: adm/util/nist/ip.py - Defined method IonPot.prep_for_stout(), as a wrapper around util.stout.fmt.prep_for_stout(). - Defined method IonPots.prep_for_stout() to iterate over the IonPot data. Interface includes an option to only print data for the first IP entry. adm/test/nist/test_ip.py - Exercised new methods in unit tests. |
||||
13952 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 24 20:06:05 2020 UTC |
marios | |
Log: adm/util/nist/ip.py - Updated interface of IonPot.init() and IonPots.add_IP(): - refcode is now a keyword argument. - Swapped order of ion and IP. adm/test/nist/test_ip.py - Updated calls to IonPot() and IonPots() methods. |
||||
13951 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 24 18:46:54 2020 UTC |
marios | |
Log: adm/util/nist/ip.py - In IonPot(), restored optional keywords, eliminated in r13947. |
||||
13950 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 24 18:14:27 2020 UTC |
marios | |
Log: adm/util/stout/fmt.py - In prep_IP_line(), added keyword argument 'error' to also report the error on the IP value. adm/test/stout/test_fmt.py - Added unit tests to exercise use of the new argument. |
||||
13949 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 24 17:49:27 2020 UTC |
marios | |
Log: adm/util/stout/fmt.py - Refactored code to handle the writing of comment lines. - Defined use_comment_sentinel() to control starting a comment line with a sentinel. - Defined compose_comment_line() to write comment lines. Now used by prep_comments_header() and prep_IP_line(). - compose_dataline() now strips whitespace from the output line. adm/test/stout/test_fmt.py - Exercised new functions in unit tests. - bugfix: By rearranging in r13948, data needed by get_fields_from_dataline() were moved after it. Fixed. |
||||
13948 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 24 16:15:08 2020 UTC |
marios | |
Log: adm/test/stout/test_fmt.py - Rearranged tests of functions to the same order as in the module. |
||||
13947 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 24 06:25:46 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py - Now processing all ionization potential records, instead of reading just the first one. Only the first one is printed in the .nrg file, but the entire dataset is saved in a JSON file (IP.json) in the output directory. adm/util/nist/ip.py - Switched to using relative imports. - In IonPot(): - Eliminated optional keywords. Now they are all required. - Allowing for empty NIST refcodes, in case they are not present, or they are not picked up. - In export_dict(), omiting fields with empty or None values. - bugfix in IonPots.__next__(): Typo in data structure name over which the method iterates. Fixed. adm/util/base.py - Switched to using relative imports. - In Base.pprt(): Now skipping fields of value None. |
||||
13946 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 24 05:36:58 2020 UTC |
marios | |
Log: adm/util/nist/notes.py - __prepare_table() -> __prepare_table_data() - Refactored data preparation of function print_table() into new function prepare_table(). adm/util/nist/refs.py - Refactored method prt_to_file() to separate data preparation from data presentation. - Defined method prep_print(), which contains the refactored code, and handles the preparation. - Designed the method to only report a subset of all the references specified on the call to the method. - prt_to_file() now calls prep_print(). adm/util/nist/__init__.py - Added 'ip.py' to the list of modules loaded with 'import *'. adm/test/nist/test_notes.py - Updated calls to new function name __prepare_table_data(). Updated test function name. |
||||
13945 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 24 05:14:43 2020 UTC |
marios | |
Log: adm/util/nist/ip.py - Added module to handle ionization potential values more efficiently. Currently, the module defines two classes. adm/test/nist/test_ip.py - Exercised the new classes in unit tests. |
||||
13944 |
Directory Listing |
Modified
2 years, 9 months ago Thu Apr 23 22:49:08 2020 UTC |
marios | |
Log: adm/adm-export-json.py adm/adm-finalize.py - Moved the process of updating the indices of each record from 'export-json' to 'finalize', as the information is needed for exporting in Stout format, as well. |
||||
13943 |
Directory Listing |
Modified
2 years, 9 months ago Thu Apr 23 20:27:51 2020 UTC |
marios | |
Log: adm/adm-export-json.py - Added utility to export a lean JSON dataset from the 'final' dataset. The output files use the Stout filenames as their base, e.g., ne_9.nrg.json. adm/util/base.py - Added function to remove empty entries from a dictionary. adm/util/idata/nrg.py - Defined LeanEnergyMeta.export_dict() to remove empty fields from the dictionary produced by the parent method. - Updated LeanEnergy.copy(): - It now instructs the parent method to not copy optional keywords. - It now overwrites the state() object with the primary name of the level. - Defined LeanEnergy.export_dict() to store the metadata as a separate dict, so that they easily distinguishable in the output JSON record. - In LeanEnergies(), overrode methods save_json() and read_json() to enable saving under a different naming scheme. adm/util/idata/tp.py - Added argument to BasicTransition.copy() to skip copying optional keywords. - bugfix in LeanTranMeta.copy(): The keywords (required and optional) of BasicTranMeta were copied, not of LeanTranMeta. Changed variables. Fixed. - Defined LeanEnergyMeta.export_dict() to remove empty fields from the dictionary produced by the parent method. - Updated LeanTransition.copy() to not copy the optional keywords in the call to the parent method. - Defined LeanTransition.export_dict() to store the metadata as a separate dict, so that they easily distinguishable in the output JSON record. - In LeanEnergies(), overrode methods save_json() and read_json() to enable saving under a different naming scheme. adm/util/idata/coll.py - Defined LeanCollMeta.export_dict() to remove empty fields from the dictionary produced by the parent method. - Defined LeanCollision.export_dict() to store the metadata as a separate dict, so that they easily distinguishable in the output JSON record. - In LeanCollisions(), overrode methods save_json() and read_json() to enable saving under a different naming scheme. adm/test/idata/test_nrg.py - Defined facility __compare_Energy_with_Lean() to compare Energy() and LeanEnergy() objects. Used where needed, in lieu of repeating comparison statements. adm/test/idata/test_tp.py - In test of LeanTranMeta.copy(), removed check on refcode, which is not stored with lean metadata. |
||||
13942 |
Directory Listing |
Modified
2 years, 9 months ago Thu Apr 23 13:13:29 2020 UTC |
marios | |
Log: adm/util/idata/coll.py - In CollisionBlock.copy(), make use of insert_collision(), instead of repeating its code. - Defined classes: - LeanCollMeta(), a lightweight version of BasicCollMeta(). - LeanCollision(), a composite of BasicCollision() & LeanCollMeta(). - LeanCollisionBlock(), a lightweight version of CollisionBlock(), with data stored as LeanEnergy() records. - LeanCollisions(), a lightweight version of Collisions(), with blocks stored as LeanCollisionBlock() datasets. adm/test/idata/test_coll.py - Added unit tests for new classes. - Fixed some docstrings. |
||||
13941 |
Directory Listing |
Modified
2 years, 9 months ago Thu Apr 23 06:11:49 2020 UTC |
marios | |
Log: adm/util/idata/coll.py - Partition Collision() into three classes from which it now derives: - BasicCollision(), which holds the main collision data. - BasicCollMeta(), which holds metadata. - BasicCollProc(), which holds processing info, if any. - Defined methods pprt(), copy(), __eq__(), export_dict(), and import_dict() on each of them, as well as on Collision(), which calls these methods. - Defined method unset_replaced(), now part of BasicCollProc() along with the set_replaced() and replaced(). - CollisionBlock() and Collisions() now derive from base.Base. - bugfix in CollisionBlock.add_collision_record(): Missed replacing method Collision.init_dataline() with .init() in r13940. Fixed. adm/test/idata/test_coll.py - Exercised new classes in unit tests. adm/util/base.py - In Base.pprt(), changed format to separate variable name from value with ':\t', instead of '\t'. adm/util/idata/nrg.py - Minor variable name changes. |
||||
13940 |
Directory Listing |
Modified
2 years, 9 months ago Thu Apr 23 03:32:40 2020 UTC |
marios | |
Log: adm/util/idata/coll.py - Collision.init_dataline() -> Collision.init() adm/test/idata/test_coll.py - Updated method calls and relevant test function names. |
||||
13939 |
Directory Listing |
Modified
2 years, 9 months ago Thu Apr 23 03:24:08 2020 UTC |
marios | |
Log: adm/util/idata/tp.py - Defined classes: - LeanTranMeta(), a lightweight version of BasicTranMeta(). - LeanEnergy(), a composite of BasicEnergy() & LeanTranMeta(). - LeanEnergies(), a lightweight version of Energies(), with data stored as LeanEnergy() records. adm/test/idata/test_tp.py - Exercised new classes in unit tests. adm/util/idata/nrg.py - In BasicEnergyMeta.dataline(), guarded return value with a check that the attribute exists. If not, an empty string is returned. This is needed because LeanEnergyMeta inherits the method, and not storing the attribute, the call might lead to a crash. - bugfix in LeanEnergy.copy(): The input type validated to be BasicEnergy() and then used to populate a BasicEnergyMeta() object. Now validating for an Energy() object, which can be used with both. Fixed. |
||||
13938 |
Directory Listing |
Modified
2 years, 9 months ago Wed Apr 22 22:51:49 2020 UTC |
marios | |
Log: adm/util/idata/tp.py - Partitioned Transition() methods and data into two new classes, BasicTransition(), and BasicTranMeta(), which Transition derives from. - The partition follows the partition of the Energy() class. BasicTransition() holds the data of the transition, while BasicTranMeta() hold the metadata for the transition. - Both of the new classes derive from base.Base, and override its pprt(), copy(), __eq__(), export_dict(), and import_dict() methods. - Renamed: Transition.init_dataline() -> Transition.init() adm/test/idata/test_tp.py - Added unit tests for new classes. - Updated calls to Transition.init(), from .init_dataline(), and testing function name. |
||||
13937 |
Directory Listing |
Modified
2 years, 9 months ago Wed Apr 22 21:03:06 2020 UTC |
fguzman | |
Log: coded matrix inversion and conversion of eigenvector to extended array |
||||
13936 |
Directory Listing |
Modified
2 years, 9 months ago Wed Apr 22 16:36:37 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - Renamed: - BasicMeta() -> BasicEnergyMeta() - LeanMeta() -> LeanEnergyMeta() adm/test/idata/test_nrg.py - Updated calls to class methods, and names of testing functions. |
||||
13935 |
Directory Listing |
Modified
2 years, 9 months ago Wed Apr 22 16:12:42 2020 UTC |
fguzman | |
Log: filled matrix z and condensed into matrix c |
||||
13934 |
Directory Listing |
Modified
2 years, 9 months ago Wed Apr 22 05:48:54 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - Defined classes: - LeanMeta(), a lightweight version of BasicMeta(). - LeanEnergy(), a lightweight version of BasicEnergy(). - LeanEnergies(), a lightweight version of Energies(). adm/test/idata/test_nrg.py - Exercised new classes in unit tests. |
||||
13933 |
Directory Listing |
Modified
2 years, 9 months ago Wed Apr 22 05:05:20 2020 UTC |
marios | |
Log: adm/util/base.py - Added base class from which other can derive. It contains the classmethods of Valid (valiate() and is_obj()), and methods for pprt(), copy(), __eq__(), import_dict(), and export_dict(), with code refactored from methods in idata.nrg. adm/util/idata/nrg.py - The following classes now derive from Base(), instead of Valid(): - BasicEnergy() - BasicMeta() - RegisterEnergy() - ConfTerm() - ConfTermSort() - ConfTerms() - Groups() - Energies() - Rewrote methods to use their Base() equivalents in classes: - BasicEnergy() - BasicMeta() - RegisterEnergy() - ConfTerm() - ConfTermSort() - In BasicEnergy.__init__() removed obsolete keyword argument 'meta'. adm/util/__init__.py - Added 'base' module to the list of modules for 'import *'. |
||||
13932 |
Directory Listing |
Modified
2 years, 9 months ago Tue Apr 21 21:09:10 2020 UTC |
fguzman | |
Log: filled electron impact collisional and radiative terms in the CR matrix |
||||
13931 |
Directory Listing |
Modified
2 years, 9 months ago Tue Apr 21 20:18:38 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - Refactored Energy() to inherit from three separate classes that partition it into distinct logical units: - BasicEnergy() encapsulates the fundamental data for energy level. - BasicMeta() holds metadata on the level, such as its original database name, any comments given on the Stout energy record, etc. - RegisterEnergy() holds only data relevant to registration. - Energy() methods have been partitioned between these three classes. A few notes: - Method name changes: - reset_energy() -> set_energy(). Now in BasicEnergy(). A new reset_energy() has been introduced in BasicEnergy() that restores the level energy to its original value. - set_comment() -> reset_comment(). Now in BasicMeta(). - dismissed() -> set_dismissed(). Now in RegisterEnergy(). - toggle_ignore() -> toggle_ignored(). Now in RegisterEnergy(). - Energy() overrides RegisterEnergy.unset_shifted(), which calls the new BasicEnergy.reset_energy() as well as invoking the RegisterEnergy() homonymous method. - Each class defines its own pprt(), copy(), __eq__(), export_dict() and import_dict(). The Energy() homonymous methods call all of these - The old BasicEnergy() attributes, which derived from the even older LeanEnergy() class have been removed. - In Energies.copy(), removed the keyword arguments 'lean' and 'meta'. The method now longer produces 'lean' copies of the data. adm/util/idata/state.py - Removed explicit tab characters ('\t') from pprt() methods. Now using log.tab_right() and log.tab_left() to control indentation. adm/test/idata/test_nrg.py - Exercised functionality of the new classes (BasicEnergy(), BasicMeta(), and RegisterEnergy()) in unit tests. - Removed tests on lean energy records and datasets. adm/adm-ingest-data.py adm/test/idata/test_nrg.py - Updated calls to new method name: Energy.set_dismissed(). adm/util/register/levels.py adm/test/idata/test_nrg.py - Updated calls to new method name: Energy.toggle_ignored(). adm/adm-fine-tune.py adm/util/register/terms.py adm/test/idata/test_nrg.py - Updated calls to new method name: Energy.set_energy() |
||||
13930 |
Directory Listing |
Modified
2 years, 9 months ago Tue Apr 21 13:24:18 2020 UTC |
fguzman | |
Log: corrections on the error function formula. Activated PSM20 |
||||
13929 |
Directory Listing |
Modified
2 years, 9 months ago Sun Apr 19 06:18:08 2020 UTC |
marios | |
Log: adm/util/chtypes.py - Modified functions that validate collections (list, tuple, etc) to use the relevant bool functions from the types.py module. - Defined method Valid.is_obj(). adm/test/test_chtypes.py - Added unit tests for validate_collection(). adm/util/types.py adm/test/test_types.py - Renamed is_obj() -> is_obj_of(). |
||||
13928 |
Directory Listing |
Modified
2 years, 9 months ago Sun Apr 19 05:54:17 2020 UTC |
marios | |
Log: adm/util/types.py - Defined functions: - is_obj(), is_tuple(), is_dict() - and auxiliary functions: __validate_class(), __are_list_elements_obj(). - Renamed is_collection_given() -> is_collection() adm/test/test_types.py - Exercised new functions in unit tests. - Added unit tests for is_collection(). |
||||
13927 |
Directory Listing |
Modified
2 years, 9 months ago Sat Apr 18 22:53:46 2020 UTC |
marios | |
Log: adm/util/chtypes.py adm/util/types.py - Added change log. - Removed unnecessary imports. adm/util/types.py - Added Return type in docstrings of functions: - is_int() - is_int_pos() - is_int_notneg() - is_float() - is_float_pos() |
||||
13926 |
Directory Listing |
Modified
2 years, 9 months ago Sat Apr 18 22:02:22 2020 UTC |
marios | |
Log: adm/util/nist/tp.py - Now classes RadTrans() and AllRadTrans() inherit from chtypes.Valid(), not object. That is, they automatically have validate() methods. adm/test/nist/test_tp.py - Use newly-endowed validate() methods for type-checking RadTrans() objects. adm/test/cloudy/test_lines.py - Local class ThisLine() now derives from chtypes.Valid(). Removed the existing homonymous method. |
||||
13925 |
Directory Listing |
Modified
2 years, 9 months ago Sat Apr 18 18:38:27 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - Renamed class LeanEnergy() to BasicEnergy(). - Renamed method ingest() to set(). adm/util/idata/nrg.py adm/test/idata/test_nrg.py - Update calls to the new class and method names. |
||||
13924 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 17 23:43:31 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - Defined class LeanEnergy(), the scope of which is to provide a data structure without all the registration-related variables. - Its data fields are those that appear on a Stout energy record: index, energy, statistical weight, state, and comment. - Metadata can be used as well, including the DB of the original data, any notes on the level energy from the original dataset, and the energy shift that was applied to it, if applicable. - Refactored Energy() methods to access the basic data fields: - index() - energy() - statw() - state() - reset_index() - Defined new methods to report on the metadata fields: - db() - dEnergy() - notes() - Defined method ingest() to populate a LeanEnergy() object from an Energy() one. - Modified Energy() to inherit the methods of LeanEnergy(). - Enabled Energies.copy() to create a lean copy of its contents: - The method accepts keyword arguments 'lean' and 'meta' that control its behavior. A lean copy does not include the cterms() and groups() data. It also stores the energy level data using LeanEnergy() objects, instead of Energy(). adm/test/idata/test_nrg.py - Exercised new LeanEnergy() class in unit tests. - Exercised Energies.copy( lean = True ) in unit tests, with and without metadata. |
||||
13923 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 17 21:38:30 2020 UTC |
fguzman | |
Log: 1) Iniciated a new file iso_departure.cpp where the matrix will be solved for departures. a) created source and sink terms from recombination and CX b) this file is not linked to the rest of the code yet and is under construction 2) Removed the divition by LTE populations as this will not give us the correct matrix. it need to be solved using departure coefficients The populations are not sensitive enough to adapt Brocklehurst 1971 method for departures, it could work however using a spline or other tipe of extrapolation if we are sure it works. The best approach is to use departure coefficients as we know they need to asymptotically approach 1 |
||||
13922 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 17 13:05:48 2020 UTC |
marios | |
Log: adm/adm-finalize.py - Changed how the script operates. Instead of presenting the user with the output of the 'ls' command, and prompting for a selection, the nickname of choice must now be specified on the command line. - Removed function select_dataset(). - Defined function copy_JSON_dataset(). adm/util/io/ui.py - Defined function parse_add_JSON_nick(). It adds CLI option for a nickname for the entire dataset. adm/util/io/nicks.py - Added nickname 'final'. adm/docs/manual/examples.tex - Added Section 'Finalize Dataset'. |
||||
13921 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 17 12:54:59 2020 UTC |
marios | |
Log: adm/util/idata/unified.py - Modified set_connectedness() to admit a keyword argument that prints a title announcing the operation to take place. Two empty lines are added at the end of the operation. adm/adm-ingest-data.py - Removed the two empty lines after the call to set_connectedness(). |
||||
13920 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 17 12:04:12 2020 UTC |
marios | |
Log: adm/util/idata/coll.py - In Collisions(): - Modified pathname() and save_json() to admit an 'overwrite' keyword argument, which is passed to JSON.pathname() and JSON.save(), resp. - Modified save_json() to return the name of the file created. adm/test/idata/test_coll.py - Added unit tests for Transitions.save_json() exercising file overwriting. |
||||
13919 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 17 11:51:51 2020 UTC |
marios | |
Log: adm/util/idata/tp.py - In Transitions(): - Modified pathname() and save_json() to admit an 'overwrite' keyword argument, which is passed to JSON.pathname() and JSON.save(), resp. - Modified save_json() to return the name of the file created. - Likewise for JoinedTransitions(). adm/test/idata/test_tp.py - Added unit tests for Transitions.save_json() exercising file overwriting. - Likewise for JoinedTransitions.save_json(). |
||||
13918 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 17 02:17:18 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - In Energies(): - Modified pathname() and save_json() to admit an 'overwrite' keyword argument, which is passed to JSON.pathname() and JSON.save(), resp. - Modified save_json() to return the name of the file created. - Likewise in JoinedEnergies(). adm/test/idata/test_nrg.py - In unit tests for Energies.save_json(), now testing JSON file overwriting. - Likewise for the JoinedEnergies() methods. - bugfix: pathname() was using Energies.basename, instead of the JoinedEnergies equivalent. Fixed. That did not cause a problem, though, because they have the same value, 'energies'. |
||||
13917 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 17 01:38:20 2020 UTC |
marios | |
Log: adm/util/fs.py - In class JSON(): - In pathname(), replaced keyword argument 'unique' with 'overwrite', negating the meaning of the keyword. - In save(): - Added keyword 'overwrite', which is now passed to pathname() as is. Previously, pathname() was called to create a unique file name. Now by default it is called to not overwrite any existing files. - Method now returns the name of the file it created. adm/test/test_fs.py - Updated calls to methods in existing unit tests. - Exercised new keyword argument overwrite() to JSON.save() in unit tests. |
||||
13916 |
Directory Listing |
Modified
2 years, 9 months ago Thu Apr 16 20:59:49 2020 UTC |
marios | |
Log: adm/docs/manual/examples.tex - Added section on yet another attempt at registration, one that involves limiting the energy shifts of "1s.5f 1F*<3>" within the range suggested by the experimental transition to 1s.3d 1D<2>. This, again, consists, of 3 subsections: - On "Shifting of unregistered terms", which entails a description of the new interface to that command. - On "Creating the Synthetic Dataset" - And, on "Fine Tuning", which involves a critical evaluation of the new dataset. adm/util/register/shifts.py - Disabled debugging info in get_transition_bounds() |
||||
13915 |
Directory Listing |
Modified
2 years, 9 months ago Thu Apr 16 18:21:15 2020 UTC |
marios | |
Log: adm/util/idata/tp.py - In Transition(): - No longer storing the accuracy and refcode embedded in the comment as separate object attributes. Removed attribute names from class-wide list of optional keywords. - Methods accuracy() and refcode() now extract their data on the fly. |
||||
13914 |
Directory Listing |
Modified
2 years, 9 months ago Thu Apr 16 18:14:34 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - In the output of option 'td', function show_transition_details(): - bugfix: Typo in variable name prevented row of experimental data to be printed. - Added column for the accuracy of the TP value, which prints both the label, and its meaning. - A warning is now printed if the offset of hybrid and experimental TPs exceeds the experimental accuracy. adm/docs/manual/examples.tex - In the Ne+8 example, updated the output of the 'td' option on the 45->17 transition when fine-tuning a second time. |
||||
13913 |
Directory Listing |
Modified
2 years, 9 months ago Thu Apr 16 17:33:55 2020 UTC |
marios | |
Log: adm/util/nist/tp.py - Function name change: __get_accuracy_limit() -> get_accuracy_limit(). adm/test/nist/test_tp.py - Updated function name in unit tests. - Now exercising function for all known accuracies. |
||||
13912 |
Directory Listing |
Modified
2 years, 9 months ago Thu Apr 16 17:25:23 2020 UTC |
marios | |
Log: adm/util/register/__init__.py - Added missing modules for 'import *'. |
||||
13911 |
Directory Listing |
Modified
2 years, 9 months ago Thu Apr 16 17:11:36 2020 UTC |
marios | |
Log: adm/util/register/shifts.py - Added functionality to search for transitions involving the levels to be shifted, and to convert their accuracies into limits for the energy shift. If the shift suggested from term bracketing is not consistent with these limits, the user is prompted for a decision on the size of the shift. - Defined functions: - calc_bounds() - dE_hybrid_bounds() - common_shift_bounds() - get_transition_bounds() - get_term_bounds() - adjust_dEnergy() - Modified shift_unregistered_terms() to admit two keyword arguments for the theoretical and experimental transitions datasets. adm/util/register/convert.py - Defined function predict_hybrid_energy(), which tells what the energy of a level will be in the hybrid dataset given the registration of levels and terms done. adm/util/idata/nrg.py - ConfTerms.energy() now checks if the given level indices actually belong to the given term, specified by configuration and term. adm/util/idata/tp.py - Transition.pprt() now prints the keyword without the leading '_', and with the first letter capitalized. adm/test/register - Added directory for testing modules of the register subpackage. adm/test/register/test_shifts.py - Added module to exercise functions of the register.shifts module in unit tests. Currently testing calc_bounds() and common_shift_bounds(). adm/util/io/err.py - Defined function unitt_assert_float() to test the value of a float. The default tolerance may be changed with a keyword argument. adm/adm-shift-unreg-terms.py - Modified CLI to also accept a transition JSON file nickname. This permits searching for experimental counterparts of known accuracy to theoretical transitions of the levels up to be shifted. If any are found, limits are obtained for the energy shifts, and the user is prompted to make a decision on the size of the shift. See comments above to shifts.py. - Removed function read_data(). - No consistency check on the magic number of files is done anymore. |
||||
13910 |
Directory Listing |
Modified
2 years, 9 months ago Thu Apr 16 04:11:05 2020 UTC |
marios | |
Log: adm/util/register/shifts.py - Function name changes: - __get_bracketing_terms_energies() -> get_bracketing_terms_energies() - __get_new_term_energy() -> get_new_term_energy() |
||||
13909 |
Directory Listing |
Modified
2 years, 9 months ago Thu Apr 16 04:09:04 2020 UTC |
marios | |
Log: adm/util/register/shifts.py - In __get_new_term_energy(), report which of the two terms is used to preserve the energy separation from. - Refactored code from shift_unregistered_terms() that carries out the energy shift using registered terms into function bracket_term_shift(). - In shift_unregistered_terms(): - Replaced code for energy shift with call to function bracket_term_shift(). - Now using register.terms.do_shift_term() to carry out the shifting of the term and its levels. Previously, the shifting of term was done regardless of whether all of levels being shifted or not. This functions take that into account before registering a shift in the term data. Also removed the premature call to ConfTerms.shift(), now done in do_shift_term(), if appropriate. |
||||
13908 |
Directory Listing |
Modified
2 years, 9 months ago Thu Apr 16 03:31:35 2020 UTC |
marios | |
Log: adm/util/register/terms.py - Refactored code that updates the energy of the term and its levels into function do_shift_term(). Function now called from shift_term(), original location of code. |
||||
13907 |
Directory Listing |
Modified
2 years, 9 months ago Wed Apr 15 22:27:27 2020 UTC |
fguzman | |
Log: corrected conversion to departure coefficients |
||||
13906 |
Directory Listing |
Modified
2 years, 9 months ago Wed Apr 15 21:22:14 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - bugfix in option 'ur', function update_term(): Experimental indices were deduced after the theoretical ones had been overwritten. Now the code figures out the hybrid and experimental indices before performing any updates. Fixed. |
||||
13905 |
Directory Listing |
Modified
2 years, 9 months ago Wed Apr 15 00:09:33 2020 UTC |
marios | |
Log: adm/util/register/terms.py adm/util/register/shifts.py - Extracted code for shifts of unregistered terms into new module, shifts.py. adm-shift-unreg-terms.py - Updated module import for shift_unregistered_terms(). - Other minor changes. |
||||
13904 |
Directory Listing |
Modified
2 years, 9 months ago Tue Apr 14 20:29:04 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - Defined ConfTerm.term_indices() to identify the list of term indices from one level index. adm/test/idata/test_nrg.py - Added unit tests to exercise the new method. |
||||
13903 |
Directory Listing |
Modified
2 years, 9 months ago Tue Apr 14 20:09:52 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - Modified ConfTerm.dEnergy() to accept the list of term indices as a keyword (optional) argument. Also added keyword to accept a single level index. This has required: - Renaming method __get_term_index() to __get_term_index_by_term_indices() - Introducing method __get_term_index_by_level_index() to handle the single level index calls - Introducing method __get_term_index() as a wrapper between those two methods. - Updating calls in methods shift(), shifted(), and unshift() to use method __get_term_index_by_term_indices(). adm/test/idata/test_nrg.py - Updated unit tests of ConfTerm.dEnergy() using the term indices, and added tests to exercise the method using a level index at a time. |
||||
13902 |
Directory Listing |
Modified
2 years, 9 months ago Tue Apr 14 19:42:54 2020 UTC |
fguzman | |
Log: 1) Correct typo in formula for PS-M20 2) print rates to compare with Nigel mlchng FORTRAN code 3) Sum bnl to obtain total b_n |
||||
13901 |
Directory Listing |
Modified
2 years, 9 months ago Tue Apr 14 18:49:16 2020 UTC |
marios | |
Log: adm/util/register/convert.py - Refactored code in adm-fine-tune.py to convert a theoretical level to an experimental index into function theory_level_to_experm_index(). adm/adm-fine-tune.py - In show_transition_details(), use new function instead of bare code instructions. |
||||
13900 |
Directory Listing |
Modified
2 years, 9 months ago Tue Apr 14 14:38:13 2020 UTC |
marios | |
Log: adm/util/nist/tp.py - Defined function get_acc_num() to convert NIST accuracy flags to floats. adm/test/nist/test_tp.py - Exercised new function in unit tests. |
||||
13899 |
Directory Listing |
Modified
2 years, 9 months ago Tue Apr 14 02:55:39 2020 UTC |
marios | |
Log: adm/util/idata/tp.py - In Transition(): - In init_dataline(), parse the comment with the parser for NIST comments, and store the accuracy and refcode of the transition, if not None. - Defined methods accuracy() and refcode() to access stored values; return value is None, if not stored. adm/test/idata/test_tp.py - Exercise new methods and attributes in unit tests. |
||||
13898 |
Directory Listing |
Modified
2 years, 9 months ago Tue Apr 14 02:35:52 2020 UTC |
marios | |
Log: adm/util/nist/fmt.py - In parse_tp_comment(): Accept as refcodes only those strings that begin with 'T' and are followed by at least one digit. adm/test/nist/test_fmt.py - Add tests to exercise new functionality. |
||||
13897 |
Directory Listing |
Modified
2 years, 9 months ago Tue Apr 14 02:14:21 2020 UTC |
marios | |
Log: adm/util/nist/fmt.py - Defined function parse_tp_comment() to extract the accuracy and refcode from a comment in a Stout-format record of NIST data. adm/test/nist/test_fmt.py - Exercised new function in unit tests. |
||||
13896 |
Directory Listing |
Modified
2 years, 9 months ago Mon Apr 13 21:57:14 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - Added the nickname suffix (the '_02' in '_sorted_02') to the theoretical and experimental 'matched' energy filenames to be read. - Added option to CLI to enter a nickname for the transition JSON data in the theoretical and experimental directories. This permits reading 'tuned' data, as opposed to '_init', when available. - Defined function parse_add_JSON_nick_te_trans() to add the option to CLI. - Changed 'sv' option, function save(), to save 'tuned' transition datasets only when they have been modified. Both the experimental and theoretical transitions are saved when either has been modified. - Option 'td', function show_transition_details() now shows the experimental transition even available, if available, even if neither experimental level is used in the hybrid energy dataset. This permits inspecting how the hybrid TP differs from the experimental. adm/docs/manual/examples.tex - Added subsection "Fine Tuning, again" presenting a detailed evaluation of the hybrid dataset. |
||||
13895 |
Directory Listing |
Modified
2 years, 9 months ago Mon Apr 13 17:55:56 2020 UTC |
marios | |
Log: adm/adm-merge-tp.py - Added command line option to set the nickname of the transitions file. This overrides the default 'init' nickname. - Adjusted matched energies filenames to include the same suffix as the one given on the command line. E.g., if 'sorted_02' is given on the CL, the program will open the 'matched_02' files in the experiment and theory directories. adm/adm-merge-coll.py - bugfix: The script checked for the default ('merged') collision file nickname instead of the energy nickname given on the CL. Now using that. Fixed. adm/util/register/terms.py - Bugfix: shift_interactive() was using the energy of a level, instead of its original energy. When reprocessing a level in a dataset, the shift would be applied on the already-corrected value, not on the original. Now using the original energy. Fixed. - Updated docstring of __get_new_term_energy(). - Minor rearrangement in subtitle printed by insert_missing_terms(). It now reads as "Inserting missing <DB>...", instead of "Inserting <DB> missing..." adm/util/io/nicks.py - Defined function to extract the suffix (e.g., the '_02' from 'sorted_02') from the given nickname, if it matches one of the existing ones. adm/test/io/test_nicks.py - Added tests for the nicks.py module. adm/docs/manual/examples.tex - Added discussion on how to recreate a complete dataset, ready to be evaluated with adm-fine-tune.py. |
||||
13894 |
Directory Listing |
Modified
2 years, 9 months ago Mon Apr 13 14:48:29 2020 UTC |
marios | |
Log: adm/util/register/terms.py - In shift_unregistered_terms(), sort terms by their original energy. - In __get_bracketing_terms_energies(): - Now admits as an argument the sorted list of terms, so that it doesn't redo the sorting every time it is called. - Converted debugging statements into table of matched/shifted terms to give the user a better sense of what the bracketing algorithm does. - The table of terms now lists the final (experimental) term energy, too. It also highlights the term to be matched by prepending stars, '***'. adm/docs/manual/examples.tex - Added tables of terms to the output of adm-shift-unreg-terms.py in the Section of level registration. - Added new Section 'Shifting of unregistered terms, again' discussing the choices on term shifting following the step of fine-tuning. |
||||
13893 |
Directory Listing |
Modified
2 years, 9 months ago Mon Apr 13 13:32:42 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - Defined ConfTerms.matched_with() to get the list of levels against which the term has been matched. adm/util/register/report.py - Updated show_term_registration() to use the new method. |
||||
13892 |
Directory Listing |
Modified
2 years, 9 months ago Sun Apr 12 16:46:09 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - bugfix in inner function reset_term_levels() of update_term(), option 'ur': Theory level indices were used instead of those passed to the function, which led to crashes. Now the given indices are used. Fixed. - Now storing a pristine copy of the experimental transitions. - In option 'sv', function save(): - Updated to also store the experimental transitions, even though they have not been changed. This derives from a desire to use the same nicknames for all datasets at the same processing stage. - bugfix: Messages that datasets were written when they had not changed. Modified the if-statements to check for inequality instead. Fixed. - Added a check that the experimental transitions have not changed. If so, a warning is issued, but the saving of datasets proceeds. adm/docs/manual/examples.tex - Added discussion on unregistering terms on adm-fine-tuning.py, and saving JSON datasets for further processing. |
||||
13891 |
Directory Listing |
Modified
2 years, 9 months ago Sun Apr 12 03:50:39 2020 UTC |
marios | |
Log: adm/docs/manual/examples.tex - Furthered discussion on high levels in the theoretical model that involve transitions with large correction factors. - Updated UI of adm-fine-tune.py. adm/adm-fine-tune.py - bugfix in show_transition_details(): Experimental splitting was reported using theory level indices. Fixed. |
||||
13890 |
Directory Listing |
Modified
2 years, 9 months ago Sun Apr 12 02:04:35 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - Implemented option 'li', in function show_indices(), which shows the correspondence between the level indices of the three datasets. |
||||
13889 |
Directory Listing |
Modified
2 years, 9 months ago Sat Apr 11 21:48:28 2020 UTC |
marios | |
Log: adm/docs/manual/adm-macros.tex - Changed the definition of \config{} to be rendered in math mode. - Defined macros \nameTerm, \nameTermOdd, \nameLevel, and \nameLevelOdd to standardize how the combination of configuration and term / level should appear, including the spacing between them. They are all rendered in math mode. adm/docs/manual/examples.tex - Replaced calls to \config{} followed by \specTerm*{} or \specLevel*{} with the equivalent \name*{} macro. |
||||
13888 |
Directory Listing |
Modified
2 years, 9 months ago Sat Apr 11 15:06:44 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - bugfix in option 'br', function show_branching ratios(): Theoretical transitions are no longer an instance of the JoinedTransitions() class. This caused crashes on validation. Validation checks are now done against the Transitions() class. Fixed. - In the output of option 'td', function show_transition_details(): Put the multipole order in parentheses, as in the output of the 'lt' option. adm/docs/manual/examples.tex - Updates to current interface. - Some text clarifications on fine-tuning. |
||||
13887 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 10 23:57:31 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - Minor changes to user menu. |
||||
13886 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 10 23:47:02 2020 UTC |
marios | |
Log: adf042stout.py - Ignore transitions (both radiative and collisional) whose radiative probability is '1.00-30'. Previously, only the radiative transition was ignored, but its associated collisional data were still used in the .coll file. |
||||
13885 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 10 23:32:47 2020 UTC |
marios | |
Log: Undo commit r13884. Discarding of transitions with TP of '1.00-30' will be done by adf042stout.py. |
||||
13884 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 10 22:55:39 2020 UTC |
marios | |
Log: adm/util/adas/adas.py - Defined function is_TP_zero(), which checks if the TP listed on ADAS is 0. ADAS reports 0 probabilities as having a value of 1e-30. adm/test/adas/test_adas.py - Exercised new function in unit tests. |
||||
13883 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 10 22:20:40 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - Modified option 'sv', function save(), to also save the theoretical and hybrid transitions. If no changes have been made, no output is created. The function monitors the changes by comparing datasets to their untuned states. - bugfix in fine_tune(): Level connected for hybrid levels was set after the energies data had been copied to the placeholder for untuned data. This caused the possibly-tuned and untuned datasets to compare different, even when no changes were made. Postponed saving the untuned dataset until after the connectedness is set. Fixed. |
||||
13882 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 10 21:47:43 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - In the output of option 'td', inner function prt_table_row() of show_transition_details(), print the multipole order in parentheses, if it is a custom order. |
||||
13881 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 10 21:43:14 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - Modified option 'rt', reset_tran(), to also restore the theoretical data for a transition to its untuned state. A copy of the theoretical transition data must now be saved prior to tuning. |
||||
13880 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 10 21:15:47 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - Fleshed out stub function update_tran(). The function skips updates to experimental transitions. For theoretical transitions, it permits removing the custom order(), and if the order index or the energy splitting has changed, it proceeds to update the TP correction factor. - bugfix in reset_tran(): There was no check that the requested transition exists, which led to crashes when it didn't. Changed the logic to do that check before restoring the data for this transition to their untuned state. adm/util/idata/tp.py - Defined Transition.unset_custom_order(). - In Transitions.replace(): Store a new Transition() object in the dataset, which contains a copy of the data of the given object. adm/test/idata/test_tp.py - Exercised new method in unit tests. |
||||
13879 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 10 18:30:29 2020 UTC |
marios | |
Log: adm/util/idata/tp.py - bugfix in Transitions.__eq__(): There was no check that the object had the '_order' property before comparing its value against the given. (By that point it is known that either both have it, or neither does.) Added check. Fixed. |
||||
13878 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 10 18:27:32 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - Use new copy() methods of the Energies(), JoinedEnergies(), and JoinedTransitions() classes, instead of reading the JSON file anew. |
||||
13877 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 10 18:20:22 2020 UTC |
marios | |
Log: adm/util/idata/tp.py - Defined Transition.__eq__() for object comparisons. - In Transitions, defined copy() and __eq__() methods. - The implementation allows for these methods to be inherited by JoinedTransitions(). adm/test/idata/test_tp.py - Exercised new methods in unit tests. |
||||
13876 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 10 17:46:34 2020 UTC |
marios | |
Log: adm/util/idata/tp.py - In Transition(), moved the copy() method before export_dict(). |
||||
13875 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 10 17:25:15 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - In Energy(): - In copy(), now using the MixedState.copy() method, instead of coupling its export_dict() and import_dict() methods. - Defined __eq__() method. - In Energies(): - Defined methods copy() and __eq__(). - The methods have been designed so that JoinedEnergies() can inherit them without having to overload them. adm/test/idata/test_nrg.py - Exercised new methods in unit tests. - Renamed test_Energy_copy() to test_Energy_copy__eq__(). Comparison is carried out with the new __eq__() method, instead of the custom function __compare_Energy_objects(). |
||||
13874 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 10 16:45:06 2020 UTC |
marios | |
Log: adm/util/idata/state.py - bugfix in OneState(): Tuple of required keywords did not include the percentage ('_pct'), which led some comparisons of equality to fail. Added property. Fixed. |
||||
13873 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 10 16:11:34 2020 UTC |
marios | |
Log: adm/util/idata/state.py - bugfix in OneState(): Incomplete copy in copy() method. Optional keywords were used (created by methods other than init()), but not registered in a class-wide tuple, conventionally named 'optional_keywords'. copy() operated only on the tuple of 'required_keywords', thereby missing the additional fields. Defined class-wide tuple, and adjusted copy() to operate on these, too. Fixed. - bugfix in OneState(): Incomplete comparison of __eq__() method for the same reasons as copy(). Adjusted method to operate on 'optional_keywords' fields as well. Fixed. |
||||
13872 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 10 15:40:31 2020 UTC |
marios | |
Log: adm/util/idata/state.py - Defined methods copy() and __eq__() in both OneState() and MixedState() classes. - Removed unnecessary imports. adm/test/idata/test_state.py - Exercised new methods in unit tests. |
||||
13871 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 10 02:31:46 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - In class ConfTerm(): - Defined equality operator (method __eq__()) to directly compare two objects of the class. - In class ConfTerms(): - Defined copy() method, which performs a deep-copy of the data of a given object into the current one. - Defined equality operator (method __eq__()) to directly compare two objects of the class. - In class Groups(): - Same as in ConfTerms(): Defined methods copy() and __eq__(). adm/test/idata/test_nrg.py - Added unit tests to exercise new ConfTerm(), ConfTerms(), and Groups() methods. |
||||
13870 |
Directory Listing |
Modified
2 years, 9 months ago Fri Apr 10 01:14:51 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - In class ConfTerm(): - Defined method copy(), which performs a deep-copy of the data of a given object into the current one. - bugfix in partition(): The original _dEnergy data were not removed before adding an energy shift for each new term (list of indices). The list of shifts ended up having N+1 entries, where N is the number of list of level indices associated with that combination of configuration and term. Now the list of shifts is reset to an empty list before a shift per term is added. Fixed. adm/test/idata/test_nrg.py - Exercised new method, ConfTerm.copy(), in unit tests. |
||||
13869 |
Directory Listing |
Modified
2 years, 9 months ago Thu Apr 9 22:41:50 2020 UTC |
marios | |
Log: adm/util/idata/tp.py - Modified Transitions() method name copy() to copy_tran(). adm/adm-ingest-data.py adm/adm-merge-tp.py adm/test/idata/test_tp.py - Updated calls to new method name. |
||||
13868 |
Directory Listing |
Modified
2 years, 9 months ago Thu Apr 9 22:31:17 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - Modified method names: - Energies.copy() -> Energies.copy_level() - JoinedEnergies.copy() -> JoinedEnergies.copy_level() adm/adm-fine-tune.py adm/adm-ingest-data.py adm/adm-sort-nrg.py adm/util/register/levels.py - Updated to new method names, copy_level(). |
||||
13867 |
Directory Listing |
Modified
2 years, 9 months ago Thu Apr 9 22:04:21 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - Modified function reset_level() to reset a level to its untuned values for the theoretical and experimental datasets, in addition to the hybrid. - Now reading theoretical and experimental datasets into Energies() and Transitions() objects, not their Joined*() counterparts. - Variable name changes: "_original" suffix changed to "_untuned". E.g., trans_original -> trans_untuned. This aims to avoid confusing these datasets with the 'original' JSON data, e.g., 'energies_original.json', which record the state of the data immediately after reading them in from Stout files. - In convert_hybrid_index_to_theory(), report conversion to hybrid only if successful. |
||||
13866 |
Directory Listing |
Modified
2 years, 9 months ago Thu Apr 9 20:30:34 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - In do_tune(): - Partitioned the menu in inner function show_menu() into commands relevant to Levels, Transitions, and Execution Flow for more clarity. - Added option 'h', as an alternative to 'm' for showing the menu. - In show_levels(), removed commented-out implementation of output. |
||||
13865 |
Directory Listing |
Modified
2 years, 9 months ago Thu Apr 9 20:11:25 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - Absorbed option 'ln' into 'ld'. - Extended user interface in show_level_details() so that, in addition to accepting a level index and 'q', a level (e.g., '1s.2s 1S<0>') is also accepted. The conversion to an index in the latter case, is done with code that used to be part of show_level_details_by_name(). - Removed function show_level_details_by_name(). - Removed menu option 'ln', which used to call show_level_details_by_name(). |
||||
13864 |
Directory Listing |
Modified
2 years, 9 months ago Thu Apr 9 19:41:35 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - In update_term(), allowed for term selection by configuration and term. - Refactored code for selecting level indices into inner function, select_by_indices(). - Defined inner function select_by_term() which asks for a configuration and term pair, and figures out the level indices from that information. If multiple terms exist for that Conf/Term, the user is asked to pick a term by its levels. - The user is prompted to decide how to define the term: by giving a list of level indices, or by providing a configuration and term. |
||||
13863 |
Directory Listing |
Modified
2 years, 9 months ago Thu Apr 9 17:55:54 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - bugfix in convert_hybrid_range_to_theory(): Theoretical level indices of None were allowed, which caused the first instruction to use them to crash. Now, before appending a theory index to the list of indices, its value is checked against None. Fixed. - Fleshed out stub function update_level(). - The energy of the hybrid level is now set, as before, to the arbitrary energy value provided by the user, but its 'matched' and 'shifted' properties are removed first. (The 'shifted' property is reset with the energy update.) - The theoretical energy is also updated, in the exact same way. - The experimental energy has its 'matched' and 'shifted' properties removed, and no energy update is performed. - Defined option 'ur', which calls the new function update_term(), to reset the chosen term to its pre-matching state. The term is identified by its constituent levels. For each dataset, the term is set as unshifted in ConfTerms() dataset, while its levels are each unmatched and unshifted. adm/util/idata/nrg.py - In ConfTerms(): - In method energies(), check that the energies are set before checking its number of levels. - Defined method cterm_by_indices() to pick out a term identified by a list of indices. adm/test/idata/test_nrg.py - Exercised new ConfTerms.cterm_by_indices() method in unit tests. |
||||
13862 |
Directory Listing |
Modified
2 years, 9 months ago Thu Apr 9 01:07:02 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - The save option ('sv') now also saves the theory and experimental energy data. |
||||
13861 |
Directory Listing |
Modified
2 years, 9 months ago Wed Apr 8 21:06:20 2020 UTC |
marios | |
Log: adm/util/prun.py - bugfix: Do not use subprocess.check_output only for versions older than 3.5. The function has been replaced with run() as of v3.5, but is still available on the API. The check for older versions has been removed. Fixed. |
||||
13860 |
Directory Listing |
Modified
2 years, 9 months ago Wed Apr 8 18:59:16 2020 UTC |
marios | |
Log: adm/util/fs.py - Updated class JSON() to not overwrite existing files. - Refactored code that produces the full path to a JSON file into method get_file_path(). - Defined method unique_nickname() to generate a unique nickname. If the given nickname corresponds to a file that exists, it is appended with "_<num>", where the number is incremented until it a non-existing filename can be produced. - Refactored method pathname() to use these new methods. It also admits a new keyword argument, unique, which controls whether a unique file will be produced. - Updated method save() to always write to a unique file name (a new file). Method read() on the other hand, always reads from the file name and nick name with which it is called -- it makes no sense to read from a new file! adm/test/test_fs.py - Exercised new methods in unit tests. - Added unit tests to exercise methods JSON.save() and .read(). - Refactored call to os.remove() as an inner function, __rm_file(). |
||||
13859 |
Directory Listing |
Modified
2 years, 9 months ago Tue Apr 7 14:00:45 2020 UTC |
fguzman | |
Log: corrected energy term in PS20 equations |
||||
13858 |
Directory Listing |
Modified
2 years, 9 months ago Mon Apr 6 21:58:27 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - Defined function save(). It currently saves the (possibly modified) hybrid energy dataset, bearing the nickname 'tuned'. - This used to be done by default at the end of all processing. Now it can only be done with the newly-added menu option: 'sv'. |
||||
13857 |
Directory Listing |
Modified
2 years, 9 months ago Mon Apr 6 21:40:31 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - Changes in the format of option 'ld', show_level_details(). |
||||
13856 |
Directory Listing |
Modified
2 years, 10 months ago Sat Apr 4 16:44:41 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - For the output of option 'll', function show_levels(), use function show_level_registration() of util.register.report, instead of showing the Stout-format records for each of the hybrid, theory, and experiment datasets. adm/util/register/report.py - Change column headers of both show_level_registration() and show_term_registration() to clarify that the energy reported is the original theoretical energy of the level. - In show_level_registration(), omit '.0' from reported J values. adm/docs/manual/examples.tex - Update to new output of option 'll'. |
||||
13855 |
Directory Listing |
Modified
2 years, 10 months ago Sat Apr 4 04:44:01 2020 UTC |
marios | |
Log: adm/docs/manual/man.tex - Fix typo in epigraph. |
||||
13854 |
Directory Listing |
Modified
2 years, 10 months ago Fri Apr 3 21:27:26 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - In the output of option 'ld', function show_level_details(), report the experimental level with which a theoretical level has been matched. - In show_branching_ratios(): - Bugfix: Theoretical level indices deduced from hybrid ones were allowed to be flipped, i.e., the lower to exceed the upper index. Fixed. - Reworked the format of the output table. Changed column headings, and width of printed fields. adm/docs/manual/examples.tex - Expand discussion on the singlet levels 30 and 31 by including the changes to their branching ratios due to registration. |
||||
13853 |
Directory Listing |
Modified
2 years, 10 months ago Fri Apr 3 19:11:33 2020 UTC |
marios | |
Log: adm/docs/manual/examples.tex - Updated description of command adm-register-terms. - Created new section for command adm-shift-unreg-terms. - Moved section on term-by-term-only registration in between the two above. - Corrected output of adm-registration-summary. The previous one was showing output of a dataset that was processed beyond what was reported in the manual. - Added Section on "Collision Data Synthesis" before the visualization step, reflecting the work flow change in r13843. - In Section 'Visualization': - Updated the output of adm-visualize.py. Now showing that only scatter plots need be produced at first. - Fell back to old plots, so that the manual can tell the story of why and how we make our registration decisions. - Added Section 'Fine Tuning'. It goes over the processing of the hybrid dataset, and discusses our logic for what to do next. Currently incomplete. - Added Section 'Final Visualization', as a temporary placeholder for the detailed Veusz plots. Will likely change. adm/docs/manual/images/TP-updates-adas-error.pdf - Fall back to old plot, to tell the story of why we need to fine tune the energies. adm/adm-registration-summary.py - bugfix: Matched theory energy dataset was read, not the one intended by the user. Fixed. adm/util/register/terms.py - In shift_unregistered_terms(), capitalized title. |
||||
13852 |
Directory Listing |
Modified
2 years, 10 months ago Fri Apr 3 17:07:40 2020 UTC |
marios | |
Log: adm/docs/manual/algorithm.tex - Updated Section on 'Level Registration' to include a discussion on the need to shift unregistered theoretical terms. adm/docs/manual/adm-macros.tex - Added macro definition for the adm-shift-unreg-terms.py script. adm/docs/manual/images/adm-flowchart-registration-shift-with-summary.pdf - Added flowchart of the level registration process that includes all the possible steps. |
||||
13851 |
Directory Listing |
Modified
2 years, 10 months ago Fri Apr 3 16:04:26 2020 UTC |
marios | |
Log: adm/adm-shift-unreg-terms.py - Added script to carry out the shifting of unregistered terms separately. adm/adm-register-terms.py - Refactored the shifting of unregistered terms into script above. The present script only handles the registration of homologous terms. adm/util/io/nicks.py - Added nickname for output of new script, indicating that it involves shifted terms. |
||||
13850 |
Directory Listing |
Modified
2 years, 10 months ago Fri Apr 3 15:51:29 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py adm/util/nist/tp.py adm/util/register/terms.py - Stop preventing a newline from being printed in calls to log.warn(). |
||||
13849 |
Directory Listing |
Modified
2 years, 10 months ago Fri Apr 3 15:08:56 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - Renamed method Energy.reset_matched() to .unset_matched() to be in line with other unset methods. adm/util/register/levels.py adm/util/register/terms.py adm/test/idata/test_nrg.py - Updated calls to new method name. |
||||
13848 |
Directory Listing |
Modified
2 years, 10 months ago Fri Apr 3 03:46:54 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - Function show_terms() no longer prints the title of function show_term_registration(). - Modified show_transition_details() to produce a table in the style of that produced by show_level_details(). - Modified show_transitions() to report the energy ratio involved in the calculation of the correction factor. This column can be manipulated like the other columnds (e.g, can be sorted, can have limits applied to it, etc). adm/util/idata/tp.py - In Transition(): - set_TP_correction() now stores the energy ratio given to the method. - Defined method dEnergy_ratio() to access saved value. - Added attribute '_dEnergy_ratio' to the list of optional keywords. adm/util/register/report.py - In show_level_registration(): Added keyword arguments to enable reporting a level's connectedness, and to disable the display of the title of the function. - In show_term_registration(): Added keyword argument to disable the display of the title of the function. |
||||
13847 |
Directory Listing |
Modified
2 years, 10 months ago Thu Apr 2 16:06:58 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - Upon startup, the hybrid dataset is processed to set the connected of each level. This uses both the radiative and collisional transition datasets. Defined function set_hybrid_connectedness() for that purpose. This need to set the hybrid levels' connectedness is what prompted the work flow change in r13843. - Updated show_terms() to use function show_term_registration() of util.register.report. - Defined helper functions convert_hybrid_index_to_theory() and convert_hybrid_range_to_theory(). - Modified show_level_details() to present details of a level in all datasets (i.e., hybrid, theory, experiment). |
||||
13846 |
Directory Listing |
Modified
2 years, 10 months ago Thu Apr 2 15:08:41 2020 UTC |
marios | |
Log: adm/adm-registration-summary.py - Refactored functions show_level_registration() and show_term_registration() into module register.report. adm/util/register/report.py - Functions refactored from adm/adm-registration-summary.py. - They have been given keyword arguments to set the range of level indices (inclusive) that will be reported. Terms containing any levels within that range are reported. |
||||
13845 |
Directory Listing |
Modified
2 years, 10 months ago Thu Apr 2 01:56:33 2020 UTC |
marios | |
Log: adm/adm-merge-coll.py - Refactored copy_dataset() to use the theory_index_to_merged_index() function of util.register.convert instead of local equivalent get_joined_level(). The latter has been removed. adm/docs/manual/algorithm.tex - Clarified discussion on need to include resonances for accurate updates to collision strenghts in Section on 'Collision Data Synthesis'. |
||||
13844 |
Directory Listing |
Modified
2 years, 10 months ago Wed Apr 1 21:20:16 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - In show_levels(), the levels of an experimental term by which a theoretical term has been shifted are now also printed. (Blank lines were printed previously.) - In show_level_details(), output format changes to ease reading of a level's details. - Some experimental level details are shown for a level that has been registered, including any known notes (e.g., from NIST). This requires fetching the table of notes from NIST when setting up the program. adm/util/idata/nrg.py - Refactored code in Energies.register_level_print() to print notes (from NIST, at this point) on the energy level as method Energy.prt_notes(). The length of each note (in characters), and of the indentation (if more than one line is printed) are now set as keyword arguments with default values those they had in Energies.register_level_print(). |
||||
13843 |
Directory Listing |
Modified
2 years, 10 months ago Wed Apr 1 21:02:49 2020 UTC |
marios | |
Log: adm/adm-merge-coll.py - Bugfix in copy_dataset(): Transition indices were not checked to be in ascending order (lower level index before upper level index). This led to crashes when theoretical levels had flipped in the hybrid dataset. The code now reorders flipped indices. Fixed. - Now saving the updated collisions file with the same nickname as in the input energy file. adm/docs/manual/algorithm.tex - Updated Chapter 2, 'Algorithm'. - Updated flowchart to show that the collisions are now treated before the inspection is carried out. - Updated Section on NIST data to discuss how we now set the connectedness of each level based on its radiative and collisional transitions. - Updated Section on Level Registration to include its Figure along with the text (it was shown a few pages later after the changes above). - Now Section on 'Collision Data Synthesis' appears before Section on 'Data Inspection / Correction'. - Minor updates to the text of both of these sections. adm/docs/manual/images/adm-flowchart-vertical-sections-setup-collision.pdf - Added new flowchart for the logical flow of the package. |
||||
13842 |
Directory Listing |
Modified
2 years, 10 months ago Wed Apr 1 20:15:54 2020 UTC |
marios | |
Log: adm/adm-ingest-data.py - Refactored code that sets the connectedness of each level in an energy dataset as function set_connectedness() in the new unified.py module below. - Updated script changelog (including changes from r13828). adm/util/idata/unified.py - Added script, containing only one function, set_connectedness(), refactored from adm-ingest-data.py. adm/util/idata/__init__.py - Listed new module for 'import *'. |
||||
13841 |
Directory Listing |
Modified
2 years, 10 months ago Wed Apr 1 18:55:24 2020 UTC |
fguzman | |
Log: calculate effective recombination probabilities and critical densities in iso_solve.cpp |
||||
13840 |
Directory Listing |
Modified
2 years, 10 months ago Wed Apr 1 18:36:38 2020 UTC |
fguzman | |
Log: This branch is created to implement a functionality that writes caseB SH95 files |
||||
13839 |
Directory Listing |
Modified
2 years, 10 months ago Wed Apr 1 14:10:35 2020 UTC |
marios | |
Log: adm/adm-registration-summary.py - Small changes on the output of the term registration table: - Changed last column to 'Matched/Shifted' from 'Matched'. Matched terms are now designated with 'm:', while shifted term with 's:'. - Dropped the '.0' from the reported Jtot values. adm/docs/manual/adm-macros.tex - Added macro for adm-registration-summary.py. adm/docs/manual/images/adm-flowchart-registration-with-summary.pdf - Added figure for the logical sequence of level and term registration that includes the possible use of the new command, adm-registration-summary.py. adm/docs/manual/algorithm.tex - In Chapter 'Algorithm', Section 'Level Registration': - Now using updated figure for the registration, that includes the summary review. - Brief discussion of the new utility. adm/docs/manual/commands.tex - Added Section for the new command, adm-registration-summary.py. adm/docs/manual/examples.tex - Added example use of new command in the context of the registration of the Ne+8 model. |
||||
13838 |
Directory Listing |
Modified
2 years, 10 months ago Wed Apr 1 00:00:51 2020 UTC |
marios | |
Log: adm/adm-registration-summary.py - Added utility to show a summary of the registration, both for levels and terms. adm/util/io/log.py - Defined _nchars_underline() to calculate the correct number of characters to use when underlining a string, taking into account tabs. - Used in title() and subtitle(). |
||||
13837 |
Directory Listing |
Modified
2 years, 10 months ago Tue Mar 31 21:37:56 2020 UTC |
marios | |
Log: adm/adm-merge-tp.py - In update_theory_tran(): Expanded debugging information. |
||||
13836 |
Directory Listing |
Modified
2 years, 10 months ago Tue Mar 31 21:21:49 2020 UTC |
fguzman | |
Log: added branch in CS_l_mixing_PS64_expI() for PSM20. Still need testing |
||||
13834 |
Directory Listing |
Modified
2 years, 10 months ago Tue Mar 31 17:44:23 2020 UTC |
marios | |
Log: adm/adm-ingest-data.py - In finalize_ingest_nrg(): Issue warning without suppressing a new line character. adm/util/idata/nrg.py - In Energies(): Copy level using the native Energy.copy() method, instead of copy.deepcopy(). |
||||
13833 |
Directory Listing |
Modified
2 years, 10 months ago Mon Mar 30 23:37:30 2020 UTC |
marios | |
Log: adm/util/register/viz.py - Bugfix: In prepare_TP_scatter_data(), joined indices were reversed when out of order, overwriting the correspondence between the theoretical and merged upper level indiced. Now joined indices are stored in temporary variables, which are used for preparing the data (including reordering). Fixed. - bugfix: In create_TP_updates_datafile(), an empty line was written between successive records; a remnant from when the output file was written with a call to open(), instead of with fs.write_file(). Removed extra '\n'. Fixed. |
||||
13832 |
Directory Listing |
Modified
2 years, 10 months ago Mon Mar 30 17:22:25 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - In show_transitions(), option 'lt': Added option to order transitions in ascending order for any of the columns that can be sorted. Only descending (largest-to-smallest) sorting was possible previously. |
||||
13831 |
Directory Listing |
Modified
2 years, 10 months ago Sun Mar 29 19:38:34 2020 UTC |
marios | |
Log: adm/util/io/log.py - In __proc_cline_args(): Remove the path of the program, if it appears at the beginning of the command line. This is needed because most of the command line is replaced with blanks, if the command, say, sends its output to /dev/null. - In warn(): Remove the blank line before the warning is issued. |
||||
13830 |
Directory Listing |
Modified
2 years, 10 months ago Sun Mar 29 19:04:24 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - ConfTerms.prt_levels() now uses the same interface as with the level-matching interface: Energies.register_level_print(). - Energies.register_level_print() now issues a warning when the level is not connected to other levels through radiative and/or collisional transitions. |
||||
13829 |
Directory Listing |
Modified
2 years, 10 months ago Sun Mar 29 18:57:21 2020 UTC |
marios | |
Log: adm/adm-visualize.py - Ask for user input before generating any plots. |
||||
13828 |
Directory Listing |
Modified
2 years, 10 months ago Fri Mar 27 23:11:15 2020 UTC |
marios | |
Log: adm/adm-ingest-data.py - Modified ingest_tp() and ingest_coll() to return the datasets just ingested. - Now creating the 'initial' energies JSON file after the .tp and .coll data are processed. - Defined function finalize_ingest_nrg() that operates on all datasets, counts the number of radiative and collisional transitions to and fro a level, and sets the level 'connectedness' accordingly. At the end of the process it produces the 'initial' energies file. adm/docs/manual/examples.tex - Updated the output of adm-ingest-data.py, and discussed the new logic. |
||||
13827 |
Directory Listing |
Modified
2 years, 10 months ago Fri Mar 27 23:00:20 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - In Energy(): - Defined methods set_connected(), unset_connected(), and connected() to create, delete, and access a new '_connected' attribute, which holds a boolean value indicating whether the level has any radiative and / or collisional transitions to other levels. - In JoinedEnergies(): - Overloaded method copy(). It uses the parent (Energies) copy method, but then also calls the unset_connected() method on the Energy() object just created. adm/util/idata/tp.py - Modified Transitions.ntrans_level() to return two integers, not explicitly a tuple of these same variables. adm/util/idata/coll.py - In CollisionBlock(): - Added method ncolls_level() to count the number of collisions to and fro the given level. - In Collisions(): - Added method ncolls_level() to count the number of collisions to and fro the given level. It reports the cumulative transitions over all its blocks. Similar in spirit to Transitions.ntrans_level(). adm/test/idata/test_nrg.py adm/test/idata/test_coll.py - Exercised new methods in unit tests. |
||||
13826 |
Directory Listing |
Modified
2 years, 10 months ago Thu Mar 26 18:02:56 2020 UTC |
marios | |
Log: adm/util/register/levels.py - Variable name changes: *level -> *index. |
||||
13825 |
Directory Listing |
Modified
2 years, 10 months ago Thu Mar 26 10:04:23 2020 UTC |
marios | |
Log: adm/util/types.py - Defined function is_int_notneg() to test if an int is >= 0. adm/util/chtypes.py - Defined function validate_int_notneg() to make sure that an int >= 0, or exit to the system. adm/test/test_types.py adm/test/test_chtypes.py - Exercised new functions in unit tests. |
||||
13824 |
Directory Listing |
Modified
2 years, 10 months ago Thu Mar 26 09:27:01 2020 UTC |
marios | |
Log: adm/util/idata/tp.py - Defined Transitions.ntrans_level() to count the number of transitions from and into the given level. adm/test/idata/test_tp.py - Exercised new method in unit tests. - bugfix: Test for method hi_levels() was written but not exercised. Fixed. |
||||
13823 |
Directory Listing |
Modified
2 years, 10 months ago Wed Mar 25 20:13:09 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - Modified the output of option 'ld' to show only important information, not just print the internal data of the level in the hybrid and input datasets. Changes in show_level_details(): - Now it presents only the level name and energy, along with the energy change for matched levels, and the energy shift for levels that have been modified with their term as a whole. - The function has been changed so that it is possible to view more levels without falling back to the main menu and reissuing the command. adm/util/idata/tp.py - bugfix: In Transitions.pprt(), index validation was using the upper level index twice. Now using both the lower and the upper index. Fixed. |
||||
13822 |
Directory Listing |
Modified
2 years, 10 months ago Wed Mar 25 16:40:03 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - Implemented option to select a level by its name, i.e., its electronic configuration and spectroscopic level. The option is 'ln', which calls show_level_details_by_name(). - bugfix: show_levels() reported the original level index for the hybrid dataset, instead of the current index therein. Fixed. |
||||
13821 |
Directory Listing |
Modified
2 years, 10 months ago Wed Mar 25 15:18:38 2020 UTC |
marios | |
Log: adm/util/io/ui.py - Added function readline() to return user input as a string. The function is a wrapper around the module-private __get_user_input() function. adm/test/io/test_ui.py - Exercised new function in unit tests. |
||||
13820 |
Directory Listing |
Modified
2 years, 10 months ago Wed Mar 25 14:40:38 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - Improved interface to the 'lt' (list transitions) option: - Transitions that have been replaced with experimental data are no longer listed with a correction factor. Instead, that column is left blank, the '=' is replaced with '->', and the database name appears within '[]' in the last column. If the transition occurs only in the experimental dataset, the theoretical TP, correction, and '=/->' columns are left blank, and the hyrbid TP is printed followed by the database name and the keyword 'only' in '[]'. - Now the user has the option to see the transitions that come from a level, and into a level separately, as well as both subsets. - Added title to the table of output results. |
||||
13819 |
Directory Listing |
Modified
2 years, 10 months ago Tue Mar 24 23:14:59 2020 UTC |
marios | |
Log: adm/util/register/viz.py - Now generating separate plots of the TP updates for hybrid transitions taken from NIST, and adjusted from ADAS. Subset datasets now produced by: - prepare_TP_scatter_data() - get_TP_updates_filenames() - Now using fs.write_file() instead of writing files with open in: - create_energy_updates_datafile() - create_energy_scatter_gnufile() - create_TP_updates_datafile() - create_TP_scatter_gnufile() adm/docs/manual/examples.tex - Added new plots of TP updates separated in transitions coming from ADAS and NIST. Expanded discussion. - Updated output of adm-visualize.py. adm/docs/manual/images/TP-updates-error.pdf adm/docs/manual/images/TP-updates.pdf - Removed old TP scatter plots. adm/docs/manual/images/TP-updates-adas-error.pdf adm/docs/manual/images/TP-updates-adas.pdf adm/docs/manual/images/TP-updates-nist-error.pdf adm/docs/manual/images/TP-updates-nist.pdf - Added TP scatter plots separated in NIST and ADAS transitions. |
||||
13818 |
Directory Listing |
Modified
2 years, 10 months ago Tue Mar 24 21:07:51 2020 UTC |
marios | |
Log: adm/adm-fine-tune.py - bugfix: Call of Energy.new_dataline() did not specify a level. Now using None. Fixed. - show_level_inverse_lifetimes() has been augmented to permit sorting by any of the columns shown on output: level index, merged TP, theory TP, and their ratio. - Call to fs.set_execpath() added before call to main() to sanitize paths on output. |
||||
13817 |
Directory Listing |
Modified
2 years, 10 months ago Tue Mar 24 17:33:03 2020 UTC |
marios | |
Log: adm/docs/manual/adm-macros.tex - Added macro for the adm-visualize command. - Updated macros \specTermOdd and \specLevelOdd. adm/docs/manual/algorithm.tex - Added discussion of adm-visualize role. adm/docs/manual/commands.tex - Added description of adm-visualize command. adm/docs/manual/examples.tex - Added example of use of adm-visualize. adm/docs/manual/images/adm-flowchart-inspection.pdf - Updated plot to include adm-visualize as a script to run. adm/docs/manual/images/energy-updates.pdf adm/docs/manual/images/term_1s_2p_3Po.pdf adm/docs/manual/images/term_1s_5g_3G.pdf adm/docs/manual/images/TP-updates-error.pdf adm/docs/manual/images/TP-updates.pdf adm/docs/manual/images/tran_FS_1s_2p_3Po.pdf adm/docs/manual/images/tran_FS_1s_5g_3G.pdf adm/docs/manual/images/tran_mult_1s_3d_1D__to__1s_3d_3D.pdf adm/docs/manual/images/tran_mult_1s_3d_3D__to__1s_2p_3Po.pdf - Added plots |
||||
13816 |
Directory Listing |
Modified
2 years, 10 months ago Tue Mar 24 16:39:52 2020 UTC |
marios | |
Log: adm/util/register/viz.py - Bugfix: In set_tran_labels_TP(), the theoretical transition was printed instead of the hybrid for transitions that involve no TP correction. Fixed. |
||||
13815 |
Directory Listing |
Modified
2 years, 10 months ago Tue Mar 24 16:21:49 2020 UTC |
marios | |
Log: adm/util/register/viz.py - Bugfix: In the transition updates file, the hybrid TP was printed without application of the relevant correction. For transitions that were not replaced with NIST data, this resulted in scatter plots of the theory vs. hybrid TP looking nearly diagonal. The correction is now applied, leading to more realistic plots. Fixed. - Changed the output of TP error plots to show all data, not just those with theoretical TP >= 1. Also changed the legends to use 'TP' (as in the axis) as opposed 'A' -- this was deemed confusing. |
||||
13814 |
Directory Listing |
Modified
2 years, 10 months ago Tue Mar 24 14:51:52 2020 UTC |
marios | |
Log: adm/util/register/viz.py - Defined _validate_angle() to accept both float and int for the angle of a label. - Renamed: create_term_plots() -> create_term_FS_plots(). - bugfix: In set_tran_labels_TP(), the label for the hybrid TP was being appended before it was created. - Added keyword 'is_broken' to prepare_tran_labels() to help distinguish between plots that involve a broken axis (multiplets) from those that do not (FS transitions). - Changed axes labels in scatter plots: new -> hybrid, old -> theory. adm/adm-visualize.py - Updated call to viz.create_term_FS_plots(). |
||||
13813 |
Directory Listing |
Modified
2 years, 10 months ago Tue Mar 24 03:35:31 2020 UTC |
marios | |
Log: adm/util/register/viz.py - bugfix: In set_tran_arrows_labels(), the theoretical TP was used instead of the hybrid value. Fixed. |
||||
13812 |
Directory Listing |
Modified
2 years, 10 months ago Tue Mar 24 01:37:42 2020 UTC |
marios | |
Log: adm/util/io/pfile.py - In ParFile.parse(): - Bugfix: In error message for unrecognized sections, the known sections were being accessed as module parameters, as opposed to as class parameters. Fixed. - Minor improvements to the error message for unrecognized sections. |
||||
13811 |
Directory Listing |
Modified
2 years, 10 months ago Mon Mar 23 23:03:44 2020 UTC |
marios | |
Log: adm/adm-merge-tp.py - Updated log output to report the correction factor and the multipole order of transitions with updated energy splittings. The order is presented with a label telling if it is custom, or the default (E1, see below). adm/util/idata/tp.py - Defined module parameters for the default order (E1). - In Transition(): - Defined method is_order_custom() to tell if the order is custom, or if it was read in with the data. - If the order is not set (that is, there is not even a custom order), order_index() returns the type of the default transition. Previously, an undocumented '1' was returned. adm/test/idata/test_tp.py - Exercised new method in unit tests. adm/docs/manual/algorithm.tex - Clarified text to TP updates to say that the transitions that have not had their energy splitting changed require no updates. adm/docs/manual/examples.tex - Updated log file extract of adm-merge-tp.py to discuss the new output format. |
||||
13810 |
Directory Listing |
Modified
2 years, 10 months ago Mon Mar 23 20:56:24 2020 UTC |
marios | |
Log: Implemented Fran's suggestion to report energy differences to aid the user with level registration. adm/util/register/levels.py - Defined print_dEnergy() to report the energy difference as an absolute value and relative to the theoretical value. - Used in all registration stages: pre-matching, matching, and confirmation. - Also used during the synthesis of the hybrid dataset. adm/util/register/terms.py - Now using util.register.levels.print_dEnergy() with term registration. - Also used during the synthesis of the hybrid dataset (when inserting missing terms). - bugfix: In insert_missing_terms(), the iterant ConfTermSort() was still being accessed as a dict. Now using the appropriate class methods. Fixed. adm/docs/manual/examples.tex - Updated Chapter Examples to show the current output of the scripts. |
||||
13809 |
Directory Listing |
Modified
2 years, 10 months ago Mon Mar 23 16:31:25 2020 UTC |
marios | |
Log: adm/util/register/viz.py - Renamed: - get_registered_indices -> get_registered_level_indices - register_energies -> register_level_energies - Moved relative_energy() to the 'COMMON UTILITIES' section of the module. |
||||
13808 |
Directory Listing |
Modified
2 years, 10 months ago Mon Mar 23 06:28:46 2020 UTC |
marios | |
Log: adm/util/register/viz.py - Added label in term registration plots showing the change in the term average energy, and enclosed it in a box. - Defined two regions in the bottom left and top right corner where the label is to be printed. These are pairs of (x,y) coordinates, defined as module parameters. - Added keyword argument to LabelInfo.set_properties() for border width. add_veusz_label() uses that attribute to define a border around the label. - Defined set_dE_label() to produce the label to be printed, as well as its position (and horizontal alignment). - bugfix: Now printing the labels of the theory and hybrid datasets exactly below the stack of level lines (as x-axis labels). |
||||
13807 |
Directory Listing |
Modified
2 years, 10 months ago Mon Mar 23 06:12:36 2020 UTC |
marios | |
Log: adm/util/register/viz.py - Modified add_veusz_label() to accept a LabelInfo() object as an argument, instead of a list of parameters, such as text size, alignment, etc. Updated calls to function. |
||||
13806 |
Directory Listing |
Modified
2 years, 10 months ago Mon Mar 23 04:02:38 2020 UTC |
marios | |
Log: adm/util/register/viz.py - In transition plots, shifted the first transition arrow by 0.10 (in relative units) to the left. - In multiplet plots, the term label of the lower term is now printed below the lowest level. - The spacing between the label and the level has increased from 2 to 3 times the default offset (_plot_label_yoffset) for both the upper and the lower terms. |
||||
13805 |
Directory Listing |
Modified
2 years, 10 months ago Sat Mar 21 00:24:42 2020 UTC |
marios | |
Log: adm/util/register/viz.py - Modified appearance of transition plots: - Shifted x-axis position of term and level labels, almost flush against the y-axis. - Shifted center of level marker (horizontal lines in plots) to the left by 0.04 (in relative units). - Extended level markers by ~10% (from 180pt to 200pt). Now using the same configuration for both FS and multiplet plots. - Reduced the offset of labels from arrow lines by 0.01 (in relative units). Offset applied only to the theoretical labels now. - Now using only one label for degenerate levels, which lists all J values. - Defined function remove_degenerate_label_positions() to remove labels and positions from the lists to be printed. - Refactored code. - In both LabelInfo() and LevelLabelsInfo(): - Removed the align_horz keyword from the constructor. - Defined method set_properties() to set the properties of a label: horizontal alignment, text size, angle, and color. This allows operating on the object, instead of passing around the properties as function arguments. - Defined method prt() to print the contents of an object. - Defined method validate_labels_positions() to make sure there are as many positions to plot, as there are labels. - Defined function sanitize_term_filename() to prepare a string from a given term, suitable to use in file names. This is now used with all file names: for terms, FS and multiplet transitions. - Removed keyword align_horz from set_term_labels(). This can now be done by calling the set_properties() method of the LevelLabelsInfo object returned. - In term registration plots: Defined X-axis labels for datasets as LabelInfo() objects. Adjusted calls to prepare_veusz_term() and create_veusz_file_term(). - In TranLevelLabels(): - Added x-axis position of the term and level labels to the constructor. - Replaced internal representation with a LabelInfo() object for the term, and a LevelLabelsInfo() for the levels. Their properties can be set by calling their set_properties() methods. - Defined function set_tran_labels_TP() to set the labels printed on either side of a transition arrow. Used with all transition plots (functions set_tran_arrows_labels() and set_tran_mult_arrows_labels()). - Refactored body of code of get_tran_labels_FS() as prepare_tran_labels(), which prepares the lists of labels and their positions, checks that they are of equal length, and removes degenerate level labels. - Used with get_tran_labels_FS(), as well as get_tran_mult_labels(). - get_tran_labels_FS() now also requires the x-axis position of the labels to feed to the constructor of the TranLevelLabels() object. - Bugfix in register_multiplet_transitions(): Loop variable overwritten when swapping the transition level indices. Now using temporary variables. Fixed. - bugfix in create_tran_multiplet_plots(): Only singlet-to-singlet plots were produced. For now, all multiplets are treated. Fixed. - bugfix in create_tran_multiplet_plots(): Test of terms_overlap() was not called with temporary cterms. Fixed. |
||||
13804 |
Directory Listing |
Modified
2 years, 10 months ago Fri Mar 20 00:54:14 2020 UTC |
marios | |
Log: adm/util/register/viz.py - Refactored labels code. - Defined class LabelInfo() to hold the details a label. - Redefined class LevelLabelsInfo() to hold a list of LabelInfo() objects. Also defined iterator methods (__iter__ and __next__) to loop over list without recourse to the size of the array held. - Simplified loop in set_term_level_labels(). - bugfix: Commit r13803 used a different name for renamed function create_plot() that contradicted the commit message. That name, run_veusz, is replaced with the intended create_veusz_plots in this commit. Fixed. |
||||
13803 |
Directory Listing |
Modified
2 years, 10 months ago Thu Mar 19 23:24:51 2020 UTC |
marios | |
Log: adm/util/register/viz.py - Function name changes to clarify scope: - create_plot -> create_veusz_plots - set_plot_xrange -> set_veusz_plot_xrange - set_plot_yrange -> set_veusz_plot_yrange - add_label -> add_veusz_label - set_plot_ybroken -> set_veusz_plot_ybroken |
||||
13802 |
Directory Listing |
Modified
2 years, 10 months ago Thu Mar 19 23:10:34 2020 UTC |
marios | |
Log: adm/util/register/viz.py - Refactored code for creating level labels for term plots. - Defined class LevelLabelsInfo() to pack all information needed for printing the level labels in term plots. - Refactored code that produces the labels and their positions into function set_term_labels(), which returns an object of the LevelLabelsInfo class. This is now used in create_term_plot(). - Using objects of new class, simplified interface of functions: - set_term_level_labels() - prepare_veusz_term() - create_veusz_file_term() |
||||
13801 |
Directory Listing |
Modified
2 years, 10 months ago Thu Mar 19 01:24:14 2020 UTC |
marios | |
Log: adm/util/register/viz.py - Further improvements in term registration plots: Print only one label for degenerate levels. The label lists all the degenerate Js. - Modified get_term_level_labels() to also admit the level energies as a parameter. Updated all calls to it. - Updated set_term_labels_ypos() to deal with degenerate levels when adding offsets to overlapping labels. - Used the new check.validate_energies() function instead of validating lists of floats. adm/util/stout/check.py - Defined function validate_energies() to validate that each item in a list is a valid energy. |
||||
13800 |
Directory Listing |
Modified
2 years, 10 months ago Thu Mar 19 00:09:54 2020 UTC |
marios | |
Log: adm/util/register/viz.py - Improved outlook of term registration plots. - Widened page to 20cm from the default of 15cm. - Now printing level labels next to levels: theoretical on the left of the level lines, hybrid on the right. - Added horizontal alignment keyword argument to set_term_level_labels(). - Defined function _validate_veusz_alignHorz(), refactored from all_label(). - Added vertical space between overlapping level labels. - Defined function are_levels_clustered() to tell if labels overlap. - Added space between term symbol and odd parity exponent. - In file names, replaced dots in configuration with underscores, so that plots can be used directly with LaTeX without need for renaming them. |
||||
13799 |
Directory Listing |
Modified
2 years, 10 months ago Wed Mar 18 15:49:54 2020 UTC |
marios | |
Log: adm/adm-visualize.py - Added script to generate plots of energy and TP updates. adm/util/register/viz.py - Added module that does all the work needed for the plot generation. adm/util/idata/nrg.py - Defined ConfTermSort.prt() method for printing the object contents. adm/util/register/convert.py - Defined theory_index_to_merged_index() to access the level index in the hybrid dataset of a theoretical level. - Defined experm_index_to_merged_index() to access the level index in the hybrid dataset of an experimental level. - Simplified merged_index_to_theory_index() to not check if a merged level that has been matched comes from the theoretical database -- that can never happen: If a theoretical level is matched, it is also replaced in the hybrid dataset. adm/util/register/__init__.py - Updated list of modules for 'import *' of subpackage. |
||||
13798 |
Directory Listing |
Modified
2 years, 10 months ago Tue Mar 17 15:05:55 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - ConfTerms.sort() by default now sorts by original energies. adm/util/register/terms.py - Updated calls to the sort method. |
||||
13797 |
Directory Listing |
Modified
2 years, 10 months ago Tue Mar 17 13:23:13 2020 UTC |
marios | |
Log: adm/adm-merge-tp.py - Bugfix: Transitions whose levels flipped after registration were being ignored. If the theoretical levels are out of order, they are now flipped. Fixed. |
||||
13796 |
Directory Listing |
Modified
2 years, 10 months ago Thu Mar 12 20:13:04 2020 UTC |
fguzman | |
Log: new branch for the implementation of PSM20 l-changing formalism |
||||
13795 |
Directory Listing |
Modified
2 years, 11 months ago Thu Mar 5 17:43:31 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - Defined Energies.index_for_level() to get the index of a level specified by configuration, spectroscopic term, and J. adm/test/idata/test_nrg.py - Exercised new method in unit tests. |
||||
13794 |
Directory Listing |
Modified
2 years, 11 months ago Thu Mar 5 17:15:42 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - In Energies(), renamed: - validate_level() to validate_index(). - validate_levels() to validate_indices(). adm/util/idata/nrg.py adm/adm-fine-tune.py adm/adm-merge-tp.py adm/util/idata/tp.py adm/util/register/convert.py adm/util/register/levels.py adm/util/register/terms.py - Update method calls. |
||||
13793 |
Directory Listing |
Modified
2 years, 11 months ago Wed Mar 4 00:23:54 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - Defined ConfTermSort() to provide an abstraction to the output of the ConfTerms.sort() method. - The class only has methods to access its private data, and it has a method to overload its equals comparison operator. - In ConfTerms(): - Modified sort() to return a list of ConfTermSort() objects, as opposed to a list of custom dicts. - Bugfix in shifted(): The code had not been updated to use the new method indices(), but was using levels(), instead. Fixed. adm/test/idata/test_nrg.py - Exercised new class ConfTermSort() in unit tests. adm/adm-fine-tune.py adm/util/register/terms.py - Updated to new data structure returned by ConfTerms.sort(). adm/util/stout/check.py - Bugfix in validate_energy(): Error issued to log was not accompanied by call to an abort function of the err.py package. Fixed. |
||||
13792 |
Directory Listing |
Modified
2 years, 11 months ago Tue Mar 3 16:07:08 2020 UTC |
marios | |
Log: adm/adm-setup.py - Create plots subdirectory along with the rest of the directory tree. adm/docs/manual/commands.tex - Update description of 'adm-setup.py'. adm/docs/manual/examples.tex - Update output of 'adm-setup.py'. adm/docs/manual/adm-macros.tex - Update macros for species to print the element in Roman font. |
||||
13791 |
Directory Listing |
Modified
2 years, 11 months ago Sat Feb 29 00:00:52 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - Revert ConfTerm() attribute name from '_indices' to '_levels', because it is more clear in the output JSON files. |
||||
13790 |
Directory Listing |
Modified
2 years, 11 months ago Fri Feb 28 23:50:59 2020 UTC |
marios | |
Log: adm/util/io/dirs.py - Added Dirs.species_plots_path() to access the plots directory in a species directory. adm/test/io/test_dirs.py - Exercised new method. |
||||
13789 |
Directory Listing |
Modified
2 years, 11 months ago Fri Feb 28 22:15:32 2020 UTC |
fguzman | |
Log: new approach, now pops are converted into bn's just before inverting the matrix leading to negative populations |
||||
13788 |
Directory Listing |
Modified
2 years, 11 months ago Thu Feb 27 23:23:52 2020 UTC |
marios | |
Log: adm/util/stout/check.py - Renamed: - validate_level() -> validate_index() - validate_tran_levels() -> validate_tran_indices() - Defined validate_indices() to test the validity of a list of level indices. adm/adm-fine-tune.py adm/adm-merge-coll.py adm/test/idata/test_nrg.py adm/test/idata/test_tp.py adm/util/idata/coll.py adm/util/idata/nrg.py adm/util/idata/tp.py adm/util/stout/meta.py adm/util/stout/nrg.py adm/util/stout/tp.py - Updated calls to use validate_index(). adm/util/idata/coll.py adm/util/idata/tp.py adm/util/stout/coll.py adm/util/stout/tp.py adm/test/idata/test_coll.py adm/test/stout/test_tp.py - Updated calls to use validate_tran_indices(). adm/util/idata/nrg.py - Updated calls to use validate_indices(). |
||||
13787 |
Directory Listing |
Modified
2 years, 11 months ago Thu Feb 27 22:41:38 2020 UTC |
marios | |
Log: adm/util/stout/check.py - Renamed validate_levels() to validate_tran_levels(). adm/util/stout/coll.py adm/test/idata/test_coll.py - Updated calls to use validate_tran_levels(). |
||||
13786 |
Directory Listing |
Modified
2 years, 11 months ago Thu Feb 27 20:14:06 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - Renamed JoinedEnergies.form_multiplets() to .populate_cterms(). adm/adm-fine-tune.py adm/test/idata/test_nrg.py - Updated calls to JoinedEnergies.form_multiplets(). |
||||
13785 |
Directory Listing |
Modified
2 years, 11 months ago Thu Feb 27 20:02:06 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - Modified ConfTerm() to use the words 'index' when referring just to the index number of an energy level. - Method levels() renamed indices(). adm/test/idata/test_nrg.py - Updated calls to ConfTerm.levels() with .indices(). |
||||
13784 |
Directory Listing |
Modified
2 years, 11 months ago Thu Feb 27 19:52:11 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - In Energy(): - Bugfix: '_state' attribute had not been promoted to the list of required keywords, even though an MixedState() object is always created. Fixed. - Bugfix in copy(): Attempt to copy attribute '_config', instead of '_state'. Fixed. - Bugfix in copy(): Attempt to copy optional keywords if they dodn't exist in the object we are copying from. Fixed. |
||||
13783 |
Directory Listing |
Modified
2 years, 11 months ago Tue Feb 18 18:15:35 2020 UTC |
marios | |
Log: adm/docs/manual/examples.tex - Added Section on "Transition Data Synthesis". adm/docs/manual/algorithm.tex - Updated equation for the TP update to use the absolute value of updated energy differenece. |
||||
13782 |
Directory Listing |
Modified
2 years, 11 months ago Tue Feb 18 18:11:07 2020 UTC |
marios | |
Log: adm/adm-merge-tp.py - Modified update_theory_tran() to use the merged_index_to_theory_index() function of the util.register.convert module, instead of its inner function get_theory_index(). - Argument list now takes the parameter file for the run, instead of the theoretical DB name. - Removed inner function get_theory_index(). - Minor variable name changes. - In do_join(), minor format changes ('joined' -> 'hybrid') on output. - In join_transitions(), now storing the hybrid radiative dataset with the same nickname as the joined level dataset used. This is conducive to the compilation of self-consistent datasets. adm/util/idata/tp.py - In photon_energy_update_ratio(), compute the absolute value of the energy ratio, in case two levels are flipped. adm/util/register/convert.py - Minor variable name change in merged_index_to_exprem_index(). |
||||
13781 |
Directory Listing |
Modified
2 years, 11 months ago Tue Feb 18 16:11:28 2020 UTC |
marios | |
Log: adm/docs/manual/examples.tex - Added subsection on "Level Data Synthesis", explaining how to "Synthesize Energy Level Data" and how to "Sort Levels by Energy". adm/docs/manual/commands.tex - Minor changes. |
||||
13780 |
Directory Listing |
Modified
2 years, 11 months ago Tue Feb 18 16:05:50 2020 UTC |
marios | |
Log: adm/adm-merge-nrg.py - Bugfix: NIST notes were not fetched. Fixed. adm/adm-sort-nrg.py - Added end-of-run banner to log file. adm/util/register/levels.py adm/util/register/terms.py - Minor formatting changes. |
||||
13779 |
Directory Listing |
Modified
2 years, 11 months ago Tue Feb 18 00:00:20 2020 UTC |
marios | |
Log: adm/docs/manual/examples.tex - Added subsubsection on "Only term-by-term registration". adm/util/idata/nrg.py - In ConfTerms(): - Bugfix in unshift(): Energies.validate_levels() was called without using the energies() method. Fixed. - In Energies(): - Added optional keyword showJ, by default True, to register_level_print() so as to handle showing the J of a level. The relevant code has been uncommented, and added to an if-statement involving the new showJ keyword. - In Groups(): - In level_print(): Call Energies.register_level_print() with the optional keyword showJ=False to prevent printing of J (which does not change within a (J,p) group. |
||||
13778 |
Directory Listing |
Modified
2 years, 11 months ago Mon Feb 17 18:18:05 2020 UTC |
marios | |
Log: adm/docs/manual/examples.tex - Added subsubsection on "Term-by-term registration" in Chapter 'Examples'. adm/docs/manual/adm-macros.tex - Updated macros \specTermOdd and \specLevelOdd to decrease the space between the term symbol and the 'o' superscript. |
||||
13777 |
Directory Listing |
Modified
2 years, 11 months ago Mon Feb 17 18:15:25 2020 UTC |
marios | |
Log: adm/adm-register-terms.py - Bugfix: NIST notes were not being fetched. Fixed. adm/util/register/terms.py - Changed function and variable names that involved 'multiplet' to use 'term' instead. - In __get_bracketing_terms_energies(): - Added checks that the bracketing terms do bracket the term in the original dataset. New terms are obtained if conditions not met. - Added warnings about terms in flipped energy order in the final dataset. New terms are sought if conditions not met. - In register_term_by_term(): - Bugfix: Missing line continuation '\'. Fixed. - Bugfix: Attempts to access method now moved to the ConfTerms() class. Fixed. adm/util/idata/nrg.py - In ConfTerms(): - Bugfix in _fmt_cterm_line(): Attempts to access validate_levels() method of the Energies() class, without using the energies() method. Fixed. - Bugfix in prt_levels() and prt_cterm(): Use of _fmt_multiplet_line() method; now replaced by _fmt_cterm_line(). Fixed. - Bugfix in shifted_with(): Name collision of local variable 'indices' with method of same name. Fixed. - Bugfix in sort(): Method relied on energy order of levels, so it did not sort the terms. Now enforcing sorting of terms on output. Fixed. |
||||
13776 |
Directory Listing |
Modified
2 years, 11 months ago Fri Feb 14 18:19:19 2020 UTC |
marios | |
Log: adm/docs/manual/examples.tex - Added subsubsection on level-by-level registration. Updated output. |
||||
13775 |
Directory Listing |
Modified
2 years, 11 months ago Fri Feb 14 18:15:14 2020 UTC |
marios | |
Log: adm/adm-register-levels.py - Fetch the table of NIST notes. adm/util/idata/nrg.py - In Groups(): - Renamed exists() as level_exists(). - Defined method exists() to test the existence of a (J,p) group. Now used in level_exists(). - Removed optional keyword 'cur_index' from level_next(). - In level_next_valid() and level_prev_valid(): - Bugfix: The methods crashed when the given index was None. Now they return None in that case. Fixed. - Bugfix: The methods were trying to access '_data', a remnant from the time they were part of the Energies() class. Replaced with call to the energies() method. Fixed. - In Energies.register_level_print(), modified printout. Jtot has been removed, and the statistical weight is now listed first after the database name. This way all values that vary in the group appear at the end of the line. adm/util/register/levels.py - Minor changes to the menu presented to the user. - Updated method name Groups.exists() to Groups.level_exists(). - Bugfix: Replaced call to non-existent print_menu_for_config() with get_user_option(). |
||||
13774 |
Directory Listing |
Modified
2 years, 11 months ago Fri Feb 14 16:37:20 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - Bugfix in Energies.register_level_print(): Extra indentation prevented note from being displayed. Fixed. |
||||
13773 |
Directory Listing |
Modified
2 years, 11 months ago Fri Feb 14 16:32:05 2020 UTC |
marios | |
Log: Enabled printing energy notes for registration purposes. adm/util/idata/nrg.py - Fixed omissions in Energy(): - Added '_notes' to class's list of optional keywords. - Defined method notes() to access list of notes, if available, or return an empty list if not present. - Bugfix: copy() method did not perform a deep-copy of the list of notes. Fixed. - Fixed omission in Energies(): - In register_level_print(), now printing notes on energy values below the main output line. adm/util/nist/notes.py - Promoted inner function fold_line() to module function. |
||||
13772 |
Directory Listing |
Modified
2 years, 11 months ago Wed Feb 12 23:44:07 2020 UTC |
marios | |
Log: adm/docs/manual/examples.tex - Updated subsection on "ADAS Data Preparation". Removed verbatim output for the NIST processing, now presented in the section "NIST Data, Preparation". adm/docs/manual/adm-macros.tex - Leave space between term symbol and parity in the macros \specTermOdd and \specLevelOdd. adm/adm-ingest-data.py adm/util/idata/coll.py - Remove debugging print() calls. |
||||
13771 |
Directory Listing |
Modified
2 years, 11 months ago Wed Feb 12 22:54:51 2020 UTC |
marios | |
Log: adm/docs/manual/examples.tex - Updated subsection "ADAS Data Acquisition --- Stout filenames". |
||||
13770 |
Directory Listing |
Modified
2 years, 11 months ago Wed Feb 12 22:45:07 2020 UTC |
marios | |
Log: adf042stout.py - Do not convert the given filename to an absolute path. - Print an end-of-run string before closing the log file. adm/docs/manual/examples.tex - Updated output of adm-adas-to-stout.py. adm/util/prun.py - In run_command_interactive(), do not PIPE the subprocess' stdin and stderr. This prevents any output from showing up on screen. Collides with r13375 (changes made for adm/adm-finalize.py). Requires review. |
||||
13769 |
Directory Listing |
Modified
2 years, 11 months ago Wed Feb 12 22:12:53 2020 UTC |
marios | |
Log: adm/docs/manual/examples.tex - Updated section for acquisition of ADAS data (adm-query-adas). adm/adm-query-adas.py - Print comments file entries to the log file, as well. |
||||
13768 |
Directory Listing |
Modified
2 years, 11 months ago Wed Feb 12 20:58:18 2020 UTC |
marios | |
Log: adm/adm-query-adas.py - Modified to let the user extract comments from the comments of the selected file, and to save them in an output file, to be used with Stout files. - Parametrized comments file name with variable 'comments_file'. - Modified function get_adf04() to not return the downloaded file name. |
||||
13767 |
Directory Listing |
Modified
2 years, 11 months ago Wed Feb 12 19:59:12 2020 UTC |
marios | |
Log: adm/adm-query-adas.py - Modified script to report relative path to species directory, not absolute. |
||||
13766 |
Directory Listing |
Modified
2 years, 11 months ago Wed Feb 12 19:49:44 2020 UTC |
marios | |
Log: adm/util/io/dirs.py - In DirInfo(): - Defined data field '_species_relpath' to hold the relative path to the species subdirectory, initialized with set(). - Defined method species_relpath() to provide access to the data field. - In Dirs(): - Defined method species_relpath() to provide access to the underlying dataset. adm/test/io/test_dirs.py - Exercised new method in unit tests of DirInfo() and Dirs(). |
||||
13765 |
Directory Listing |
Modified
2 years, 11 months ago Wed Feb 12 19:03:10 2020 UTC |
marios | |
Log: adm/adm-ingest-data.py - Parametrized the separator used with Jtot-order signatures. Reset it from ":" to ", " to allow for improve readability. |
||||
13764 |
Directory Listing |
Modified
2 years, 11 months ago Wed Feb 12 18:44:30 2020 UTC |
marios | |
Log: adm/adm-ingest-data.py - Bugfix: Old Energies() methods were still in use. Updated and fixed. - multiplet_levels() -> cterms().indices() - store_level_in_group() -> groups().insert() - store_level_in_multiplet() -> cterms().insert() adm/util/idata/nrg.py - In Groups.remove_degenerate_terms(): - Bugfix: Use method energies() omitted the parenthesis. Fixed. - Bugfix: Incomplete variable name change led to attempt to remove 'level', an Energy() object, from a list of integer indices. Fixed by using the 'index' variable instead. |
||||
13763 |
Directory Listing |
Modified
2 years, 11 months ago Wed Feb 12 04:52:54 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - Defined class Groups() and move all Energies.group_*() methods to it. - In Energies(): - Guard against missing _cterms attribute in cterms(). - Defined groups() method similar to cterms(). adm/adm-ingest-data.py adm/util/register/levels.py adm/util/stout/files.py adm/test/idata/test_nrg.py - Updated calls to groups() functions. |
||||
13762 |
Directory Listing |
Modified
2 years, 11 months ago Tue Feb 11 21:01:03 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - Defined class ConfTerms() and moved all Energies.multiplet_*() methods to it. - Energies() now uses a ConfTerms() objects, instead of dict to store 'multiplets'. - Access to object methods through Energies.cterms(). adm/test/idata/test_nrg.py - Updated unit tests for ConfTerm (former 'test_Energies_multiplets'). - Added unit tests for methods: - energies() - require() - match_econfig() - match_term() - export_dict() / import_dict() - Refactored test_ConfTerm() into helper inner functions to use with 'test_Energies_cterms'. adm/adm-fine-tune.py adm/adm-ingest-data.py adm/util/register/terms.py adm/util/stout/files.py adm/test/idata/test_nrg.py - Updated calls to cterms() methods (former 'multiplet_*'). |
||||
13761 |
Directory Listing |
Modified
2 years, 11 months ago Tue Feb 11 14:55:23 2020 UTC |
marios | |
Log: adm/util/idata/state.py - Guarded all OneState() methods for uninitialized objects. - Defined module parameter for invalid number of excited electrons. adm/test/idata/test_state.py - Unit testing OneState() methods for unset objects. |
||||
13760 |
Directory Listing |
Modified
2 years, 11 months ago Tue Feb 11 13:53:29 2020 UTC |
marios | |
Log: adm/util/idata/state.py - Defined methods OneState.statw() and MixedState.statw(). adm/util/atoms/jtot.py - Defined invalid statistical weight value. adm/test/idata/test_state.py - Added unit tests for OneState.statw() and MixedState.statw(). |
||||
13759 |
Directory Listing |
Modified
2 years, 11 months ago Tue Feb 11 12:27:30 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - In Energies() and JoinedEnergies(), attribute name change: '_multiplets' to '_cterms'. |
||||
13758 |
Directory Listing |
Modified
2 years, 11 months ago Tue Feb 11 00:49:42 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - In Multiplet(): - Changed class name to ConfTerm(), as the former is inappropriate. - Changed helper method __get_multiplet_index() to __get_term_index(). - Updated calls from Energies() methods. adm/test/idata/test_nrg.py - Updated calls to class. |
||||
13757 |
Directory Listing |
Modified
2 years, 11 months ago Tue Feb 11 00:45:29 2020 UTC |
marios | |
Log: adm/test/idata/test_nrg.py - Missed atoms.spname function name changes. |
||||
13756 |
Directory Listing |
Modified
2 years, 11 months ago Mon Feb 10 05:09:45 2020 UTC |
marios | |
Log: adm/util/idata/state.py - In OneState(): - Renamed multiplet() to term_name(); in_multiplet() to term_names_agree(). - In MixedState(): - Renamed multiplets() to term_names(); in_multiplet() to term_names_agree(). adm/test/idata/test_state.py - Updated unit test names and calls. |
||||
13755 |
Directory Listing |
Modified
2 years, 11 months ago Mon Feb 10 02:55:22 2020 UTC |
marios | |
Log: adm/util/atoms/spname.py - Renamed functions: - fmt_config_output() to fmt_spname_output() - fmt_config_output_noJ() to fmt_spname_output_noJ() - join_into_alt_config() to join_level_names() - parse_config_into_ecl() to parse_spname_into_ecl() - parse_config_into_ectJ() to parse_spname_into_ectJ() - is_spec_config() to is_spname() - validate_spec_config() to validate_spname() - compare_spec_levels() to level_names_agree() - parse_alt_configs() to parse_mixed_level() - in_multiplet() to levels_in_term() - in_multiplet_alt() to mixed_levels_in_term() - are_alt_econfig_same() to mixed_econfig_agree() - are_alt_subshell_lists_same() to mixed_subshells_agree() - are_alt_term_lists_same() to mixed_terms_agree() adf042stout.py adm/util/adas/adas.py adm/util/idata/state.py adm/util/nist/fmt.py adm/util/nist/nrg.py adm/util/register/levels.py adm/test/atoms/test_spname.py adm/test/idata/test_state.py - Update calls to functions. |
||||
13754 |
Directory Listing |
Modified
2 years, 11 months ago Sun Feb 9 22:45:07 2020 UTC |
marios | |
Log: adm/util/idata/nrg.py - In Energy(): - Data variable '_config' renamed to '_state'. - Method config() renamed as state(). adm/adm-ingest-data.py adm/util/register/levels.py adm/util/register/terms.py adm/test/idata/test_nrg.py - Update calls to use the new state() method. |
||||
13753 |
Directory Listing |
Modified
2 years, 11 months ago Sun Feb 9 20:10:15 2020 UTC |
marios | |
Log: adm/util/atoms/spname.py adm/util/idata/state.py - Extracted *State() classes from atoms.spname into module idata.state. adm/util/atoms/spname.py - Removed local variables accessing nist.fmt formatting parameters. Now the latter are accessed directly. adm/test/atoms/test_spname.py adm/test/idata/test_state.py - Extracted unit tests for *State() classes from atoms.test_spname into test module idata.test_state. adm/util/idata/nrg.py - Updated calls to MixedState(). adm/util/idata/__init__.py - Update 'import *' export. |
||||
13752 |
Directory Listing |
Modified
2 years, 11 months ago Sun Feb 9 19:03:53 2020 UTC |
marios | |
Log: Renamed: adm/util/atoms/config.py to: adm/util/atoms/spname.py Renamed: adm/test/atoms/test_config.py to: adm/test/atoms/test_spname.py NistExtractor/NistExtractor.py adf042stout.py adm/adm-ingest-data.py adm/util/adas/adas.py adm/util/adas/eissner.py adm/util/atoms/__init__.py adm/util/atoms/trans.py adm/util/idata/nrg.py adm/util/nist/nrg.py adm/util/register/levels.py adm/util/register/terms.py adm/test/atoms/test_trans.py adm/test/idata/test_nrg.py adm/test/stout/test_nrg.py - Updated module imports. |
||||
13751 |
Directory Listing |
Modified
2 years, 11 months ago Sun Feb 9 18:19:12 2020 UTC |
marios | |
Log: adm/util/atoms/config.py - Updated class names Config() to OneState() and ConfigAlt() and MixedState(). adm/util/idata/nrg.py adm/test/idata/test_nrg.py adm/test/atoms/test_config.py - Updated calls to classes, and unit test names. |
||||
13750 |
Directory Listing |
Modified
2 years, 11 months ago Fri Feb 7 23:55:44 2020 UTC |
fguzman | |
Log: It seems that QUADPACK integral dqgai_() have problems reaching the maximum number of intervales when integrating source terms. Results look reasonable and theintegrand has no singularities though. Using dqgaie_() instead gives no problems so I have switched to it. I have included source inside the sources and sink terms inside the matrix. Populations are negative unless a mitigation is done on the condensed level index. A higher density of condensed levels is created at the extremes of the original levels. However, the departure coefficients still dont make sense being oscilating over 1 for most of the n's and falling bellow one at the higher levels. Testing has been done with 10 resolved levels and 290 condensed levels. The source and sink terms starting in resolved or condensed levels does not seems to affect, |
||||
13749 |
Directory Listing |
Modified
2 years, 11 months ago Fri Feb 7 17:52:48 2020 UTC |
fguzman | |
Log: cleaning of add_equilibrium_levels() |
||||
13748 |
Directory Listing |
Modified
2 years, 11 months ago Fri Feb 7 06:11:18 2020 UTC |
marios | |
Log: Renamed: adm/util/stout/parse.py to: adm/util/stout/files.py Renamed: adm/test/stout/test_parse.py to: adm/test/stout/test_files.py Updated imports: - adm/adm-export-stout.py - adm/adm-ingest-data.py - adm/adm-register-levels.py - adm/adm-register-nocfg.py - adm/adm-register-terms.py Added for 'import *': - adm/util/stout/__init__.py |
||||
13747 |
Directory Listing |
Modified
2 years, 11 months ago Fri Feb 7 05:51:08 2020 UTC |
marios | |
Log: Update files to point to new idata modules for class definitions. - adm/adm-export-stout.py - adm/adm-finalize.py - adm/adm-fine-tune.py - adm/adm-ingest-data.py - adm/adm-merge-coll.py - adm/adm-merge-nrg.py - adm/adm-merge-tp.py - adm/adm-register-levels.py - adm/adm-register-nocfg.py - adm/adm-register-terms.py - adm/adm-sort-nrg.py - adm/util/register/convert.py - adm/util/register/levels.py - adm/util/register/nocfg.py - adm/util/register/terms.py |
||||
13746 |
Directory Listing |
Modified
2 years, 11 months ago Fri Feb 7 05:36:55 2020 UTC |
marios | |
Log: Update calls to *Record() class methods with function calls. - NistExtractor/NistExtractor.py - adm/test/idata/test_nrg.py - adm/test/idata/test_tp.py - adm/test/stout/test_coll.py - adm/test/stout/test_tp.py - adm/util/idata/coll.py - adm/util/idata/nrg.py - adm/util/idata/tp.py - adm/util/stout/info.py - adm/util/stout/parse.py |
||||
13745 |
Directory Listing |
Modified
2 years, 11 months ago Fri Feb 7 05:24:56 2020 UTC |
marios | |
Log: Converted classes for reading / writing records to plain module functions. - adm/test/stout/test_coll.py - adm/test/stout/test_nrg.py - adm/test/stout/test_tp.py - adm/util/stout/coll.py - adm/util/stout/nrg.py - adm/util/stout/tp.py |
||||
13744 |
Directory Listing |
Modified
2 years, 11 months ago Fri Feb 7 05:00:44 2020 UTC |
marios | |
Log: Decoupled internal data model from the classes that read and write Stout data. Created subpackage util.idata, and also test.idata. - adm/util/idata - adm/util/idata/__init__.py - adm/util/idata/coll.py - adm/util/idata/nrg.py - adm/util/idata/tp.py - adm/test/idata - adm/test/idata/test_coll.py - adm/test/idata/test_nrg.py - adm/test/idata/test_tp.py - adm/test/stout/test_coll.py - adm/test/stout/test_nrg.py - adm/test/stout/test_tp.py - adm/util/stout/coll.py - adm/util/stout/nrg.py - adm/util/stout/tp.py |
||||
13743 |
Directory Listing |
Modified
2 years, 11 months ago Fri Feb 7 01:46:17 2020 UTC |
marios | |
Log: adm/util/stout/coll.py adm/util/stout/check.py - Moved validation functions and relevant data from coll.py to check.py. Updated coll.py to the right location of these functions. adm/test/stout/test_coll.py adm/test/stout/test_check.py - Moved relevant unit tests from test_coll.py to test_check.py. |
||||
13742 |
Directory Listing |
Modified
2 years, 11 months ago Fri Feb 7 01:26:38 2020 UTC |
marios | |
Log: adm/adm-export-stout.py - Bugfix: Script was using parse module, not its 'stparse' alias. Fixed. |
||||
13741 |
Directory Listing |
Modified
2 years, 11 months ago Fri Feb 7 01:23:32 2020 UTC |
marios | |
Log: adm/util/stout/fmt.py adm/util/stout/parse.py - Moved from fmt.py to parse.py: - class FileSections() - get_IP() - parse_file_into_sections() adm/test/stout/test_fmt.py adm/test/stout/test_parse.py - Moved unit tests for class and functions above from test_fmt.py to test_parse.py. - Moved inner function create_file_lines() as __create_file_lines(). - Removed inner function __create_dataset(), repeat of __create_file_lines(). Using former instead. - Modified tests for get_IP() & parse_file_into_sections() to work with datasets. - Converted data needed for unit tests of get_IP() into datasets. adm/adm-export-stout.py - Updated definition of FileSections() to point to parse.py. |
||||
13740 |
Directory Listing |
Modified
2 years, 11 months ago Fri Feb 7 00:29:30 2020 UTC |
marios | |
Log: adm/util/stout/check.py - Added module containing validation functions from nrg.py and tp.py. adm/util/stout/nrg.py adm/util/stout/tp.py - Removed functions now found in check.py. adm/test/stout/test_check.py - Added module containing unit tests for is_TP_valid() moved here from test_tp.py. adm/test/stout/test_tp.py - Removed unit tests for is_TP_valid() and divide_TPs(). adm/adm-fine-tune.py adm/adm-merge-coll.py adm/test/stout/test_coll.py adm/test/stout/test_nrg.py adm/test/stout/test_tp.py adm/util/register/terms.py adm/util/stout/coll.py adm/util/stout/meta.py adm/util/stout/nrg.py adm/util/stout/tp.py - Updated calls to point stout.check. |
||||
13739 |
Directory Listing |
Modified
2 years, 11 months ago Thu Feb 6 23:33:22 2020 UTC |
marios | |
Log: adm/util/adas/adas.py - Bugfix: Drop double quotes before processing the configuration. |
||||
13738 |
Directory Listing |
Modified
2 years, 11 months ago Thu Feb 6 23:31:13 2020 UTC |
marios | |
Log: adm/adm-export-stout.py adm/adm-ingest-data.py adm/adm-register-levels.py adm/adm-register-nocfg.py adm/adm-register-terms.py - Updated calls to parse_*() functions to point to the stout.parse module. |
||||
13737 |
Directory Listing |
Modified
2 years, 11 months ago Thu Feb 6 23:21:31 2020 UTC |
marios | |
Log: adm/util/stout/parse.py - Added module containing all parse_*() functions of nrg.py, tp.py, & coll.py. adm/util/stout/coll.py adm/util/stout/nrg.py adm/util/stout/tp.py - Removed parse_*() functions. adm/test/stout/test_parse.py - Moved unit tests of parse_*() functions from nrg.py and coll.py. - Added missing unit tests for parse_nrg(). - Added missing unit tests for parse_tp() and parse_tp_sections(). - Added missing unit tests for parse_coll_sections(). adm/test/stout/test_coll.py adm/test/stout/test_nrg.py - Removed existing unit tests of parse_*(). |
||||
13736 |
Directory Listing |
Modified
2 years, 11 months ago Thu Feb 6 22:05:23 2020 UTC |
marios | |
Log: adm/util/stout/dirtree.py - Renamed fname_energy() to fname_nrg(). adm/adm-export-stout.py adm/test/stout/test_dirtree.py adm/test/stout/test_nrg.py adm/util/nist/files.py adm/util/stout/info.py adm/util/stout/nrg.py - Updated calls to fname_nrg(). |
||||
13735 |
Directory Listing |
Modified
2 years, 11 months ago Thu Feb 6 21:39:15 2020 UTC |
marios | |
Log: adm/util/stout/coll.py - In CollisionBlock(): - Demoted '_order' to an optional keyword. - Made use of '_order' conditional on its presence in the object in insert_collision(), copy(), prt_input_order(). - Likewise for '_sorted_order' in prt_sorted(). - These attributes are now excluded from export_dict() and import_dict(). adm/util/stout/nrg.py - In Energies(): - Added '_order' as a keyword argument. - Order is stored only for levels entered with insert(). - Defined prt_input_order() to print levels in the order they were read in. - export_dict() and import_dict() now explicitly skip '_order'. adm/util/stout/tp.py - In Transitions(): - Added class-wide tuple of optional keywords, with only member of '_order'. - Order is stored only for levels entered with add_transition(). - Defined prt_input_order() to print transitions in the order they were read in. - export_dict() and import_dict() now explicitly skip '_order'. adm/test/stout/test_coll.py - Removed tests of input order -- it is now a optional data field. |
||||
13734 |
Directory Listing |
Modified
2 years, 11 months ago Thu Feb 6 16:39:36 2020 UTC |
marios | |
Log: adm/util/nist/fmt.py - Refactored code that writes the configuration comment into function prep_other_config_comment(). - Updated form_nrg_comment() to use new function. adm/util/atoms/config.py - In ConfigAlt(): - Updated prt_percentages() to not format the string for output. That is, to not prepend the output with the 'pct:' string. - Defined method prepare_comment() to produce a comment string for output to a Stout file. It is a wrapper around nist.fmt.prep_other_config_comment() that uses prt_percentages() as input to that function (hence the need to drop the 'pct:' sentinel. adm/util/stout/nrg.py - In Energy.new_dataline(), use new ConfigAlt.prepare_comment() method, instead of forging the comment therein. adm/test/nist/test_fmt.py - Exercised prep_other_config_comment() in unit tests. adm/test/atoms/test_config.py - Exercised ConfigAlt.prepare_comment() in unit tests. - Updated unit tests of ConfigAlt.prt_percentages(). |
||||
13733 |
Directory Listing |
Modified
2 years, 11 months ago Thu Feb 6 06:03:35 2020 UTC |
marios | |
Log: adm/docs/manual/examples.tex - Removed "Closing log file:..." from examples. See below. - Added Section "NIST Data Acquisition & Preparation". - Added previous text as subsection "NIST Data Acquisition". - Added new subsection "NIST Data Preparation", discussing 'adm-ingest-data' run. adm/adm-ingest-data.py - Changed program description. - Minor format updates. - dismiss_levels() no longer returns a bool variable. - In process_wrong_orderings(): - Inner function process_multiplets() no longer evaluates if levels have been modified. adm/docs/manual/adm-macros.tex - Defined commands \specTerm and \specTermOdd. adm/util/stout/nrg.py - In Energy(): - Changed data field '_level' to '_index'. - In pprt(), changed the output to remove underscores from fields, and to capitalize the first letter of each field. adm/util/atoms/config.py - Minor formatting change in Config.pprt(). - Likewise in ConfigAlt.pprt() -- title has changed from '_ConfigAlt' to 'State Info'. adm/util/io/log.py - lclose() now reports which log file it is closing to screen only, not the log file itself. |
||||
13732 |
Directory Listing |
Modified
2 years, 11 months ago Thu Feb 6 00:18:47 2020 UTC |
marios | |
Log: Last bugfixes in test suite. adm/util/stout/coll.py - Bugfix: CollionRecord.extract_data() was parsing the input line with the default delimiter of tabs. Records in the Ne+8 dataset were using spaces instead. Fixed by using any amount of whitespace characters for parsing. adm/test/adas/test_adas.py - Bugfix: Inconsistent J with the term in unit test for process_spec_level(). 1P<0> changed to 1P<1>. |
||||
13731 |
Directory Listing |
Modified
2 years, 11 months ago Wed Feb 5 23:32:43 2020 UTC |
marios | |
Log: Minor updates to unit test suite. - adm/test/adas/test_adas.py - adm/test/adas/test_eissner.py - adm/test/atoms/test_config.py - adm/test/atoms/test_jtot.py - adm/test/atoms/test_orbitals.py - adm/test/atoms/test_splevel.py - adm/test/atoms/test_spterm.py - adm/test/cloudy/test_cloudy.py - adm/test/cloudy/test_lines.py - adm/test/cloudy/test_stout_refs.py - adm/test/io/test_dirs.py - adm/test/io/test_log.py - adm/test/io/test_pfile.py - adm/test/io/test_ui.py - adm/test/nist/test_fmt.py - adm/test/nist/test_notes.py - adm/test/nist/test_nrg.py - adm/test/nist/test_phtml.py - adm/test/nist/test_refs.py - adm/test/nist/test_tp.py - adm/test/nist/test_web.py - adm/test/ptable/test_elements.py - adm/test/ptable/test_ions.py - adm/test/ptable/test_spectra.py - adm/test/stout/test_c2s.py - adm/test/stout/test_coll.py - adm/test/stout/test_dirtree.py - adm/test/stout/test_fmt.py - adm/test/stout/test_info.py - adm/test/stout/test_meta.py - adm/test/stout/test_nrg.py - adm/test/stout/test_tp.py - adm/test/test_chianti.py - adm/test/test_chtypes.py - adm/test/test_fs.py - adm/test/test_misc.py - adm/test/test_types.py |
||||
13730 |
Directory Listing |
Modified
2 years, 11 months ago Wed Feb 5 23:09:21 2020 UTC |
marios | |
Log: No longer attempt to import Python3's print function. - adf042stout.py - adm/adm-create-pfile.py - adm/adm-export-stout.py - adm/adm-finalize.py - adm/adm-fine-tune.py - adm/adm-merge-coll.py - adm/adm-merge-nrg.py - adm/adm-merge-tp.py - adm/adm-query-adas.py - adm/adm-register-levels.py - adm/adm-register-nocfg.py - adm/adm-register-terms.py - adm/adm-sort-nrg.py - adm/test/adas/test_adas.py - adm/test/adas/test_eissner.py - adm/test/atoms/test_config.py - adm/test/atoms/test_jtot.py - adm/test/atoms/test_orbitals.py - adm/test/atoms/test_splevel.py - adm/test/atoms/test_spterm.py - adm/test/atoms/test_trans.py - adm/test/cloudy/test_cloudy.py - adm/test/cloudy/test_lines.py - adm/test/cloudy/test_stout_refs.py - adm/test/io/test_dirs.py - adm/test/io/test_log.py - adm/test/io/test_pfile.py - adm/test/io/test_ui.py - adm/test/nist/test_fmt.py - adm/test/nist/test_refs.py - adm/test/nist/test_tp.py - adm/test/ptable/test_elements.py - adm/test/ptable/test_ions.py - adm/test/ptable/test_spectra.py - adm/test/stout/test_c2s.py - adm/test/stout/test_coll.py - adm/test/stout/test_dirtree.py - adm/test/stout/test_fmt.py - adm/test/stout/test_info.py - adm/test/stout/test_meta.py - adm/test/stout/test_nrg.py - adm/test/stout/test_tp.py - adm/test/test_chianti.py - adm/test/test_chtypes.py - adm/test/test_fs.py - adm/test/test_misc.py - adm/test/test_types.py - adm/util/adas/adas.py - adm/util/adas/eissner.py - adm/util/atoms/splevel.py - adm/util/atoms/spterm.py - adm/util/atoms/trans.py - adm/util/chianti.py - adm/util/chtypes.py - adm/util/cloudy/cloudy.py - adm/util/cloudy/lines.py - adm/util/cloudy/stout_refs.py - adm/util/fs.py - adm/util/io/dirs.py - adm/util/io/err.py - adm/util/io/log.py - adm/util/io/pfile.py - adm/util/io/ui.py - adm/util/misc.py - adm/util/nist/err.py - adm/util/nist/refs.py - adm/util/prun.py - adm/util/ptable/ions.py - adm/util/register/convert.py - adm/util/register/levels.py - adm/util/register/nocfg.py - adm/util/register/terms.py - adm/util/stout/c2s.py - adm/util/stout/coll.py - adm/util/stout/dirtree.py - adm/util/stout/fmt.py - adm/util/stout/info.py - adm/util/stout/meta.py - adm/util/stout/nrg.py - adm/util/stout/tp.py - adm/util/types.py |
||||
13729 |
Directory Listing |
Modified
2 years, 11 months ago Wed Feb 5 23:00:48 2020 UTC |
marios | |
Log: Update list of modules for 'import *' of subpackages: - adm/util/atoms/__init__.py - adm/util/io/__init__.py - adm/util/nist/__init__.py |
||||
13728 |
Directory Listing |
Modified
2 years, 11 months ago Wed Feb 5 22:50:49 2020 UTC |
marios | |
Log: adm/util/chtypes.py - Defined new class Valid() with only one classmethod validate(), which makes sure that the given object is a valid instance of the class. adm/util/atoms/config.py adm/util/cloudy/lines.py adm/util/io/dirs.py adm/util/io/pfile.py adm/util/nist/nrg.py adm/util/nist/refs.py adm/util/stout/coll.py adm/util/stout/fmt.py adm/util/stout/info.py adm/util/stout/meta.py adm/util/stout/nrg.py adm/util/stout/tp.py - All classes that hold data (i.e., they don't only contain classmethods) now derive from chtypes.Valid. Their private validate() methods have been removed. |
||||
13727 |
Directory Listing |
Modified
2 years, 11 months ago Wed Feb 5 20:21:00 2020 UTC |
marios | |
Log: Drop energy level grouping by excitation signature. adm/util/stout/nrg.py - Bugfix: Typo in Energy.pprt(), missing parenthesis after method config(). Fixed. - In Energies(): - In store_level_in_group(), ignore levels with invalid Jtot. - Remove the grouping by excitation signature, i.e., the top _group list. Now, _group is a list of list of levels. Affected methods: - store_level_in_group() - is_level_in_group() - groups_remove_degenerate_terms() - group_excit() -- REMOVED - group_Jtot() - group_parity() - group_levels() - register_level_print() - group_level_print() - group_level_next() - group_level_next_valid() - group_level_prev_valid() - reset_group() -- commented out - show_group() - get_unmatched_levels() - export_dict() - do_import() adm/util/register/levels.py - Updated to new interfaces of Energies() methods. Affected functions: - validate_all_matches() - prematch_group() - match_group() - reset_group() - confirm_registration() - process_group() - register_levels() - join_group() - join_levels() adm/test/stout/test_nrg.py - Updated functions: - test_Energies_groups() - __compare_Energies_objects() - Updated datasets: - dataset_fe_4 - dataset_ne_8 |
||||
13726 |
Directory Listing |
Modified
2 years, 11 months ago Wed Feb 5 19:45:53 2020 UTC |
marios | |
Log: adm/util/stout/nrg.py - Bugfix: Did not switch parse_note() reference from nist.fmt to nist.notes. Fixed. |
||||
13725 |
Directory Listing |
Modified
2 years, 11 months ago Wed Feb 5 04:01:08 2020 UTC |
marios | |
Log: adm/util/stout/nrg.py - In Energy(): - Updated init() to the list-of-strings return value of nist.fmt.parse_note(). Now the attribute '_notes' holds the list, instead of storing the code and its message into a dict. Notice that with this change multiple values can be stored. - Updated pprt() to print the codes with the codes before the configuration, instead of after it. |
||||
13724 |
Directory Listing |
Modified
2 years, 11 months ago Wed Feb 5 03:52:26 2020 UTC |
marios | |
Log: Moved parse_note() from fmt.py to notes.py, and refactored. adm/util/nist/notes.py - Defined module parameter ('__note_sep') for the separator (a comma ',') between note codes. Updated __prepare_table() to use the parameter, instead of ',' strings. - Moved function parse_note() from fmt.py and changed its functionality to not expect the message after the code, separated by ':'. Instead, it expects a comma-delimited string of codes, which it parses into a list. - Defined fmt_note() to carry out the reverse operation of parse_note(), i.e., to assemble a note from a list of codes. adm/util/nist/fmt.py - Changed module parameter 'note_sentinel' from a value of "note" to "note:". - Removed obsolete module parameter note_sep. - Removed obsolete function parse_note(). It operated on a format that is no longer supported (the messages of the notes are now shown only at the end of the file). - Updated function fmt_note_output() to note accept the message as an keyword argument. adm/util/nist/phtml.py - In extract_note(), now using notes.fmt_note() to prepare a note string from the list of codes extracted from the HTML markup. adm/test/nist/test_notes.py - Added unit tests for notes.parse_note() and notes.fmt_note(). adm/test/nist/test_fmt.py - Removed unit tests for obsolete fmt.parse_note(). - Adapted unit tests to new interface of fmt_note_output(). - Updated unit tests for parse_nrg_comment(). |
||||
13723 |
Directory Listing |
Modified
2 years, 11 months ago Tue Feb 4 20:59:53 2020 UTC |
marios | |
Log: adm/test/atoms/test_config.py - For ConfigAlt(): - Added unit tests to establish that basic access to the underlying Config() object works as expected. - Added unit tests for methods: - given() - primary_econfig_full() - primary_term() - primary_subshells() - Now validating unitialized objects with methods: - primary_config() - other_config() - Jtot() - parity() - Other minor formatting changes. |
||||
13722 |
Directory Listing |
Modified
3 years ago Mon Feb 3 23:09:23 2020 UTC |
marios | |
Log: adm/util/stout/nrg.py - In Energy(): - Eliminated all methods that were wrappers to ConfigAlt() methods. Now a ConfigAlt() object is always created, but populated only when state configuration info exists. - Defined method config() to provide access to the underlying ConfigAlt() object. - Removed methods (also listed names of ConfigAlt() methods, if different): - have_config() given() - econfig() - econfig_full() - config_level() - input_config() - have_alt_config() have_other_config() - primary_config() - primary_econfig() primary_econfig_full() - alternate_config() other_config() - have_percentages() - percentages() - prt_percentages() - terms() - primary_term() - Jtot() - parity() - excit() excitations() - subshells() - primary_subshells() adm/util/atoms/config.py - Renamed Config() and ConfigAlt() methods: - get_excitations() to excitations() - get_subshells() to subshells() - In ConfigAlt(): - Defined: - boolean data field (attribute) _is_set, True only when the init() method is called. - given() to tell if the object has been initialized (using _is_set). - primary_econfig_full() - primary_term() - primary_subshells() - Renamed: - have_alt_config() to have_two_configs() - alternate_config() to other_config() - For uninitialized objects: - primary_config() now returns an empty string. - other_config() now returns an empty string. - Jtot() returns jtot.invalid_Jtot - parity() returns parity.invalid_parity adm/test/atoms/test_config.py - Updated calls to Config() and ConfigAlt() methods. adm/adm-ingest-data.py adm/util/register/levels.py adm/util/register/terms.py adm/util/stout/nrg.py adm/test/stout/test_nrg.py - Updated calls to Energy() methods to ConfigAlt() with Energy().config(). |
||||
13721 |
Directory Listing |
Modified
3 years ago Mon Feb 3 20:11:39 2020 UTC |
marios | |
Log: adm/util/atoms/jtot.py - Rename module variable Jtot_invalid to invalid_Jtot. adm/util/stout/nrg.py - Remove Energy.invalid_Jtot. Use jtot.py module's instead. adm/test/atoms/test_config.py adm/test/atoms/test_jtot.py adm/test/stout/test_nrg.py - Update references to the energy class variable with references to the jtot module one. |
||||
13720 |
Directory Listing |
Modified
3 years ago Mon Feb 3 20:07:55 2020 UTC |
marios | |
Log: adm/util/atoms/config.py - Missed call to parity() function in parity.py |
||||
13719 |
Directory Listing |
Modified
3 years ago Mon Feb 3 17:58:24 2020 UTC |
marios | |
Log: adm/util/atoms/config.py adm/util/atoms/splevel.py adm/util/atoms/spterm.py adm/util/atoms/trans.py adm/util/register/levels.py adm/util/stout/nrg.py adm/test/atoms/test_config.py adm/test/atoms/test_trans.py adm/test/stout/test_nrg.py - Update calls to parity.py module functions and variables. |
||||
13718 |
Directory Listing |
Modified
3 years ago Mon Feb 3 16:59:24 2020 UTC |
marios | |
Log: adm/util/atoms/orbitals.py adm/util/atoms/parity.py - Exported all parity-related functions exported from 'orbitals.py' to new module 'parity.py'. adm/util/atoms/__init__.py - Updated file for 'import *'. adm/test/atoms/test_parity.py adm/test/atoms/test_orbitals.py - Exported all parity-related unit tests exported from 'test_orbitals.py' to new test module 'test_parity.py'. |
||||
13717 |
Directory Listing |
Modified
3 years ago Mon Feb 3 15:32:43 2020 UTC |
marios | |
Log: adm/util/fs.py adm/util/io/log.py - Updated module docstrings. |
||||
13716 |
Directory Listing |
Modified
3 years ago Sun Feb 2 02:02:15 2020 UTC |
marios | |
Log: adm/docs/manual/examples.tex - Reworked Chapter "Examples" Sections "Setting up" and "Preparing NIST data", renamed "Setup" and "NIST Data Acquisition", respectively, to be consistent with the main flowchart of Chapter "Algorithm Description". - Eliminated presentation of Stout file contents from "Data Acquisition" section, now discussed in more detailed in Chapter "Introduction". adm/docs/manual/intro.tex - In section "Transition files". - Added comment on ordering of data i; moved from "Examples", above. - Added comment on default (assumed) multipole order of E1. - Added reference to online transition accuracy table, moved from above. |
||||
13715 |
Directory Listing |
Modified
3 years ago Sun Feb 2 01:16:06 2020 UTC |
marios | |
Log: adm/docs/manual/intro.tex - Updates on Stout file contents. |
||||
13714 |
Directory Listing |
Modified
3 years ago Sun Feb 2 00:45:03 2020 UTC |
marios | |
Log: Hide absolute path names from log files, as they are likely to end up online. adm/util/fs.py - Set up infrastructure from not reporting absolute paths on log files, as they may posted online. - Defined function set_execpath(), which must be called before main() to set up the path from which an ADM command is executed. - Defined functions execpath() and unset_execpath() to report the path, and reset it to None, respectively. - Defined sanitize_path() to remove the execution path from the path that is being written out to the log file. Now called from: - write_file() - copy_file() - create_subdir() - chdir() - validate_file() - JSON.read() Note that all these functions use absolute paths for their operations, and 'sanitized' paths only for reporting. adm/util/io/log.py - Do not report absolute path on log file. Implemented with os.path.basename() because the importing the fs.py infrastructure would create a circular dependence. Enforced on lopen() and lclose(). adm/test/test_fs.py - Exercised sanitize_path() in unit tests. adm/adm-setup.py - Now that the default for printing to screen has changed, change the coding of verbosity to maintain much of the old behavior: with -v the printout is sent to screen, otherwise it goes to the log file, if one is specified. Note: if a log file is not given, the output is no longer sent to screen by default. NistExtractor/NistExtractor.py adm/adm-adas-to-stout.py adm/adm-export-stout.py adm/adm-fetch-nist.py adm/adm-finalize.py adm/adm-fix-fnames.py adm/adm-ingest-data.py adm/adm-merge-coll.py adm/adm-merge-nrg.py adm/adm-merge-tp.py adm/adm-query-adas.py adm/adm-register-levels.py adm/adm-register-nocfg.py adm/adm-register-terms.py adm/adm-setup.py adm/adm-sort-nrg.py - Setup the execution directory before main() is called. |
||||
13713 |
Directory Listing |
Modified
3 years ago Sat Feb 1 18:41:08 2020 UTC |
marios | |
Log: adm/stout-data-summary.py - Report end of run to log file with a suitably decorated line. Missed file in previous commit... |
||||
13712 |
Directory Listing |
Modified
3 years ago Sat Feb 1 18:37:57 2020 UTC |
marios | |
Log: adm/util/io/log.py - Added function __proc_cline_args to prepare the command line to write to output. If not supplied, the command-line arguments used are from sys.argv. Only the basename of the executed program is reported. - In print_cline_as_comment(): - Report command-line call to both the log file and the screen. - Use __proc_cline_args() to prepare the command-line arguments -- not using sys.argv directly anymore. - Defined function end_of_run() to print a message to the log file reporting the end of execution of a program. Uses __proc_cline_args() to prepare the program name. Different decorators are used for subprocesses. The purpose of this program is to ease reading the log file. adm/util/prun.py - In run_command() and run_command_interactive(): - Do not prepare the command line on the fly; instead, use log.print_cline_as_comment(). - Mark the end of the run with decorators appropriate to subprocesses. adm/adm-adas-to-stout.py adm/adm-export-stout.py adm/adm-fetch-nist.py adm/adm-finalize.py adm/adm-fine-tune.py adm/adm-fix-fnames.py adm/adm-ingest-data.py adm/adm-merge-coll.py adm/adm-merge-nrg.py adm/adm-merge-tp.py adm/adm-query-adas.py adm/adm-register-levels.py adm/adm-register-nocfg.py adm/adm-register-terms.py adm/adm-setup.py - Report end of run to log file with a suitably decorated line. |
||||
13711 |
Directory Listing |
Modified
3 years ago Sat Feb 1 17:02:13 2020 UTC |
marios | |
Log: adm/util/io/log.py - Drop microseconds from reported time. |
||||
13710 |
Directory Listing |
Modified
3 years ago Fri Jan 31 22:24:37 2020 UTC |
fguzman | |
Log: assessing integral values of sink and source terms |
||||
13709 |
Directory Listing |
Modified
3 years ago Fri Jan 31 20:45:17 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py - Bugfix: Command-line option for verbosity was assigned the wrong value. adm/util/io/log.py - Print to stdout by default fetch-NIST-IP.py - Upgraded to python3 |
||||
13708 |
Directory Listing |
Modified
3 years ago Fri Jan 31 20:38:36 2020 UTC |
marios | |
Log: adm/adm-adas-to-stout.py adm/adm-fetch-nist.py - Do not use the python3 command when running scripts in the background. adm/create-elements-module.py - Use '/usr/bin/env python3' when creating module. |
||||
13707 |
Directory Listing |
Modified
3 years ago Fri Jan 31 20:32:28 2020 UTC |
marios | |
Log: Updated to python3. - adm/util/stout/tp.py - adm/util/types.py |
||||
13706 |
Directory Listing |
Modified
3 years ago Fri Jan 31 20:31:24 2020 UTC |
marios | |
Log: Upgraded all scripts to python3. - NistExtractor/NEWrapper.py - adf042stout.py - adm/test/adas/test_adas.py - adm/test/adas/test_eissner.py - adm/test/atoms/test_config.py - adm/test/atoms/test_jtot.py - adm/test/atoms/test_orbitals.py - adm/test/atoms/test_splevel.py - adm/test/atoms/test_spterm.py - adm/test/atoms/test_trans.py - adm/test/cloudy/test_cloudy.py - adm/test/cloudy/test_lines.py - adm/test/cloudy/test_stout_refs.py - adm/test/io/test_dirs.py - adm/test/io/test_log.py - adm/test/io/test_pfile.py - adm/test/io/test_ui.py - adm/test/nist/test_fmt.py - adm/test/nist/test_phtml.py - adm/test/nist/test_refs.py - adm/test/nist/test_tp.py - adm/test/nist/test_web.py - adm/test/ptable/test_elements.py - adm/test/ptable/test_ions.py - adm/test/ptable/test_spectra.py - adm/test/stout/test_c2s.py - adm/test/stout/test_coll.py - adm/test/stout/test_dirtree.py - adm/test/stout/test_fmt.py - adm/test/stout/test_info.py - adm/test/stout/test_meta.py - adm/test/stout/test_nrg.py - adm/test/stout/test_tp.py - adm/test/test_chianti.py - adm/test/test_chtypes.py - adm/test/test_fs.py - adm/test/test_misc.py - adm/test/test_prun.py - adm/test/test_types.py - adm/util/adas/adas.py - adm/util/adas/eissner.py - adm/util/atoms/config.py - adm/util/atoms/jtot.py - adm/util/atoms/orbitals.py - adm/util/atoms/spterm.py - adm/util/atoms/trans.py - adm/util/chianti.py - adm/util/chtypes.py - adm/util/cloudy/cloudy.py - adm/util/cloudy/lines.py - adm/util/cloudy/stout_refs.py - adm/util/fs.py - adm/util/io/dirs.py - adm/util/io/err.py - adm/util/io/log.py - adm/util/io/nicks.py - adm/util/io/pfile.py - adm/util/io/ui.py - adm/util/misc.py - adm/util/nist/err.py - adm/util/nist/fmt.py - adm/util/nist/phtml.py - adm/util/nist/refs.py - adm/util/nist/tp.py - adm/util/nist/web.py - adm/util/prun.py - adm/util/ptable/element_data.py - adm/util/ptable/elements.py - adm/util/ptable/ions.py - adm/util/ptable/spectra.py - adm/util/register/levels.py - adm/util/register/nocfg.py - adm/util/register/terms.py - adm/util/stout/c2s.py - adm/util/stout/coll.py - adm/util/stout/dirtree.py - adm/util/stout/fmt.py - adm/util/stout/info.py - adm/util/stout/meta.py - adm/util/stout/nrg.py - adm/util/stout/tp.py - adm/util/types.py - fetch-NIST-IP.py |
||||
13705 |
Directory Listing |
Modified
3 years ago Fri Jan 31 20:12:29 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py - Restored verbosity flag, and redefined it to apply only to new functionality. |
||||
13704 |
Directory Listing |
Modified
3 years ago Fri Jan 31 04:42:10 2020 UTC |
marios | |
Log: adm/docs/manual/commands.tex - Completed updates to Chapter "Commands". Added section for several commands that were missing. adm/adm-export-stout.py - Script UI description correction. |
||||
13703 |
Directory Listing |
Modified
3 years ago Fri Jan 31 02:28:29 2020 UTC |
marios | |
Log: adm/docs/manual/commands.tex - Updated Chapter "Commands" up to 'adm-register-levels'. |
||||
13702 |
Directory Listing |
Modified
3 years ago Thu Jan 30 23:19:58 2020 UTC |
marios | |
Log: adm/docs/manual/algorithm.tex - Commented out obsolete sections on 'excitation signature' and 'algorigthm description'. |
||||
13701 |
Directory Listing |
Modified
3 years ago Thu Jan 30 23:06:27 2020 UTC |
marios | |
Log: adm/docs/manual/algorithm.tex - Added Sections "Finalize Dataset" and "Export Stout Dataset" to Chapter "Algorithm Description". adm/docs/manual/images/adm-flowchart-export.pdf adm/docs/manual/images/adm-flowchart-finalize.pdf - Added supporting figures. adm/docs/manual/images/adm-flowchart-vertical-sections-setup.pdf - Updated flowchart, changed title of export process to "Export Stout Dataset". |
||||
13699 |
Directory Listing |
Modified
3 years ago Thu Jan 30 19:59:07 2020 UTC |
marios | |
Log: adm/docs/manual/algorithm.tex - Added section on "Collision Data Synthesis" to chapter "Algorithm Description". adm/docs/manual/images/adm-flowchart-collision.pdf - Added supporting figure. |
||||
13698 |
Directory Listing |
Modified
3 years ago Thu Jan 30 16:44:06 2020 UTC |
marios | |
Log: adm/docs/manual/algorithm.tex - Added Section "Data Inspection / Correction" to chapter "Algorithm Description". adm/docs/manual/images/adm-flowchart-inspection.pdf - Added supporting Figure. |
||||
13697 |
Directory Listing |
Modified
3 years ago Thu Jan 30 15:24:06 2020 UTC |
marios | |
Log: adm/docs/manual/algorithm.tex - Added Section "Transition Data Synthesis" to Chapter "Algorithm Description". adm/docs/manual/images/adm-flowchart-transition.pdf - Added supporting figure. |
||||
13696 |
Directory Listing |
Modified
3 years ago Thu Jan 30 14:36:57 2020 UTC |
marios | |
Log: Renamed adm/docs/manual/images/adm-flowchart-levels.pdf to adm/docs/manual/images/adm-flowchart-level.pdf adm/docs/manual/algorithm.tex - Update file name in figure. |
||||
13695 |
Directory Listing |
Modified
3 years ago Thu Jan 30 14:02:48 2020 UTC |
marios | |
Log: adm/docs/manual/algorithm.tex - Added Section "Level Data Synthesis" to Chapter "Algorithm Description". adm/docs/manual/images/adm-flowchart-levels.pdf - Added supporting figure. |
||||
13694 |
Directory Listing |
Modified
3 years ago Thu Jan 30 06:08:27 2020 UTC |
marios | |
Log: adm/docs/manual/algorithm.tex - Added Section on "Level Registration". adm/docs/manual/images/adm-flowchart-registration.pdf - Added registration figure. adm/docs/manual/man.tex - Added quotation. |
||||
13693 |
Directory Listing |
Modified
3 years ago Thu Jan 30 03:45:34 2020 UTC |
marios | |
Log: adm/docs/manual/algorithm.tex - Added Section in "NIST Data Acquisition & Preparation". |
||||
13692 |
Directory Listing |
Modified
3 years ago Thu Jan 30 02:16:08 2020 UTC |
marios | |
Log: adm/adm-fetch-nist.py - Updated call to NistExtractor.py to include all missing command-line options. |
||||
13691 |
Directory Listing |
Modified
3 years ago Thu Jan 30 02:14:21 2020 UTC |
marios | |
Log: adf042stout.py - Explained user prompt in more detail -- previous prompt was a bit obscure. adm/docs/manual/appendix-ML.tex - Added Section on "adf042stout.py updates" to Appenix on Matt's scripts. |
||||
13690 |
Directory Listing |
Modified
3 years ago Thu Jan 30 02:11:04 2020 UTC |
marios | |
Log: Added change log to module's docstring - adm/util/atoms/config.py |
||||
13689 |
Directory Listing |
Modified
3 years ago Thu Jan 30 00:56:52 2020 UTC |
marios | |
Log: Added change log to modules' docstrings. - adm/util/atoms/orbitals.py - adm/util/atoms/splevel.py - adm/util/atoms/spterm.py |
||||
13688 |
Directory Listing |
Modified
3 years ago Thu Jan 30 00:01:35 2020 UTC |
marios | |
Log: adm/docs/manual/appendix-ML.tex - Added Appendix section on "Known Limitations" of NistExtractor.py. |
||||
13687 |
Directory Listing |
Modified
3 years ago Wed Jan 29 23:44:17 2020 UTC |
marios | |
Log: adm/util/nist/tp.py - Simplified user prompt for replacing an existing transition. adm/docs/manual/appendix-ML.tex - Updated Appendix on Matt's scripts to show new prompt. |
||||
13686 |
Directory Listing |
Modified
3 years ago Wed Jan 29 23:39:49 2020 UTC |
marios | |
Log: adm/docs/manual/appendix-ML.tex - Added sub-subsection on "Uncertain Configurations & Terms" to Appendix on Matt's scripts. |
||||
13685 |
Directory Listing |
Modified
3 years ago Wed Jan 29 23:22:27 2020 UTC |
marios | |
Log: adm/util/nist/nrg.py - In level_parse_line(), clean up the J value only if it not empty. Such a case may arise in entries in the levels table that relate to entire terms, instead of levels; for example, the neutral Be entry '1s2.2p.5d 3D*'. |
||||
13684 |
Directory Listing |
Modified
3 years ago Wed Jan 29 23:16:13 2020 UTC |
marios | |
Log: adm/util/atoms/config.py - Bugfix in fmt_econfig(): An certain level terminating in an ancestry term was formatted to use a dot before the question mark, i.e., it ended in '.?'. Fixed: Ending now has the dot removed. adm/test/atoms/test_config.py - Added unit tests of such a level for fmt_econfig() and fix_econfig(). adm/test/atoms/test_orbitals.py - Added unit test for subshells(), involving an uncertain level with an ancestry term as its last element; this makes sure that fmt_econfig() get from fix_econfig() exactly what it should. |
||||
13683 |
Directory Listing |
Modified
3 years ago Wed Jan 29 22:26:38 2020 UTC |
marios | |
Log: adm/util/atoms/orbitals.py - Modified is_ancestor() to allow for a trailing '?'. - Updated fmt_uncertain_subshell() to also process ancestry terms. adm/util/atoms/config.py - Modified fix_hex() to allow for uncertain ancestry terms. adm/test/atoms/test_orbitals.py - Added unit tests for ancestor terms to is_ancestor() and fmt_uncertain_subshell(). adm/test/atoms/test_config.py - Added unit tests for uncertain ancestor terms to fix_hex(). |
||||
13682 |
Directory Listing |
Modified
3 years ago Wed Jan 29 21:37:12 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py - Edited script docstring. - Now issuing a warning for uncertain and unresolved Jtot values, and skipping the level. - Now storing the unprocessed C&T of the level. Used in energy2index() to correctly convert levels to indices for output to the transition Stout file. - Bugfix: The entire table of notes was printed to the energy Stout file when no notes were found in the dataset. Fixed. Now requiring that the list of notes to print not be empty. |
||||
13681 |
Directory Listing |
Modified
3 years ago Wed Jan 29 21:07:09 2020 UTC |
marios | |
Log: adm/util/nist/nrg.py - Updated function form_name() to also accept unassigned terms (i.e., terms that are equal to the integer part of the energy). - Modified EnergyLevel() to also store a LevelName() object, holding an unmodified copy of the C&T read in from the HTML table. adm/test/nist/test_nrg.py - Updated EnergyLevel.set() to also accept a LevelName() for the original 'name' of the level. |
||||
13680 |
Directory Listing |
Modified
3 years ago Wed Jan 29 20:14:15 2020 UTC |
marios | |
Log: adm/util/nist/nrg.py - Removed infrastructure involving boolean variables on whether the term and/or configuration were uncertain. Now that the util.atoms package natively supports uncertain C&T (ending in '?'), and unassigned terms (which hold the integer value of the energy), this infrastructure is not needed. In detail: - Removed keyword arguments for uncertain configs and terms from interface of form_name(). - In LevelName(): - Removed object attributes for uncertain C&T. - In set(): Removed keyword arguments for uncertain C&T. Also, no longer validating unassigned terms. - Reverted call to function form_name() to not use keyword arguments. - Removed uncertainty attributes from pprt(). - In level_parse_line(), removed boolean variables on C&T uncertainty. Also, this means that an unassigned term is returned verbatim by the function. - In adjust_names(), no longer mark the 'main name' as uncertain when its C/T are modified. adm/test/nist/test_nrg.py - Updated unit tests for: - LevelName.set() - EnergyLevel.set() - level_parse_line() |
||||
13679 |
Directory Listing |
Modified
3 years ago Wed Jan 29 19:49:04 2020 UTC |
marios | |
Log: adm/util/nist/phtml.py - Modified sanitize_term() to not remove trailing '?'. adm/test/nist/test_phtml.py - Updated unit tests for sanitize_term(). |
||||
13678 |
Directory Listing |
Modified
3 years ago Wed Jan 29 18:04:22 2020 UTC |
marios | |
Log: adm/util/atoms/config.py - Bugfix: fix_hex() did not preserve the uncertainty character ('?') at the end of a subshell string. Fixed. - Removed needless check against unassigned terms. adm/test/atoms/test_config.py - Modified test for ConfigAlt.econfig_full() to return the full electronic configuration. - Bugfix: Some unit tests of fix_hex() were processing illegal subshells. Fixed. - Added tests for uncertain subshells, configurations, and terms for: - fmt_econfig() - is_spec_config() - validate_spec_config() - compare_spec_levels() - in_multiplet() - parse_alt_configs() - in_multiplet_alt() - are_alt_econfig_same() - are_alt_subshell_lists_same() - are_alt_term_lists_same() - Config(): - multiplet() - econfig() - econfig_full() - term() - Jtot() - parity() -- these were none of these before, even for certain confs! - subshells() - n_excited() - set/get_excitations() - ConfigAlt(): - multiplet() - econfig() - econfig_full() - term() - Jtot() - parity() - subshells() - n_excited() - set/get_excitations() - are_alt_term_lists_same(), but operating on ConfigAlt() objects |
||||
13677 |
Directory Listing |
Modified
3 years ago Wed Jan 29 17:43:00 2020 UTC |
marios | |
Log: adm/util/atoms/orbitals.py - Defined fmt_uncertain_subshell() to produce a subshell string terminating in a '?'. adm/test/atoms/test_orbitals.py - Exercised new function in unit tests. |
||||
13676 |
Directory Listing |
Modified
3 years ago Wed Jan 29 17:41:23 2020 UTC |
marios | |
Log: adm/util/atoms/splevel.py - In is_spec_level() remove uncertainty '?' from term before processing. This gurads against unassigned terms (e.g., '1234e') that also bear a '?'. This shouldn't occur in real data, but it is done here preemptively. adm/test/atoms/test_splevel.py - Exercised new capability of is_spec_level() in unit test. |
||||
13675 |
Directory Listing |
Modified
3 years ago Wed Jan 29 04:41:18 2020 UTC |
marios | |
Log: adm/util/atoms/spterm.py - Updated is_term_unassigned() to allow for the parity ('*') in the term. adm/util/atoms/splevel.py - Bugfix in is_spec_level(): Allow for unassigned terms (those that are equal to the integer part of the energy) with valid Jtot values. Consistency checks between the two are impossible. adm/util/atoms/config.py - Bugfix in parse_config_into_ecl() and parse_config_into_ectJ(): Allow for terms that can be ignored from further processing. These are defined according to spterm.ignore_term(). adm/test/atoms/test_splevel.py - Updated unit tests to is_spec_level() to accept as valid terms that are uncertain, or unassigned. adm/test/atoms/test_config.py - Added unit tests to parse_config_into_ecl() and parse_config_into_ectJ() for uncertain and unassigned configurations and terms. |
||||
13674 |
Directory Listing |
Modified
3 years ago Wed Jan 29 03:42:34 2020 UTC |
marios | |
Log: adm/util/atoms/config.py - In parse_config_into_ecl() remove support for outdated NistExtractor format, where Jtot would precede the term, if the term was obtained from the 'Leading percentages' column. adm/test/atoms/test_config.py - Removed relevant unit tests of parse_config_into_ecl() and parse_config_into_ectJ(). |
||||
13673 |
Directory Listing |
Modified
3 years ago Wed Jan 29 03:21:18 2020 UTC |
marios | |
Log: adm/util/atoms/config.py - In parse_config_into_ecl(): - Updated to not return obsolete variable 'is_term_uncertain'. The meaning of what is uncertain has changed, and can be deduced with the relevant functions of spterm.py. - Now using splevel.parse_Jtot() instead of bare instructions. - Updated parse_config_into_ectJ() to not return variable 'is_term_uncertain'. - In Config(): - Removed '_is_term_uncertain' from object attributes. - Removed method is_term_uncertain(). - In ConfigAlt(): - Removed method is_term_uncertain(). adm/test/atoms/test_config.py - Updated calls to and unit tests of: - parse_config_into_ecl() - parse_config_into_ectJ() - Removed unit tests for method is_term_uncertain() in Config() and ConfigAlt(). adm/test/stout/test_nrg.py - Updated calls to parse_config_into_ectJ(). |
||||
13672 |
Directory Listing |
Modified
3 years ago Wed Jan 29 02:52:35 2020 UTC |
marios | |
Log: adm/util/atoms/splevel.py - Refactored code for parsing Jtot out of a string into function parse_Jtot(). - Updated parse_spec_level() to use parse_Jtot(). adm/test/atoms/test_splevel.py - Exercised parse_Jtot() in unit tests. |
||||
13671 |
Directory Listing |
Modified
3 years ago Tue Jan 28 23:45:10 2020 UTC |
marios | |
Log: adm/util/atoms/splevel.py - Do not validate terms that should be ignored: - are_term_Jtot_consistent() - fmt_spec_level() adm/test/atoms/test_splevel.py - Added unit tests involving terms that are uncertain or should be ignored for functions: - are_term_Jtot_consistent() - fmt_spec_level() - parse_spec_level() - spec_level_nist_fmt() - convert_spec_level_to_real() - convert_spec_level_to_frac() - convert_spec_level_to_plain() - Added missing unit tests appropriate for LK coupling to: - parse_spec_level() - is_spec_level() |
||||
13670 |
Directory Listing |
Modified
3 years ago Tue Jan 28 23:34:50 2020 UTC |
marios | |
Log: adm/util/atoms/spterm.py - Defined module parameter 'uncert' to hold the '?' used with uncertain terms on NIST. - Defined function is_term_mixed() to tell if the term is blank or '*' (just the parity). - In function is_term_unassigned(), which tests if the term is the integer part of the energy, require at least 3 digits up front. - Defined function ignore_term() to tell if the term is mixed, or equal to the energy, or just a '?'. Such terms cannot be processed by a number of functions. - Changed the meaning of an uncertain term to mean one trailed by a '?', not a mixed one. - Defined function sanitize_term() to remove a trailing '?', if present. - In function is_term() ignore trailing '?'. I.e., call sanitize_term() and then process normally. - Updated error message in validate_term(). - Guard against uncertain terms (trailed by '?') in: - are_terms_equiv() - nlevels_term() - calc_gtot() - valid_Jtot() - spec_term_nist_fmt() adm/test/atoms/test_spterm.py - Exercised in unit tests: - is_term_mixed() - ignore_term() - sanitize_term() - Added unit tests against uncertain terms (with a '?') to: - is_term() - validate_term() - are_terms_equiv() - nlevels_term() - calc_gtot() - valid_Jtot() - spec_term_nist_fmt() |
||||
13669 |
Directory Listing |
Modified
3 years ago Tue Jan 28 23:16:03 2020 UTC |
marios | |
Log: adm/util/atoms/config.py - In Config(): - Now fill_subshells() also stores the number of electrons in the ion. - Removed the number of electrons from the interface of set_excitations(), in favor of the stored quantity. - Updated call to orb.n_excited(). - Removed ground subshells from the interface of n_excited(), in favor of the stored list. Method now checks that all required attributes are present. - In pprt(), now also printing the number of electrons. - In ConfigAlt(): - Modified interfaces to methods set_excitations() and n_excited() to mirror changes in Config(). Calls to methods of the latter also updated. adm/util/stout/nrg.py - Updated calls to ConfigAlt() method set_excitations(). adm/test/atoms/test_config.py - Updated calls in unit tests for methods n_excited() & set/get_excitations() of the Config() and ConfigAlt() classes. |
||||
13668 |
Directory Listing |
Modified
3 years ago Tue Jan 28 23:04:15 2020 UTC |
marios | |
Log: adm/util/atoms/orbitals.py - Updated fill_all_subshells() to enter any ancestor terms in the output list of subshells. - Updated get_excitations() to dismiss ancestor terms prior to processing. adm/test/atoms/test_orbitals.py - Exercised new capabilities in unit tests. |
||||
13667 |
Directory Listing |
Modified
3 years ago Tue Jan 28 21:54:37 2020 UTC |
marios | |
Log: adm/util/atoms/orbitals.py - Refactored n_excited() to use get_excitations(). Updated function interface to also require the number of electrons in the ion. adm/test/atoms/test_orbitals.py - Updated unit tests for n_excited(). |
||||
13666 |
Directory Listing |
Modified
3 years ago Tue Jan 28 21:19:34 2020 UTC |
marios | |
Log: adm/util/atoms/orbitals.py - Refactored most code of ground_excitations() to function get_excitations(), returning a list of the number of excited electrons out of each ground state subshell. - Now ground_excitations() calls get_excitations() to acquire the list of excitations. - Renamed ground_excitations() to get_conf_exc_sig() adm/test/atoms/test_orbitals.py - Exercised get_excitations() in unit tests. - Updated calls to and unit tests for ground_excitations(). adm/util/atoms/config.py - Updated call to ground_excitations(). |
||||
13665 |
Directory Listing |
Modified
3 years ago Tue Jan 28 20:47:42 2020 UTC |
marios | |
Log: adm/util/atoms/orbitals.py - Defined function is_subshell_uncertain() to tell if a '?' appears at the end of a subshell string. - Defined sanitize_subshell() to remove a trailing '?', if present. - Updated __parse_subshell() to use sanitize_subshell() before any processing. adm/test/atoms/test_orbitals.py - Exercised is_subshell_uncertain() and sanitize_subshell() in unit tests. - Added unit tests to other functions in connection to the trailing '?'. |
||||
13664 |
Directory Listing |
Modified
3 years ago Tue Jan 28 16:53:51 2020 UTC |
marios | |
Log: Prepare for uncertain configurations, marked by a final '?'. To eschew confusion, function name changes are in order. adm/util/atoms/orbitals.py - Renamed is_nprim_uncertain() to is_nprim_mixed() - Renamed is_subshell_uncertain() to is_subshell_mixed() - Expanded the explanation in their docstrings. adm/test/atoms/test_orbitals.py - Updated function calls and test function names. |
||||
13663 |
Directory Listing |
Modified
3 years ago Tue Jan 28 16:39:55 2020 UTC |
marios | |
Log: adm/util/atoms/orbitals.py - Updated functions to accept uncertain configuration assignments, such as the neutral Al term y2D, which has a configuration of 3s2.nd. - Defined function is_nprim_uncertain() to tell if the principal quantum number is uncertain (given as 'n'). - Updated is_Lorb() to not test for consistency between the principal quantum and the angular momentum if the former is uncertain. - Updated __parse_subshell() to not search for a numerical value for nprim, if uncertain. - Updated is_subshell() and validate_subshell() to also accept uncertain principal quantum numbers. - Updated subshell_info() to not validate nprim and Lorb, when the former is uncertain. - Defined is_subshell_uncertain() to tell if a subshell is uncertain, based on its principal quantum number. - Updated fill_all_subshells() to ignore all ancestor terms and uncertain subshells at the end of the configuration. Previously, it checked only the final subshell for ancestor terms. Uncertain subshells are appended at the end of the subshell list produced by the filling algorithm. - Updated ground_excitations() to work with uncertain subshells in the excited configuration. adm/test/atoms/test_orbitals.py - Added unit tests for is_nprim_uncertain() and is_subshell_uncertain(). - Updated unit tests against input of uncertain subshells. |
||||
13662 |
Directory Listing |
Modified
3 years ago Sun Jan 26 16:04:33 2020 UTC |
marios | |
Log: adm/util/nist/nrg.py - Updated is_term_uncert() to allow for trailing characters after the value of the energy in the given term. - Blank terms, and term of '*' are now also flagged as uncertain. adm/test/nist/test_nrg.py - Exercised new functionality of is_term_energy() in unit tests from Fe I. - Added unit tests of level_parse_line() for picking up missing and '*' term values. |
||||
13661 |
Directory Listing |
Modified
3 years ago Sun Jan 26 14:49:19 2020 UTC |
marios | |
Log: adm/util/nist/nrg.py - Modified form_name() to accept two keyword arguments for uncertain configurations and terms. Currently unused. - In LevelName(): - Store flags for uncertain configurations and terms. - Updated interface to method set() to turn the percentages into a keyword argument, and also added keyword arguments for uncertain configurations and terms. - Updated method form_name() to call the homonymous function with the additional keywords. Also updated pprt() to report the new variables. - In EnergyLevel(): - Removed all commented-out lines involving object attributes for uncertain configurations and terms. These are now embedded in LevelName() and set only for the 'main_name' data field (attribute). - Removed term_is_energy(), a duplicate of is_term_energy(). - Modified adjust_names() to set the relevant uncertainty flags of the main name to False, when its conf or term are reset. adm/test/nist/test_nrg.py - Updated unit tests for LevelName.set(). Also, added unit test for uncertain conf & term. - Updated __compare_LevelName_objects() to also compare flags for uncertain conf & term. - In __confirm_EnergyLevel(), now using __compare_LevelName_objects() to compare all the values of objects, not just conf & term. - Removed test_term_is_energy(). Its tests are now absorbed by test_is_term_energy(). |
||||
13660 |
Directory Listing |
Modified
3 years ago Sun Jan 26 03:42:39 2020 UTC |
marios | |
Log: adm/util/nist/nrg.py - Defined function is_term_energy() to tell if the given term is the same as the integer part of the energy. - In level_parse_line(): - Check if configuration and term have a trailing '?', and set uncertainty flags accordingly. - Also mark the term as uncertain if the term is the same as the energy, according to is_term_energy(). - Return the flags for uncertain configuration and term. adm/test/nist/test_nrg.py - Exercised is_term_energy() in unit tests. - Updated existing units test for level_parse_line(). - Also added unit tests for the new capability of detecting uncertain configurations (trailing ?) and terms (trailing ?, (integer) energy values). |
||||
13659 |
Directory Listing |
Modified
3 years ago Sun Jan 26 03:09:52 2020 UTC |
marios | |
Log: adm/docs/manual/appendix-ML.tex - Add HTML reference to the NIST section on ionization energies as a footnote. |
||||
13658 |
Directory Listing |
Modified
3 years ago Sun Jan 26 02:51:10 2020 UTC |
marios | |
Log: adm/util/nist/refs.py - Remove all instances of boldface markup from journal string. Previously, only the markup for the outermost grouping of <b> and </b> would be removed. |
||||
13657 |
Directory Listing |
Modified
3 years ago Sun Jan 26 01:25:48 2020 UTC |
marios | |
Log: adm/util/nist/phtml.py - Modified sanitize_term(): - To remove all spaces before further processing (was done last). - To remove question marks only if the appear at the end of the string. adm/util/nist/nrg.py - Removed commented-out for detecting a question mark after an energy value. This is already recorded as a note, when found. adm/test/nist/test_phtml.py - Exercised new functionality of sanitize_term() in unit test. adm/test/nist/test_nrg.py - Removed absurd test of parse_ionization(), which tried to ignore a reference present in the HTML data line. Such cases cannot exist -- if the ref is there, that's because it has been requested. - Added unit test to exercise the retention of question marks in ancestry terms. |
||||
13656 |
Directory Listing |
Modified
3 years ago Sat Jan 25 18:57:41 2020 UTC |
marios | |
Log: adm/docs/manual/adm-macros.tex - Include macros for formatting the configuration and spectroscopic level. adm/docs/manual/appendix-ML.tex - Added Section "Ionization Potential" in Appendix on updates to NistExtractor. adm/util/nist/nrg.py - Bugfix: Last column was dismissed even when references were not requested. Fixed. |
||||
13655 |
Directory Listing |
Modified
3 years ago Sat Jan 25 18:08:01 2020 UTC |
marios | |
Log: adm/docs/manual/appendix-ML.tex - In Section "Notes on Energy Values", point to Appendix "NIST Notes" for a complete reference of notes. |
||||
13654 |
Directory Listing |
Modified
3 years ago Sat Jan 25 18:01:26 2020 UTC |
marios | |
Log: adm/adm-nist-notes.py - Added script to write the table of NIST notes and explanations to a text file. adm/docs/manual/appendix-notes.tex - Added TeX file of an (Appendix) Chapter with all NIST notes. adm/docs/manual/man.tex - Added Appendix Chapter, after the Matt Lykins script updates. adm/docs/manual/mkpdf - Turned into a Bash script. - Now runs adm/adm-nist-notes.py if the file 'NIST-notes.txt' does not exist before creating the PDF. |
||||
13653 |
Directory Listing |
Modified
3 years ago Sat Jan 25 17:44:07 2020 UTC |
marios | |
Log: - Renamed: adm/docs/manual/appendix.tex to: adm/docs/manual/appendix-ML.tex adm/docs/manual/man.tex - Updated to use the new file name. |
||||
13652 |
Directory Listing |
Modified
3 years ago Sat Jan 25 17:33:22 2020 UTC |
marios | |
Log: adm/docs/manual/appendix.tex - Added section "Notes on Energy Values". |
||||
13650 |
Directory Listing |
Modified
3 years ago Sat Jan 25 03:40:11 2020 UTC |
gary | |
Log: svn merge -r12905:12909 ^/trunk/data/SED |
||||
13649 |
Directory Listing |
Modified
3 years ago Sat Jan 25 03:35:45 2020 UTC |
gary | |
Log: svn merge -r13646:13648 ^/trunk |
||||
13646 |
Directory Listing |
Modified
3 years ago Sat Jan 25 00:52:07 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py - Now printing a table of notes used in the code and their meaning near the end of the file -- in the comment section, before the references. This is subject to the script being called with '-n' (fetch notes). |
||||
13645 |
Directory Listing |
Modified
3 years ago Sat Jan 25 00:44:57 2020 UTC |
marios | |
Log: adm/util/nist/fmt.py - In fmt_note_output(), turned argument 'message' to keyword. - In form_nrg_comment(): - Now printing the note before the reference. - Now omitting the message from the note text. adm/test/nist/test_fmt.py - Updated unit tests for form_nrg_comment(). |
||||
13644 |
Directory Listing |
Modified
3 years ago Sat Jan 25 00:37:43 2020 UTC |
marios | |
Log: adm/util/nist/phtml.py - Modified extract_note() to separate codes with a comma. adm/util/nist/notes.py - Added functionality to print a table of notes to a file handle. The table is ordered alphabetically by key, which may be combined into comma-separated keys for identical messages (happens for '[' and ']'). Lines are folded at 80 characters. - The function __prepare_table() is self-explanatory. - The actual formatting is done by print_table(). adm/test/nist/test_phtml.py - Updated failing test that involved '[' and ']'. adm/test/nist/test_notes.py - Exercised new functions in unit tests. |
||||
13643 |
Directory Listing |
Modified
3 years ago Fri Jan 24 22:32:11 2020 UTC |
marios | |
Log: adm/util/nist/fmt.py - Imported notes module. (Importing nrg instead created a circular module dependence.) - Bugfix in fmt_note_output(): Guard against empty message. - Updated form_nrg_comment() to new singleton module notes: removed object of the now obsolete Notes() class. adm/test/nist/test_fmt.py - Updated tests for fmt_note_output(), and added new tests to allow for empty messages. - Updated tests for form_nrg_comment() to new module notes.py, and removed obsolete Notes() objects. NistExtractor/NistExtractor.py - Update to new modules and interfaces. |
||||
13642 |
Directory Listing |
Modified
3 years ago Fri Jan 24 22:29:17 2020 UTC |
fguzman | |
Log: Final version of kbn() function. |
||||
13641 |
Directory Listing |
Modified
3 years ago Fri Jan 24 22:15:58 2020 UTC |
marios | |
Log: adm/util/nist/nrg.py - Moved infrastructure for energy notes to module notes.py adm/util/nist/notes.py - Class was removed in favor of a module-wide data storage. The module is effectively a singleton. adm/test/nist/test_nrg.py - Moved unit test to test_notes.py. adm/test/nist/test_notes.py - Content from test_nrg.py adapted to new singleton architecture. |
||||
13640 |
Directory Listing |
Modified
3 years ago Fri Jan 24 21:24:16 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py - Update to new location of Notes in nnrg. adm/util/nist/tp.py - Imported missing module nist.err. |
||||
13639 |
Directory Listing |
Modified
3 years ago Fri Jan 24 21:22:55 2020 UTC |
marios | |
Log: - Moved energy Notes() class from: adm/util/nist/web.py to: adm/util/nist/nrg.py - Moved energy Notes() class from: adm/test/nist/test_web.py to: adm/test/nist/test_nrg.py |
||||
13638 |
Directory Listing |
Modified
3 years ago Fri Jan 24 21:08:05 2020 UTC |
marios | |
Log: adm/test/nist/test_nrg.py - Updated to use module nist.nrg instead of nist.parse. |
||||
13637 |
Directory Listing |
Modified
3 years ago Fri Jan 24 20:52:57 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py - Updated to new modules nist.nrg and nist.tp. |
||||
13636 |
Directory Listing |
Modified
3 years ago Fri Jan 24 20:51:32 2020 UTC |
marios | |
Log: adm/util/nist/tp.py - Bugfix: Imported missing module util.io.ui. adm/util/nist/nrg.py - Removed extraneous module util.io.ui. |
||||
13635 |
Directory Listing |
Modified
3 years ago Fri Jan 24 20:47:17 2020 UTC |
marios | |
Log: - Renamed: adm/util/nist/parse.py to: adm/util/nist/nrg.py - Renamed: adm/test/nist/test_parse.py to: adm/test/nist/test_nrg.py |
||||
13634 |
Directory Listing |
Modified
3 years ago Fri Jan 24 20:43:21 2020 UTC |
marios | |
Log: adm/util/nist/parse.py - Bugfix in parse_ionization(): If the reference is in the data, but it was not requested, the function used to not get rid of it, which led to a crash. Fixed; now the last column (ref) is always removed. - Renamed variable 'have_leading_percentages' to 'have_LP'. adm/test/nist/test_parse.py - Updated unit test of EnergyLevel.set_percentages() to new behavior for terms in different coupling schemes, r13627. - Bugfix: Updated parse_ionization unit tests to include the flag to fetch the references. - Added unit tests to address possible values of new parameter. |
||||
13633 |
Directory Listing |
Modified
3 years ago Fri Jan 24 20:12:15 2020 UTC |
marios | |
Log: adm/util/nist/parse.py adm/util/nist/tp.py - Moved definitions for classes RadTrans() and AllRadTrans() to tp.py module. adm/test/nist/test_parse.py adm/test/nist/test_tp.py - Moved unit tests for these classes to test_tp.py. |
||||
13632 |
Directory Listing |
Modified
3 years ago Fri Jan 24 17:51:54 2020 UTC |
marios | |
Log: adm/docs/manual/appendix.tex - Added Section "Duplicate Transitions". |
||||
13631 |
Directory Listing |
Modified
3 years ago Fri Jan 24 17:31:13 2020 UTC |
marios | |
Log: adm/docs/manual/appendix.tex - Added sections on "References" and "Accuracy of Transition Probability". |
||||
13630 |
Directory Listing |
Modified
3 years ago Fri Jan 24 16:49:55 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py - Bugfix: Comments for energy levels were generated on the condition that the secondary configuration be defined. This prevented other data (notes and/or refcodes) from being printed to the output file when they could have been. Fixed. - To avoid repetition of bibliographical records being written to energy files the lists for levels and ionization potential have been joined into one that is printed instead. It also returned to main(), and used with the saving of the master list of references (including for line data). |
||||
13629 |
Directory Listing |
Modified
3 years ago Fri Jan 24 15:44:08 2020 UTC |
marios | |
Log: adm/docs/manual/appendix.tex - Added section on changes to level notation in output of NistExtractor. - Added example of leading components in different coupling schemes, of which one is not dominant. - Other texts updates. adm/docs/manual/adm-macros.tex - Defined commands for species and spectra designations. adm/docs/manual/man.tex - Moved package imports to head_info.tex. adm/docs/manual/head_info.tex - Also removed Hazy-related macros (already commented out). |
||||
13628 |
Directory Listing |
Modified
3 years ago Fri Jan 24 04:54:27 2020 UTC |
marios | |
Log: adm/docs/manual/appendix.tex - Added subsections on "Additional State Information", and "Miscellaneous Changes". |
||||
13627 |
Directory Listing |
Modified
3 years ago Fri Jan 24 04:51:34 2020 UTC |
marios | |
Log: adm/util/nist/parse.py - Print percentages in the output even for different coupling schemes. |
||||
13626 |
Directory Listing |
Modified
3 years ago Fri Jan 24 04:22:49 2020 UTC |
marios | |
Log: adm/util/nist/parse.py - BUGFIX: In parse_lp_column(), inner function parse_portion(), the code would bail when it would find more than one strings in the configuration. Now, it has been changed to concatenate all strings into one, and bail only if the produced string is not a configuration. - Bugfix: Imported missing nist.err module. |
||||
13625 |
Directory Listing |
Modified
3 years ago Fri Jan 24 02:57:43 2020 UTC |
marios | |
Log: adm/docs/manual/appendix.tex - Reworked subsection "Original Data". |
||||
13624 |
Directory Listing |
Modified
3 years ago Fri Jan 24 02:39:57 2020 UTC |
marios | |
Log: adm/docs/manual/appendix.tex - Updated Appendix section on User Interface. |
||||
13623 |
Directory Listing |
Modified
3 years ago Fri Jan 24 02:26:58 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py - Do not disable output to STDOUT with the '-s' option. - Updated comments on '-s' option to emphasize that the script does not keep completely quiet. |
||||
13622 |
Directory Listing |
Modified
3 years ago Fri Jan 24 02:08:39 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py - Added command-line option '--ip' to extract the ionization potential of the species. |
||||
13621 |
Directory Listing |
Modified
3 years ago Fri Jan 24 01:13:07 2020 UTC |
gary | |
Log: this will be c17.02 |
||||
13620 |
Directory Listing |
Modified
3 years ago Fri Jan 24 01:04:22 2020 UTC |
gary | |
Log: update md5 checksum file |
||||
13619 |
Directory Listing |
Modified
3 years ago Thu Jan 23 23:06:37 2020 UTC |
marios | |
Log: adm/util/nist/fmt.py - Defined function form_tp_comment() to put together comment for .tp files. adm/test/nist/test_fmt.py - Exercised new function in unit tests. NistExtractor/NistExtractor.py - Used new function instead of staight-up code in get_transitions(). |
||||
13618 |
Directory Listing |
Modified
3 years ago Thu Jan 23 22:35:21 2020 UTC |
marios | |
Log: adm/util/nist/fmt.py - Renamed form_comment() to form_nrg_comment() and parse_comment() to parse_nrg_comment() adm/test/nist/test_fmt.py - Updated unit tests for form_nrg_comment() and parse_nrg_comment(). NistExtractor/NistExtractor.py adm/util/stout/nrg.py - Updated calls to form_nrg_comment() and parse_nrg_comment(). |
||||
13617 |
Directory Listing |
Modified
3 years ago Thu Jan 23 22:11:42 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py - Added command-line option to fetch the 'Leading percentages' column. No longer done by default. - Now bibliography is fetched only if requested. adm/util/nist/parse.py - In parse_ionization(), the bibliographical reference is processed only if requested on the web call to NIST. |
||||
13616 |
Directory Listing |
Modified
3 years ago Thu Jan 23 21:20:53 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py - Added command line option '--html' to save original HTML tables. It is not done by default anymore. |
||||
13615 |
Directory Listing |
Modified
3 years ago Thu Jan 23 20:55:05 2020 UTC |
gary | |
Log: adjust grains in sim |
||||
13614 |
Directory Listing |
Modified
3 years ago Thu Jan 23 20:46:47 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py adm/util/nist/files.py - Renamed append_to_unaccepted_TP_file() to append_to_ignored_TP_file() |
||||
13613 |
Directory Listing |
Modified
3 years ago Thu Jan 23 20:38:57 2020 UTC |
marios | |
Log: adm/util/nist/files.py - Broke up functions get_energy_filenames() and get_transition_filenames() into separate functions one for each filename they'd return: - get_html_energy_filename() - get_energy_filename() - get_html_transition_filename() - get_ignored_transition_filename() - get_transition_filename() NistExtractor/NistExtractor.py - Updated calls. |
||||
13612 |
Directory Listing |
Modified
3 years ago Thu Jan 23 20:19:13 2020 UTC |
gary | |
Log: update monitors on cloud9 following change in s-p he-like collisions in r13594 |
||||
13611 |
Directory Listing |
Modified
3 years ago Thu Jan 23 20:13:13 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py - Moved all file-related functions from the script into module below. adm/util/nist/files.py - Added new module. |
||||
13610 |
Directory Listing |
Modified
3 years ago Thu Jan 23 19:44:07 2020 UTC |
marios | |
Log: adm/util/nist/parse.py - Removed flag for uncertain levels from data of EnergyLevel() objects. - Added commented-out checks for uncertain configuration, term, and energy in level_parse_line(). The checks must be done there, before the data fields are sanitized. adm/test/nist/test_parse.py - Updated unit tests to ignore the uncertainty flag in tests of EnergyLevel.set() and EnergyLevel.set_spec_levels(). |
||||
13609 |
Directory Listing |
Modified
3 years ago Thu Jan 23 19:06:19 2020 UTC |
marios | |
Log: adm/util/nist/parse.py - Updated form_name() to produce a valid state-information string when the entire term is given, instead of a (J-specific) level. adm/test/nist/test_parse.py - Exercised new functionality in form_name() and LevelName.form_name() unit tests. |
||||
13608 |
Directory Listing |
Modified
3 years ago Thu Jan 23 15:02:48 2020 UTC |
marios | |
Log: adm/util/atoms/config.py - Defined function fmt_config_output_noJ() to generate output for terms, that is, (NIST) levels with no Jtot information. adm/test/atoms/test_config.py - Exercised fmt_config_output_noJ() in unit tests. |
||||
13607 |
Directory Listing |
Modified
3 years ago Thu Jan 23 14:36:21 2020 UTC |
marios | |
Log: adm/util/atoms/spterm.py - Extracted code from spec_level_nist_fmt() to format term in the NIST idiom as a stand-alone function, spec_term_nist_fmt(). adm/util/atoms/splevel.py - Now calling spec_term_nist_fmt() from spec_level_nist_fmt(), in lieu of the extracted code. adm/test/atoms/test_spterm.py - Exercised spec_term_nist_fmt() in unit tests. |
||||
13606 |
Directory Listing |
Modified
3 years ago Thu Jan 23 04:09:47 2020 UTC |
marios | |
Log: Missed module file in previous commit... |
||||
13605 |
Directory Listing |
Modified
3 years ago Thu Jan 23 04:08:23 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py - Adapted to allow for missing values of Jtot, if the statistical weight is present. The latter refer to the entire term in such cases. adm/util/nist/parse.py - In EnergyLevel.set(), made validation of Jtot values occur only if these are not None. |
||||
13604 |
Directory Listing |
Modified
3 years ago Thu Jan 23 03:52:15 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py - Updated script to current state of parse.py. - In get_energies(): - Removed all 'temp_' prefixes from variables. - Stopped skipping levels with no term and no Jtot. - Now resolving mixed terms ('*') before entering to level list. Removed all relevant post-processing. - Now using nist.fmt.form_comment() to prepare comment for output in energy files, instead of putting it together in the output loop. - Now using Stout format function for energy output records. |
||||
13603 |
Directory Listing |
Modified
3 years ago Thu Jan 23 03:41:56 2020 UTC |
marios | |
Log: adm/util/nist/parse.py - Imported missing module ui.py from subpackage util.io. adm/test/nist/test_parse.py - Exercised AllRadTrans.insert() in unit tests. |
||||
13602 |
Directory Listing |
Modified
3 years ago Thu Jan 23 02:55:52 2020 UTC |
marios | |
Log: adm/util/nist/parse.py - In RadTrans.set(), check that float value for Einstein A is also positive. adm/test/nist/test_parse.py - Added unit tests for RadTrans.set(). |
||||
13601 |
Directory Listing |
Modified
3 years ago Thu Jan 23 02:29:19 2020 UTC |
marios | |
Log: adm/util/nist/parse.py - Removed function convert_energy_to_float(). adm/test/nist/test_parse.py - Removed unit tests for convert_energy_to_float(). |
||||
13600 |
Directory Listing |
Modified
3 years ago Thu Jan 23 02:01:07 2020 UTC |
marios | |
Log: adm/util/nist/parse.py - Removed now obsolete functions: - one_true_in_list() - level_exists() - resolve_uncertain() - is_any_level_uncertain() These were related to resolving mixed terms ('*') in post-processing. However, these are now resolved during normal processing by adjust_names(). |
||||
13599 |
Directory Listing |
Modified
3 years ago Thu Jan 23 01:54:44 2020 UTC |
marios | |
Log: adm/util/nist/parse.py - Removed EnergyLevel.set_statw(), because mixed terms ('*') are no longer resolved in post-processing, so the statistical weights are set before the level is added to the level list. - In adjust_statw(), remove comment talking about resolving mixed terms ('*') in post-processing. adm/test/nist/test_parse.py - Removed EnergyLevel.set_statw() unit tests. |
||||
13598 |
Directory Listing |
Modified
3 years ago Thu Jan 23 01:40:59 2020 UTC |
marios | |
Log: adm/util/nist/parse.py - In EnergyLevel(): - Replaced data fields 'config' and 'term' with 'main_name' which holds a LevelName() object. - Renamed field 'J' to 'Jtot'. - Removed field 'termbare'. - In set(), added type checks. - In set_spec_levels(), removed guard against term of '*'. adm/test/nist/test_parse.py - Updated all calls to unit tests to make use of LevelName() objects for the main name of the term. |
||||
13597 |
Directory Listing |
Modified
3 years ago Wed Jan 22 19:00:51 2020 UTC |
marios | |
Log: adm/util/nist/parse.py - Updated debugging statements in adjust_names(). |
||||
13596 |
Directory Listing |
Modified
3 years ago Wed Jan 22 18:59:01 2020 UTC |
marios | |
Log: adm/util/atoms/orbitals.py - BUGFIX in are_subshell_lists_equiv(): Logic allowed for an ancestor term to be compared against a subshell. Fixed. |
||||
13595 |
Directory Listing |
Modified
3 years ago Wed Jan 22 18:30:58 2020 UTC |
marios | |
Log: adm/util/nist/parse.py - In LevelName(): - Defined attribute (data field) 'is_set' to tell if an object has been initialized with the set() method. - Added keyword argument to pprt() to limit print out to set() values. - In swap_names(): - Renamed to adjust_names(). The function now adjusts the internal data of LevelName() objects in place, without requiring return of any (new) variables. - The function takes up the slack left by 'parse_lp_column', and sets the configuration and term of the first leading components as needed, provided that the nominal term is known. It also swaps them LP names around (but in place), as before. - If the term is unknown, it sets the configurations of the components as needed, and sets the nominal term to that of the either component, if known, and if both components are in the same coupling scheme and have the same configuration. - Finally, if the first component is the same as the nominal, but its configuration retains ancestry information, while the nominal does not, the former is used as the latter. adm/test/nist/test_parse.py - Exercised adjust_names() in unit tests. |
||||
13594 |
Directory Listing |
Modified
3 years ago Wed Jan 22 12:56:47 2020 UTC |
gary | |
Log: svn merge -r13513:13514 ^/trunk/source |
||||
13593 |
Directory Listing |
Modified
3 years ago Wed Jan 22 12:51:49 2020 UTC |
marios | |
Log: adm/util/nist/parse.py - Changes to function parse_leading_percentages(): - Renamed to parse_lp_column(). - Dropped configuration and term from interface of parse_lp_column(). Setting blank fields will be taken care of by a different function. - Refactored (almost) repetitive code into inner function, parse_portion(), which extracts any of the configuration, term, and percentage that are present, and returns them as LevelName() object. - Changed behavior to now parse the column even when a second percentage is not present. This typically recovers the percentage of the 'official' level name, i.e., according to its Configuration and Term columns. adm/test/nist/test_parse.py - Exercised function parse_lp_column() in unit tests. |
||||
13592 |
Directory Listing |
Modified
3 years ago Wed Jan 22 03:45:47 2020 UTC |
marios | |
Log: adm/util/nist/parse.py - Updated adjust_statw(): - It now accepts int, float, and str values for statw and Jtot. - Replaced checks on term validity with a call to spterm.is_term(). adm/test/nist/test_parse.py - Exercised adjust_statw() in unit tests. |
||||
13591 |
Directory Listing |
Modified
3 years ago Wed Jan 22 03:27:39 2020 UTC |
marios | |
Log: adm/util/nist/parse.py - Removed optional keyword 'current_line' from convert_energy_to_float(). |
||||
13590 |
Directory Listing |
Modified
3 years ago Wed Jan 22 03:13:49 2020 UTC |
marios | |
Log: adm/util/nist/parse.py - Renamed adjust_J_statw() to adjust_statw(). Simplified its logic and removed error messages that obfuscated its purpose. The function now returns only the statistical weight. |
||||
13589 |
Directory Listing |
Modified
3 years ago Wed Jan 22 02:34:04 2020 UTC |
marios | |
Log: adm/util/nist/parse.py - Broke function swap_names() out of parse_leading_percentages(). The new function used to be listed at the end of the latter. - Removed Jtot from argument list of parse_leading_percentages(). |
||||
13588 |
Directory Listing |
Modified
3 years ago Wed Jan 22 00:34:14 2020 UTC |
marios | |
Log: adm/util/nist/parse.py - In adjust_J_statw(): - Turned 'current_line' and 'silent' into keyword arguments. Adjusted print statements accordingly. - Removed useless if-branch for term of '*'. It was setting the statistical weight to None, even though it was already None or empty string. |
||||
13587 |
Directory Listing |
Modified
3 years ago Tue Jan 21 22:33:33 2020 UTC |
marios | |
Log: adm/util/nist/parse.py - Removed unused function convert_J_to_float(). |
||||
13586 |
Directory Listing |
Modified
3 years ago Tue Jan 21 22:31:56 2020 UTC |
marios | |
Log: adm/util/nist/parse.py - In convert_energy_to_float(), turned 'current_line' into optional keyword. Output of relevant portion of error message contigent on the line's presence. adm/test/nist/test_parse.py - Exercised convert_energy_to_float() in unit tests. |
||||
13585 |
Directory Listing |
Modified
3 years ago Tue Jan 21 22:11:57 2020 UTC |
marios | |
Log: adm/test/nist/test_parse.py - Exercised term_is_energy() in unit tests. |
||||
13584 |
Directory Listing |
Modified
3 years ago Tue Jan 21 21:56:19 2020 UTC |
marios | |
Log: adm/util/nist/parse.py - In level_parse_line(), change the default value of 'note' from None to empty string. adm/test/nist/test_parse.py - Exercised level_parse_line() in unit tests. |
||||
13583 |
Directory Listing |
Modified
3 years ago Tue Jan 21 19:54:58 2020 UTC |
marios | |
Log: adm/util/nist/parse.py - Bugfix in EnergyLevel.set_percentages(): Check that neither percentage is None when setting the percentages string for output. |
||||
13582 |
Directory Listing |
Modified
3 years ago Tue Jan 21 19:44:16 2020 UTC |
marios | |
Log: adm/util/nist/phtml.py - Modify extract_note() to return empty string when no note is present. adm/test/nist/test_phtml.py - Updated unit tests. |
||||
13581 |
Directory Listing |
Modified
3 years ago Tue Jan 21 04:43:18 2020 UTC |
marios | |
Log: adm/util/nist/parse.py - In parse_ionization(), removed all leading and trailing spaces from all retrieved data. adm/test/nist/test_parse.py - Exercised parse_ionization() in unit tests. |
||||
13580 |
Directory Listing |
Modified
3 years ago Tue Jan 21 04:03:40 2020 UTC |
marios | |
Log: adm/util/nist/parse.py - In LevelName(): - Initialized data fields 'spec_level' and 'spec_config' to None. That is, these are now created when the object is created, not when form_name() is called. - Added method pprt() for pretty-printing of data structure. - In EnergyLevel(): - In set(), add check against None values in the percentage fields of the name1/2 fields. - Removed superfluous method can_form_comment(). |
||||
13579 |
Directory Listing |
Modified
3 years ago Tue Jan 21 03:18:42 2020 UTC |
marios | |
Log: adm/util/nist/parse.py - Imported missing modules from util.io: err.py and log.py. - In EnergyLevel(): - In set(), added check that the sum of two percentages from the same coupling scheme do not add up to more than 100%. - In set_percentages(), the percentages are not printed unless they are computed in the same coupling scheme. adm/test/nist/test_parse.py - Exercised EnergyLevel.set_percentages() in unit tests. |
||||
13578 |
Directory Listing |
Modified
3 years ago Tue Jan 21 02:50:34 2020 UTC |
marios | |
Log: adm/util/nist/parse.py - In EnergyLevel.set_statw(): - Make 'silent' a keyword argument with a default value of True, so that it is not required to pass a value to the method. - Remove test of term being '*' for running the method. All that is needed is for the statistical weight to not be defined. adm/test/nist/test_parse.py - Exercised EnergyLevel.set_statw() in unit tests. |
||||
13577 |
Directory Listing |
Modified
3 years ago Tue Jan 21 02:25:14 2020 UTC |
marios | |
Log: adm/util/nist/parse.py - Bugfix in EnergyLevel.set_spec_levels(): Set the names of the configurations in the Leading Percentages column only if defined. adm/test/nist/test_parse.py - Exercised EnergyLevel.set_spec_levels() in unit tests. |
||||
13576 |
Directory Listing |
Modified
3 years ago Tue Jan 21 00:38:17 2020 UTC |
marios | |
Log: adm/test/nist/test_parse.py - Exercised EnergyLevel.set() in unit tests. adm/util/nist/parse.py - Renamed EnergyLevel.configuration to EnergyLevel.config |
||||
13575 |
Directory Listing |
Modified
3 years ago Mon Jan 20 23:31:22 2020 UTC |
marios | |
Log: adm/util/nist/parse.py - Defined function form_name() to standardize the 'name' of NIST levels. Used from LevelName.form_name() and EnergyLevel.set_spec_levels(). - In EnergyLevel(): - Renamed data fields 'other_name_1/2' to 'name1/2'. - Replaced stray data fields 'ld1_config, ld1_term, ld1_pc' (and 'ld2' equivalents) with LevelName() objects. - Defined method can_form_comment(). - Using an int instead of a float for the statistical weight in set_statw() and in adjust_J_statw(). - Updated parse_leading_percentages() to return two LevelName() objects instead of 6 strings for the configuration, term, and percentage of the two entries in the column. - Renamed variable 'ld2_is_alt' to 'have_other_scheme', a more appropriate name. adm/test/nist/test_parse.py - Exercised function parse_name() and LevelName methods in unit tests. |
||||
13574 |
Directory Listing |
Modified
3 years ago Mon Jan 20 23:26:34 2020 UTC |
marios | |
Log: adm/util/atoms/spterm.py - Updated calc_gtot*() family of functions to return positive ints. Results validated before return. adm/test/atoms/test_spterm.py - Updated unit tests for calc_gtot*() family of functions. - Fixed broken calls to test_are_terms_equiv(). |
||||
13573 |
Directory Listing |
Modified
3 years ago Mon Jan 20 22:40:16 2020 UTC |
marios | |
Log: adm/util/stout/nrg.py - Updated EnergyRecord.compose_line() to validate that the statistical given is both an integer _and_ positive (not checked before). |
||||
13572 |
Directory Listing |
Modified
3 years ago Mon Jan 20 22:36:41 2020 UTC |
marios | |
Log: adm/util/atoms/spterm.py - No longer count unassigned or uncertain terms as valid. adm/test/atoms/test_spterm.py - Adjusted unit tests of is_term(). - Exercised validate_term() in unit tests. |
||||
13571 |
Directory Listing |
Modified
3 years ago Mon Jan 20 05:06:15 2020 UTC |
marios | |
Log: adm/util/atoms/spterm.py - Defined function is_term_uncertain() to check if the term is given as '*'. adm/test/atoms/test_spterm.py - Exercised functions is_term_unassigned() and is_term_uncertain() in unit tests. |
||||
13570 |
Directory Listing |
Modified
3 years ago Mon Jan 20 03:24:13 2020 UTC |
marios | |
Log: adm/util/nist/fmt.py - Defined function form_comment() to prepare a NIST level's comment string for output to Stout files. adm/test/nist/test_fmt.py - Exercised new function in unit tests. adm/util/nist/web.py - Added classmethod Notes.validate(). |
||||
13569 |
Directory Listing |
Modified
3 years ago Sun Jan 19 20:50:06 2020 UTC |
marios | |
Log: adm/util/atoms/config.py - In parse_config_into_ectJ(), use splevel.validate_term_Jtot_consistent() instead of simply checking that a valid Jtot has been given. - Defined function is_spec_config(), a bool wrapper around function parse_config_into_ectJ(). - Defined function validate_spec_config(), which exits, if is_spec_config() returns False. adm/test/atoms/test_config.py - Exercised new functions in unit tests. - Added unit tests of parse_config_into_ectJ() with examples from FeII that involve a term separated by space (z 6P*), and a term in the LK/JL coupling scheme notation. These are also exercised by the unit tests of the new functions. |
||||
13568 |
Directory Listing |
Modified
3 years ago Sun Jan 19 02:58:13 2020 UTC |
marios | |
Log: adm/test/atoms/test_config.py - Fixed inconsistent term/Jtot combinations in a few unit tests. |
||||
13567 |
Directory Listing |
Modified
3 years ago Sun Jan 19 02:45:19 2020 UTC |
marios | |
Log: adm/util/atoms/splevel.py - Remove superfluous calls in validate_term_Jtot_consistent(). - Enforce term/Jtot consistency in spec_level_nist_fmt(). adm/test/atoms/test_splevel.py - Remove illegal unit test. |
||||
13566 |
Directory Listing |
Modified
3 years ago Sun Jan 19 02:27:25 2020 UTC |
marios | |
Log: adm/util/atoms/splevel.py - Defined are_term_Jtot_consistent() to check that a Jtot value is consistent with the term given, and validate_term_Jtot_consistent() to enforce consistency. - Updated fmt_spec_level() to require consistency between the Jtot and term. - Updated is_spec_level() to check for consistency. adm/test/atoms/test_splevel.py - Exercised new functions in unit tests. - Fixed a broken unit test of test_fmt_spec_level() and added several others in coupling schemes other than LS. |
||||
13565 |
Directory Listing |
Modified
3 years ago Sun Jan 19 00:59:32 2020 UTC |
marios | |
Log: adm/test/atoms/test_spterm.py - Added unit test to make sure that we get the right range with __get_tuple_from_range() when both limits are 0. |
||||
13564 |
Directory Listing |
Modified
3 years ago Sun Jan 19 00:58:03 2020 UTC |
marios | |
Log: adm/test/atoms/test_jtot.py - Added tests for input of 0 value as int, float, or str. |
||||
13563 |
Directory Listing |
Modified
3 years ago Sun Jan 19 00:48:30 2020 UTC |
marios | |
Log: adm/util/atoms/jtot.py - Bugfix: In Jtot_tofloat(), the function returned an invalid Jtot value when the value was not a str. Changed to do that if the input value is not a valid Jtot. |
||||
13562 |
Directory Listing |
Modified
3 years ago Sun Jan 19 00:40:32 2020 UTC |
marios | |
Log: adm/test/test_types.py - Added tests for int and float values of 0. |
||||
13561 |
Directory Listing |
Modified
3 years ago Sun Jan 19 00:07:06 2020 UTC |
marios | |
Log: adm/util/atoms/splevel.py - Updated is_spec_level() to check that the total angular momentum is consistent with its spectroscopic term. adm/test/atoms/test_splevel.py - Fixed a number of unit tests that were not using consistent terms and jtot. Removed superfluous tests. |
||||
13560 |
Directory Listing |
Modified
3 years ago Sat Jan 18 23:51:38 2020 UTC |
marios | |
Log: adm/util/atoms/spterm.py - Defined functions to obtain the list of valid Jtot values for a given term. The functions follow their gtot counterparts. They are: - __get_tuple_from_range() - helper function - valid_Jtot_LS() - valid_Jtot_jj_or_J1J2() - valid_Jtot_J1K_or_LK() - valid_Jtot() adm/test/atoms/test_spterm.py - Exercised new functions in unit tests. |
||||
13559 |
Directory Listing |
Modified
3 years ago Sat Jan 18 17:57:03 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py - Renamed variable in get_energies() from 'temp_leading_pct' to 'temp_lp_column' to more accurately reflect its content. |
||||
13558 |
Directory Listing |
Modified
3 years ago Sat Jan 18 17:51:28 2020 UTC |
marios | |
Log: adm/util/nist/parse.py - Renamed variable in level_line_parse() from 'pct' to 'lp_column' to more accurately reflect its content. |
||||
13557 |
Directory Listing |
Modified
3 years ago Sat Jan 18 17:47:27 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py - Removed unneeded module imports. adm/util/nist/parse.py - Added missing module imports. - Defined missing DEBUGMODE. - Brought energy-related classes to top to energy section. - Restored level_parse_line() to return data of LevelName() object, instead of an object of that class. |
||||
13556 |
Directory Listing |
Modified
3 years ago Sat Jan 18 17:23:13 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py - Extracted parsing classes and functions I (M.C.) have added to Matt's scripts into module parse.py of the adm.util.nist subpackage, and removed from this script. |
||||
13555 |
Directory Listing |
Modified
3 years ago Sat Jan 18 17:10:50 2020 UTC |
marios | |
Log: adm/util/nist/parse.py - Added missing parse_ionization(). |
||||
13554 |
Directory Listing |
Modified
3 years ago Sat Jan 18 17:05:22 2020 UTC |
marios | |
Log: adm/util/nist/parse.py - Extracted functions and classes I added to NistExtractor.py as a module. adm/test/nist/test_parse.py - Added empty test file. |
||||
13553 |
Directory Listing |
Modified
3 years ago Sat Jan 18 15:45:03 2020 UTC |
marios | |
Log: adm/docs/manual/appendix.tex - Added appendix. adm/docs/manual/adm-macros.tex - Added macros for subpackages of the adm.util. - Added macros for Matt Lykin's scripts. adm/docs/manual/man.tex - Added Appendix before References section. |
||||
13552 |
Directory Listing |
Modified
3 years ago Sat Jan 18 00:17:21 2020 UTC |
marios | |
Log: adm/util/atoms/config.py - Added optional keyword to interface of fmt_config_output() to not reprocess the level. This can be used to keep the output string close to the input ones. The default is to reformat. adm/test/atoms/test_config.py - Updated unit test definition to accommodate the optional keyword. - Exercised new functionality in unit tests. |
||||
13551 |
Directory Listing |
Modified
3 years ago Fri Jan 17 23:11:44 2020 UTC |
marios | |
Log: adm/util/stout/nrg.py - Update EnergyRecord.compose_line() to put configuration within double quotes if they are missing. adm/test/stout/test_nrg.py - Exercised new functionality in unit tests. |
||||
13550 |
Directory Listing |
Modified
3 years ago Fri Jan 17 22:54:46 2020 UTC |
marios | |
Log: adm/util/atoms/config.py - Further updates to module docstring. |
||||
13549 |
Directory Listing |
Modified
3 years ago Fri Jan 17 22:25:23 2020 UTC |
marios | |
Log: adm/util/atoms/config.py - Update module docstring. |
||||
13548 |
Directory Listing |
Modified
3 years ago Fri Jan 17 22:23:01 2020 UTC |
fguzman | |
Log: Low levels might produce oscilations so a minimum level for extrapolation to affect might need to be set Test for assessing K() matrix elements under development |
||||
13547 |
Directory Listing |
Modified
3 years ago Fri Jan 17 04:24:17 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py - Bugfix: Assembled percentages strings was not stored in the correct variable and was not written in the output file. Fixed. adm/util/nist/fmt.py - Defined function prep_pcts_output() to prepare the percentage string as it appears in the output file. adm/test/nist/test_fmt.py - Exercised new function in unit tests. |
||||
13546 |
Directory Listing |
Modified
3 years ago Fri Jan 17 01:24:46 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py - Bugfix: Alternate notations (e.g., Fe_1 and Fe+0) fetched spectrum for Fe_II instead of Fe_I. The problem came up because the same variable was used to hold both the ionic and the spectroscopic charge, with different meaning at different points. Fixed by using two separate variables. - Changed ambiguous variable name 'ion_int' to the explicit 'spec_charge'. adm/util/nist/fmt.py - bugfix: Omitted to print string in format (had left out '{}'). Fixed. adm/util/ptable/spectra.py - bugfix: Omitted to print string in format (had left out '{}'). Fixed. |
||||
13545 |
Directory Listing |
Modified
3 years ago Fri Jan 17 00:08:00 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py - Bugfix: Datasets exist (e.g., Fe_I) that include the same transition twice, as two transitions of different type (e.g., M1 and E2). The method AllRadTrans.insert() used to abort in such a case, assuming an software error has been triggered. It has now been modified to let the user decide whether to ignore the duplicate transition, use it instead of the existing, or abort the program. |
||||
13544 |
Directory Listing |
Modified
3 years ago Thu Jan 16 23:10:27 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py - Restored functionality of printing output to screen by default. Replaced option '-v' (verbose) with '-s' (silent) to keep the script quiet. - Now resolving python3 instead of specifying a certain python2 executable. - Added missing record in changelog. - Bugfix: Added missing variable for the current line data to the interface of function adjust_J_statw() -- used in warnings. |
||||
13543 |
Directory Listing |
Modified
3 years ago Thu Jan 16 22:41:29 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py - Bugfix: Guard against missing content in 'Leading percentages' column. |
||||
13542 |
Directory Listing |
Modified
3 years ago Thu Jan 16 20:48:39 2020 UTC |
marios | |
Log: adm/docs/manual/adm-macros.tex - Bugfix: Command expected in all caps. Fixed. |
||||
13541 |
Directory Listing |
Modified
3 years ago Thu Jan 16 20:37:58 2020 UTC |
marios | |
Log: adm/docs/manual/adm-macros.tex - Defined command \ADM. adm/docs/manual/algorithm.tex adm/docs/manual/commands.tex adm/docs/manual/examples.tex adm/docs/manual/man.tex - Use command in lieu of plain text. |
||||
13540 |
Directory Listing |
Modified
3 years ago Thu Jan 16 18:58:32 2020 UTC |
marios | |
Log: adm/docs/manual/algorithm.tex - Added Section "ADAS Data Acquisition & Preparation". adm/docs/manual/images/adm-flowchart-adas-acquisition.pdf adm/docs/manual/images/adm-flowchart-nist-acquisition.pdf - Added flowcharts for fetching and preparing the ADAS and NIST data. |
||||
13539 |
Directory Listing |
Modified
3 years ago Thu Jan 16 18:55:46 2020 UTC |
marios | |
Log: adm/docs/manual/algorithm.tex - In Section "Setup" clarified that only the 'top' directories are created if they don't already exist, and that the subdirectories for the species are always created by adm-setup.py. This means that running the software is mandatory. adm/docs/manual/images/adm-flowchart-setup.pdf - Updated flowchart to remove curved corners, which are suggestive of an optional step. |
||||
13538 |
Directory Listing |
Modified
3 years ago Thu Jan 16 17:51:19 2020 UTC |
marios | |
Log: adm/docs/manual/adm-macros.tex - Added file that holds macros related to the ADM software. adm/docs/manual/images/adm-flowchart-setup.pdf - Added flowchart for initial operations of software. adm/docs/manual/algorithm.tex - Added Section "Setup" describing the procedure for getting started with an ADM run. Used flowchart added above for illustration. - Padded Chapter introduction with whitespace, and started first section on a new page. |
||||
13537 |
Directory Listing |
Modified
3 years ago Thu Jan 16 16:12:27 2020 UTC |
marios | |
Log: adm/docs/manual/algorithm.tex - Used new flowchart with "Setup" starting point, in lieu of the one without. - Updated text to refer to the new figure. |
||||
13536 |
Directory Listing |
Modified
3 years ago Thu Jan 16 15:58:35 2020 UTC |
marios | |
Log: adm/docs/manual/images/adm-flowchart-vertical-sections.pdf - Updated figure. adm/docs/manual/images/adm-flowchart-vertical-sections-setup.pdf - Added flowchart, similar to adm-flowchart-vertical-sections.pdf, but also contains a starting point called "Setup". |
||||
13535 |
Directory Listing |
Modified
3 years ago Thu Jan 16 00:58:40 2020 UTC |
marios | |
Log: adm/docs/manual/algorithm.tex - Added introduction to Chapter 2, "Algorithm Description", with figure of operation flowchart. adm/docs/manual/images adm/docs/manual/images/adm-flowchart-vertical-sections.pdf - Added directory for figures and its first denizen. |
||||
13534 |
Directory Listing |
Modified
3 years ago Wed Jan 15 22:31:22 2020 UTC |
marios | |
Log: Renamed: adm/adm-write-stout.py to: adm/adm-export-stout.py |
||||
13533 |
Directory Listing |
Modified
3 years ago Wed Jan 15 20:27:52 2020 UTC |
marios | |
Log: adm/docs/manual/algorithm.tex - Added new file to hold a chapter on the description of the package algorithm. adm/docs/manual/intro.tex - Moved Sections "Excitation signature" and "Algorithm Description" to the new file. adm/docs/manual/man.tex - Include new file as the first chapter after the introduction. |
||||
13532 |
Directory Listing |
Modified
3 years ago Wed Jan 15 17:03:58 2020 UTC |
marios | |
Log: adm/docs/manual/intro.tex - Added Section 'Collision files, ".coll"' |
||||
13531 |
Directory Listing |
Modified
3 years ago Wed Jan 15 16:13:58 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py - Added changelog. |
||||
13530 |
Directory Listing |
Modified
3 years ago Wed Jan 15 16:03:30 2020 UTC |
marios | |
Log: adm/docs/manual/intro.tex - In Section 'Energy files, ".nrg"', explained purpose of files. - Added Section 'Transition files, ".tp"' |
||||
13529 |
Directory Listing |
Modified
3 years ago Wed Jan 15 15:49:53 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py - Ignore references for line data in transition files. |
||||
13528 |
Directory Listing |
Modified
3 years ago Wed Jan 15 01:07:46 2020 UTC |
marios | |
Log: source/atmdat.h - Removed declaration of removed function atmdat_STOUT_readin_nrg(). |
||||
13527 |
Directory Listing |
Modified
3 years ago Wed Jan 15 01:01:45 2020 UTC |
marios | |
Log: Merged from mainline r13512 through r13526 |
||||
13526 |
Directory Listing |
Modified
3 years ago Wed Jan 15 00:57:20 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py - Added command-line option (-n) to control whether notes on energy values are saved or not. This preserves the functionality of the script as it is on the trunk. - Bugfix in get_energies(): Notes were printed only if refcodes or alternate state information were printed as well. Fixed to print any of them as comments, regardless of whether the others are present or requested. adm/adm-fetch-nist.py - Added command-line option (-n) to pass to NistExtractor.py. |
||||
13525 |
Directory Listing |
Modified
3 years ago Tue Jan 14 23:37:14 2020 UTC |
marios | |
Log: adm/docs/manual/intro.tex - Improved language in Section "Directories & Filenames". - Added subsection on the structure of energy files ("Energy files, '.nrg'") to Section "Files & their Contents". |
||||
13524 |
Directory Listing |
Modified
3 years ago Tue Jan 14 22:46:31 2020 UTC |
marios | |
Log: latex/common/macros.tex - Added macro definition for unit of wavenumbers, \wn. |
||||
13523 |
Directory Listing |
Modified
3 years ago Tue Jan 14 20:18:51 2020 UTC |
marios | |
Log: adm/util/stout/nrg.py - Updated Energies.init() to ingest NIST note as a dict with two entries of 'code' and 'message'. - Updated Energies.pprt() to print the note, if present, as the last field reported. |
||||
13522 |
Directory Listing |
Modified
3 years ago Tue Jan 14 19:35:56 2020 UTC |
marios | |
Log: adm/util/nist/fmt.py - Defined functions: - fmt_note_output() to handle printing to note to files. - get_note() to extract note from the string printed in files. - parse_note() to break the output of get note into a code and message. - Updated parse_comment() to use get_note(). - Broke the ':' from the note sentinel into a separator parameter. adm/test/nist/test_fmt.py - Added unit tests for the new functions. NistExtractor/NistExtractor.py - Updated get_energies() to use fmt_note_output(). |
||||
13521 |
Directory Listing |
Modified
3 years ago Tue Jan 14 04:39:57 2020 UTC |
marios | |
Log: adm/util/nist/fmt.py - Added note sentinel parameter, to be used in writing and reading comment strings in output files. - Adapted parse_comment() to also return the note. adm/test/nist/test_fmt.py - Added unit tests to exercise return of the note found in comment strings. NistExtractor/NistExtractor.py - Use fmt.py note parameter, instead of bare string. |
||||
13520 |
Directory Listing |
Modified
3 years ago Tue Jan 14 02:12:23 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py - Extract note code on the energy value, if present, and append it to the comment prepended by 'note:', and followed by the note's explanation. |
||||
13519 |
Directory Listing |
Modified
3 years ago Tue Jan 14 02:07:11 2020 UTC |
marios | |
Log: adm/util/nist/phtml.py - Bugfix in extract_note(): A greedy pattern was used in the regular expression used to get the note code. This led to the wrong string being picked up when the note was missing. Fixed by using a non-greedy pattern, i.e., '.*?' insteaed of '.+?'. adm/test/nist/test_phtml.py - Added unit test for extract_note() that failed in a test run of adm-fetch-nist (with H I). |
||||
13518 |
Directory Listing |
Modified
3 years ago Mon Jan 13 21:54:35 2020 UTC |
marios | |
Log: adm/util/nist/web.py - Defined Notes() class, which handles downloading the notes that appear as popups on the NIST web interface. It also provides access to the message for each defined note. adm/test/nist/test_web.py - Exercised methods of the Notes() class. |
||||
13517 |
Directory Listing |
Modified
3 years ago Mon Jan 13 20:48:42 2020 UTC |
marios | |
Log: adm/util/nist/phtml.py - Added function to get note from NIST ASD record. These are listed within HTML anchors to JavaScript functions (*Balloon()). The function extracts the note; its meaning (message) is stored in a different file. adm/test/nist/test_phtml.py - Exercised new function in unit tests. |
||||
13515 |
Directory Listing |
Modified
3 years ago Mon Jan 13 17:35:53 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py - Bugfix: Function parse_ionization() used the second to last column for the ionization energy, regardless of whether a 'Leading percentages' column is present in the HTML table or not. Fixed by passing the relevant variable to the function, and skipping the column, if needed. - Changed the order of reading the ionization potential and parsing the table header (to tell if the 'Leading percentages' column is present) in order to highlight the dependence of the former on the latter. - Bugfix: "Collapsed" level data may appear, which involve no term or Jtot, e.g., H I levels n=2 and n=40. The script crashes for these, because it is designed to operate on resolved levels. These levels are now ignored. - As a corollary, transitions involving levels missing either the term or the configuration are also ignored. - Added script docstring, including log of major changes to its behavior. |
||||
13513 |
Directory Listing |
Modified
3 years ago Fri Jan 10 22:14:58 2020 UTC |
marios | |
Log: adm/util/cloudy/stout_refs.py - Incorrect validation call of dict, instead of list. Fixed. |
||||
13512 |
Directory Listing |
Modified
3 years ago Fri Jan 10 21:44:57 2020 UTC |
marios | |
Log: Merged from mainline r12154 through 13511 |
||||
13511 |
Directory Listing |
Modified
3 years ago Fri Jan 10 21:40:42 2020 UTC |
marios | |
Log: source/Makefile source/atmdat_chianti.cpp - Reverted obsolete changes to Cloudy source. These were needed at the time they were made, and were accessed by Python code through a Cython interface. In the current implementation, native Python functions are used, instead. This change largely decouples ADM from Cloudy. |
||||
13510 |
Directory Listing |
Modified
3 years ago Fri Jan 10 21:31:02 2020 UTC |
marios | |
Log: adm/util/cloudy/icloudy.pyx adm/util/cloudy/setup_icloudy.py - Removed obsolete Cython files. adm/util/register/levels.py - Updated docstring of class LevelIndexMap(). |
||||
13509 |
Directory Listing |
Modified
3 years ago Fri Jan 10 21:25:19 2020 UTC |
marios | |
Log: source/cython.cpp source/cython.h - Deleted obsolete Cython files. |
||||
13508 |
Directory Listing |
Modified
3 years ago Fri Jan 10 21:13:10 2020 UTC |
marios | |
Log: adm/test/test_match.py - Removed outdated module test. adm/test/test_chtypes.py - Missed updating call to validate_class(). adm/test/test_misc.py - Inappropriately replaced call to validate_collection() with validate_list(). Reverted change. |
||||
13507 |
Directory Listing |
Modified
3 years ago Fri Jan 10 21:08:22 2020 UTC |
fguzman | |
Log: changes in kbn(). PRoperly account for levels instead of departure coefficients |
||||
13506 |
Directory Listing |
Modified
3 years ago Fri Jan 10 21:04:52 2020 UTC |
marios | |
Log: adm/util/dbdir.py - Removed outdated module. adm/util/__init__.py - Removed module from list obtained with 'import *'. adm/util/stout/coll.py - Removed useless import of dbdir. adm/test/stout/test_coll.py - Removed useless import of dbdir. - Replaced use of Stout directory parameter of dbdir.py module with explicit string. |
||||
13505 |
Directory Listing |
Modified
3 years ago Fri Jan 10 20:56:52 2020 UTC |
marios | |
Log: adm/merge-with-stout.py adm/reorder-stout-levels.py adm/update-stout.py - Removed outdated scripts. |
||||
13504 |
Directory Listing |
Modified
3 years ago Fri Jan 10 20:17:53 2020 UTC |
marios | |
Log: adm/util/atoms/config.py - Updated processing of subshells in fmt_econfig() to not add a dot after the closing parenthesis of an ancestry term, if the term appears at the end of the subshell string. adm/test/atoms/test_config.py - Added unit test of fmt_econfig() having an ancestry term at its end. |
||||
13503 |
Directory Listing |
Modified
3 years ago Fri Jan 10 20:07:43 2020 UTC |
marios | |
Log: adm/util/atoms/config.py - Adapted fmt_econfig() to disambiguate subshells that are jumbed together with ancestry terms. adm/test/atoms/test_config.py - Unit testing fmt_econfig() against input '3d6(5D)4s', ie, not separated by dots, and involving an ancestry term. |
||||
13502 |
Directory Listing |
Modified
3 years ago Fri Jan 10 19:53:56 2020 UTC |
marios | |
Log: adm/util/atoms/config.py - Promote inner function fix_hex() to module function. adm/test/atoms/test_config.py - Exercised fix_hex() in unit tests. |
||||
13501 |
Directory Listing |
Modified
3 years ago Fri Jan 10 18:35:09 2020 UTC |
marios | |
Log: adm/test/atoms/test_orbitals.py adm/test/cloudy/test_lines.py adm/test/io/test_ui.py adm/util/atoms/config.py - Corrections to validation calls. adm/test/io/test_dirs.py adm/test/io/test_log.py adm/test/io/test_pfile.py adm/test/stout/test_nrg.py - Update module imports. |
||||
13500 |
Directory Listing |
Modified
3 years ago Fri Jan 10 18:13:39 2020 UTC |
marios | |
Log: adm/test/adas/test_adas.py adm/test/atoms/test_config.py adm/test/atoms/test_orbitals.py adm/util/cloudy/lines.py adm/util/stout/info.py adm/util/stout/nrg.py adm/util/stout/tp.py - Missed calls to validate_int(), validate_float(), validate_str(), and validate_bool() which involved variable names containing '.' (e.g, 'self.'), or had the variable description enclosed in single quotes. |
||||
13499 |
Directory Listing |
Modified
3 years ago Fri Jan 10 17:57:36 2020 UTC |
marios | |
Log: adm/merge-with-stout.py adm/reorder-stout-levels.py adm/test/adas/test_adas.py adm/test/atoms/test_config.py adm/test/atoms/test_orbitals.py adm/test/cloudy/test_lines.py adm/test/io/test_ui.py adm/test/ptable/test_elements.py adm/test/stout/test_coll.py adm/test/stout/test_fmt.py adm/test/stout/test_info.py adm/test/stout/test_nrg.py adm/test/test_match.py adm/test/test_misc.py adm/util/adas/adas.py adm/util/atoms/config.py adm/util/atoms/orbitals.py adm/util/chianti.py adm/util/cloudy/lines.py adm/util/cloudy/stout_refs.py adm/util/misc.py adm/util/register/terms.py adm/util/stout/coll.py adm/util/stout/fmt.py adm/util/stout/info.py adm/util/stout/meta.py adm/util/stout/nrg.py - Refined calls to validate_collection() to calls to validate_list(), validate_dict(), or validate_tuple(), where appropriate. |
||||
13498 |
Directory Listing |
Modified
3 years ago Fri Jan 10 17:20:23 2020 UTC |
marios | |
Log: adm/util/chtypes.py - Removed useless variable description from interface of validate_collection(). adm/merge-with-stout.py adm/reorder-stout-levels.py adm/test/adas/test_adas.py adm/test/atoms/test_config.py adm/test/atoms/test_orbitals.py adm/test/cloudy/test_lines.py adm/test/ptable/test_elements.py adm/test/stout/test_fmt.py adm/test/stout/test_info.py adm/test/stout/test_nrg.py adm/test/test_match.py adm/test/test_misc.py adm/util/adas/adas.py adm/util/atoms/config.py adm/util/atoms/orbitals.py adm/util/chianti.py adm/util/cloudy/lines.py adm/util/cloudy/stout_refs.py adm/util/io/ui.py adm/util/misc.py adm/util/register/levels.py adm/util/stout/fmt.py adm/util/stout/info.py adm/util/stout/meta.py - Updated calls to validate_collection(). |
||||
13497 |
Directory Listing |
Modified
3 years ago Fri Jan 10 17:11:50 2020 UTC |
marios | |
Log: adm/util/chtypes.py - Removed useless variable description from interface of validate_class(). NistExtractor/NistExtractor.py adm/merge-with-stout.py adm/test/cloudy/test_lines.py adm/util/atoms/config.py adm/util/cloudy/lines.py adm/util/io/dirs.py adm/util/io/pfile.py adm/util/nist/refs.py adm/util/stout/coll.py adm/util/stout/fmt.py adm/util/stout/info.py adm/util/stout/meta.py adm/util/stout/nrg.py adm/util/stout/tp.py - Updated calls to validate_class(). |
||||
13496 |
Directory Listing |
Modified
3 years ago Fri Jan 10 17:04:23 2020 UTC |
marios | |
Log: adm/test/atoms/test_config.py adm/test/atoms/test_orbitals.py adm/test/cloudy/test_lines.py adm/test/stout/test_meta.py adm/test/stout/test_nrg.py adm/util/atoms/orbitals.py adm/util/cloudy/lines.py adm/util/io/ui.py adm/util/nist/refs.py adm/util/stout/meta.py - Missed validate_int() calls which involved variable names containing '_'. |
||||
13495 |
Directory Listing |
Modified
3 years ago Fri Jan 10 17:02:56 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py adm/test/stout/test_meta.py adm/test/stout/test_nrg.py adm/util/stout/meta.py - Missed validate_float() calls which involved variable names containing '_'. |
||||
13494 |
Directory Listing |
Modified
3 years ago Fri Jan 10 17:00:41 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py adm/merge-with-stout.py adm/reorder-stout-levels.py adm/test/adas/test_adas.py adm/test/atoms/test_config.py adm/test/atoms/test_orbitals.py adm/test/atoms/test_splevel.py adm/test/atoms/test_spterm.py adm/test/cloudy/test_cloudy.py adm/test/cloudy/test_lines.py adm/test/stout/test_coll.py adm/test/stout/test_fmt.py adm/util/adas/adas.py adm/util/adas/eissner.py adm/util/atoms/config.py adm/util/cloudy/lines.py adm/util/dbdir.py adm/util/misc.py adm/util/nist/refs.py adm/util/register/levels.py adm/util/stout/nrg.py - Missed validate_str() calls which involved variable names containing '_'. |
||||
13493 |
Directory Listing |
Modified
3 years ago Fri Jan 10 16:57:44 2020 UTC |
marios | |
Log: adm/test/adas/test_adas.py adm/test/atoms/test_config.py adm/test/atoms/test_orbitals.py adm/test/test_misc.py adm/util/adas/adas.py - Missed validate_bool() calls which involved variable names containing '_'. |
||||
13492 |
Directory Listing |
Modified
3 years ago Fri Jan 10 16:50:20 2020 UTC |
marios | |
Log: adm/util/chtypes.py - Removed useless variable description from interface of validate_bool(). adm/test/atoms/test_config.py adm/test/atoms/test_jtot.py adm/test/atoms/test_orbitals.py adm/test/atoms/test_splevel.py adm/test/atoms/test_spterm.py adm/test/stout/test_fmt.py - Updated calls to validate_bool(). |
||||
13491 |
Directory Listing |
Modified
3 years ago Fri Jan 10 16:46:42 2020 UTC |
marios | |
Log: adm/util/chtypes.py - Removed useless variable description from interface of validate_str(). NistExtractor/NistExtractor.py adm/merge-with-stout.py adm/reorder-stout-levels.py adm/test/adas/test_adas.py adm/test/atoms/test_config.py adm/test/atoms/test_orbitals.py adm/test/atoms/test_splevel.py adm/test/cloudy/test_lines.py adm/test/stout/test_fmt.py adm/test/stout/test_info.py adm/test/stout/test_nrg.py adm/test/stout/test_tp.py adm/test/test_misc.py adm/util/adas/adas.py adm/util/atoms/config.py adm/util/atoms/orbitals.py adm/util/atoms/splevel.py adm/util/chianti.py adm/util/cloudy/lines.py adm/util/fs.py adm/util/io/ui.py adm/util/misc.py adm/util/nist/refs.py adm/util/stout/coll.py adm/util/stout/dirtree.py adm/util/stout/fmt.py adm/util/stout/info.py adm/util/stout/nrg.py adm/util/stout/tp.py - Updated calls to validate_str(). |
||||
13490 |
Directory Listing |
Modified
3 years ago Fri Jan 10 16:38:46 2020 UTC |
marios | |
Log: adm/util/chtypes.py - Removed useless variable description from interface of validate_float(). adm/test/adas/test_adas.py adm/test/atoms/test_spterm.py adm/test/stout/test_meta.py adm/test/stout/test_nrg.py adm/test/stout/test_tp.py adm/util/stout/meta.py adm/util/stout/nrg.py adm/util/stout/tp.py - Updated calls to validate_float(). |
||||
13489 |
Directory Listing |
Modified
3 years ago Fri Jan 10 16:35:29 2020 UTC |
marios | |
Log: adm/util/chtypes.py - Removed useless variable description from interface of validate_int(). adm/test/atoms/test_config.py adm/test/atoms/test_orbitals.py adm/test/cloudy/test_lines.py adm/test/stout/test_info.py adm/test/stout/test_meta.py adm/test/stout/test_nrg.py adm/test/test_misc.py adm/util/adas/eissner.py adm/util/atoms/config.py adm/util/cloudy/lines.py adm/util/misc.py adm/util/stout/info.py adm/util/stout/meta.py adm/util/stout/nrg.py - Updated calls to validate_int(). |
||||
13488 |
Directory Listing |
Modified
3 years ago Fri Jan 10 16:25:54 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py adm/util/adas/adas.py - Updated calls to util.atoms.splevel functions. |
||||
13487 |
Directory Listing |
Modified
3 years ago Fri Jan 10 16:21:17 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py adm/adm-ingest-data.py adm/test/atoms/test_trans.py adm/test/stout/test_nrg.py adm/util/atoms/trans.py adm/util/register/terms.py adm/util/stout/nrg.py - Updated calls to util.atoms.spterm funtions. |
||||
13486 |
Directory Listing |
Modified
3 years ago Fri Jan 10 16:07:06 2020 UTC |
marios | |
Log: NistExtractor/NistExtractor.py adm/merge-with-stout.py adm/test/atoms/test_trans.py adm/util/atoms/trans.py adm/util/register/levels.py adm/util/register/terms.py adm/util/stout/nrg.py - Updated calls to util.atoms.jtot funtions. |
||||
13485 |
Directory Listing |
Modified
3 years ago Fri Jan 10 15:48:33 2020 UTC |
marios | |
Log: adm/test/atoms/test_jtot.py - New module. - Extracted from test_config.py all tests of functions in the jtot.py module. adm/test/atoms/test_spterm.py - New module. - Extracted from test_config.py all tests of functions in the spterm.py module. adm/test/atoms/test_splevel.py - New module. - Extracted from test_config.py all tests of functions in the splevel.py module. - Added tests for functions convert_spec_level_to_frac() and convert_spec_level_to_plain(). adm/test/atoms/test_config.py - Removed all tests now contained in the modules above. - Rearranged to bring order of tests in the order that the functions are listed in config.py. - Updated test_are_alt_subshell_lists_same() to work independently of the ConfigAlt() class. - Removed outdated tests for copy.deepcopy() of Config() and ConfigAlt() objects. |
||||
13484 |
Directory Listing |
Modified
3 years ago Fri Jan 10 15:38:59 2020 UTC |
marios | |
Log: adm/util/atoms/jtot.py - New module. - Extracted from config.py all functions related to the total angular momentum. - Parameter Jtot_invalid now defined herein. adm/util/atoms/spterm.py - New module. - Extracted from config.py all functions related to terms in various coupling schemes, the number of levels they can contain, and their statistical weights. - Parameters level_sentinel_left and level_sentinel_right now defined herein. adm/util/atoms/splevel.py - New module. - Extracted from config.py all functions related to spectroscopic levels, that is, spectroscopic terms, and Jtot. adm/util/atoms/config.py - Removed all functions now contained in the new modules above. - Set classes Config() and ConfigAlt() to derive from object, instead of misc.DeepCopy() -- a fossil of an earlier implementation. adm/util/atoms/__init__.py - Updated to include new modules in list obtained with 'import *'. |
||||
13483 |
Directory Listing |
Modified
3 years ago Thu Jan 9 23:02:35 2020 UTC |
marios | |
Log: adm/test/stout/test_nrg.py - Modified message from the ominous-looking (and confusing) "Error" to the more benign "Abort test", printed when certain datasets miss crucial data for meaningful testing, yet the code does not exit to system. |
||||
13482 |
Directory Listing |
Modified
3 years ago Thu Jan 9 22:58:53 2020 UTC |
marios | |
Log: adm/test/stout/test_nrg.py - In __compare_JoinedEnergies_objects(), added comparisons between data for multiplets. - Now using JoinedEnergies.form_multiplets() to test multiplet infrastructure in test_JoinedEnergies_save_read_json() and test_JoinedEnergies_export_import_dict(). |
||||
13481 |
Directory Listing |
Modified
3 years ago Thu Jan 9 22:55:09 2020 UTC |
marios | |
Log: adm/test/stout/test_nrg.py - In __compare_Energies_objects() added comparisons for groups and multiplets. |
||||
13480 |
Directory Listing |
Modified
3 years ago Thu Jan 9 22:46:26 2020 UTC |
marios | |
Log: adm/test/stout/test_nrg.py - Exercised unit tests for JoinedEnergies.export_dict() and .import_dict(). |
||||
13479 |
Directory Listing |
Modified
3 years ago Thu Jan 9 22:41:14 2020 UTC |
marios | |
Log: adm/util/stout/nrg.py - Multiplet.export_dict() now uses copy.deepcopy() to store the levels data in the output dict. - In Energies(): - Bugfix in export_dict(): copy.deepcopy() was not used to set the output dict. Now the output is constructed in detail to accommodate the underlying data structures. export_dict() methods are used when needed. adm/test/stout/test_nrg.py - Exercised unit tests for Energies.export_dict() and .import_dict(). |
||||
13478 |
Directory Listing |
Modified
3 years ago Thu Jan 9 21:40:46 2020 UTC |
fguzman | |
Log: Sinks do not need to be inside the loop of condensed levels No need to have resolved and condensed branch inside Kbn() |
||||
13477 |
Directory Listing |
Modified
3 years ago Thu Jan 9 21:37:10 2020 UTC |
marios | |
Log: adm/test/stout/test_nrg.py - Renamed: test_Energies_JSON() to: test_Energies_save_read_json() - Defined function __compare_Energies_objects() to carry out the comparison of two Energies() objects. - Bugfix: test_Energies_save_read_json() was not comparing the read-in dataset with the original. Now comparing with __compare_Energies_objects(). |
||||
13476 |
Directory Listing |
Modified
3 years ago Thu Jan 9 21:29:31 2020 UTC |
marios | |
Log: adm/test/stout/test_nrg.py - Exercised unit tests for JoinedEnergies.save_json() and .read_json(). - Defined helper function __compare_JoinedEnergies_objects() to carry out the comparison of two JoinedEnergies() objects. - Renamed: __compare_two_Energy_obj() to: __compare_Energy_objects() |
||||
13475 |
Directory Listing |
Modified
3 years ago Thu Jan 9 20:56:07 2020 UTC |
marios | |
Log: adm/test/stout/test_nrg.py - Exercised unit tests for JoinedEnergies.nlevels_unmatched_db(). |
||||
13474 |
Directory Listing |
Modified
3 years ago Thu Jan 9 20:48:23 2020 UTC |
marios | |
Log: adm/test/stout/test_nrg.py - Exercise unit tests for JoinedEnergies.set_DB(). |
||||
13473 |
Directory Listing |
Modified
3 years ago Thu Jan 9 20:12:38 2020 UTC |
marios | |
Log: adm/test/stout/test_nrg.py - Exercised unit tests for JoinedEnergies.term_exists(). |
||||
13472 |
Directory Listing |
Modified
3 years ago Thu Jan 9 20:02:13 2020 UTC |
marios | |
Log: adm/test/stout/test_nrg.py - Exercised unit tests for JoinedEnergies.form_multiplets(). |
||||
13471 |
Directory Listing |
Modified
3 years ago Thu Jan 9 19:48:39 2020 UTC |
marios | |
Log: adm/test/stout/test_nrg.py - Exercised unit tests for setting up JoinedEnergies() datasets. - Defined function __create_dataset_JoinedEnergies() to compile an object of the JoinedEnergies() class from the given dataset. - Defined function __validate_JoinedEnergies_setup() to test new object. |
||||
13470 |
Directory Listing |
Modified
3 years ago Thu Jan 9 17:26:31 2020 UTC |
marios | |
Log: adm/test/stout/test_nrg.py - Now exercising Energies.validate_energy_order() in __create_dataset_Energies(). |
||||
13469 |
Directory Listing |
Modified
3 years ago Thu Jan 9 17:23:28 2020 UTC |
marios | |
Log: adm/test/stout/test_nrg.py - Exercised Energies.levels_no_config() in unit tests. - Updated __dict_to_lines_of_data() to also return a list of indices for levels without configuration data. Updated all calls to function. |
||||
13468 |
Directory Listing |
Modified
3 years ago Thu Jan 9 17:01:21 2020 UTC |
marios | |
Log: adm/test/stout/test_nrg.py - Added units tests for Energies.nlevels_autoion(). |
||||
13467 |
Directory Listing |
Modified
3 years ago Thu Jan 9 16:45:38 2020 UTC |
marios | |
Log: adm/test/stout/test_nrg.py - Exercised method nlevels_matched() as part of the unit test function test_Energies_level_matching(). |
||||
13466 |
Directory Listing |
Modified
3 years ago Thu Jan 9 16:35:21 2020 UTC |
marios | |
Log: adm/test/stout/test_nrg.py - Exercised unit tests for Energies.nlevels() with all datasets. |
||||
13465 |
Directory Listing |
Modified
3 years ago Thu Jan 9 16:27:53 2020 UTC |
marios | |
Log: adm/test/stout/test_nrg.py - Added ionization potentials to all datasets, and updated function to work with the dict key, instead of an additional parameter. - Now exercising unit tests for the IP with all datasets. |
||||
13464 |
Directory Listing |
Modified
3 years ago Wed Jan 8 21:43:31 2020 UTC |
marios | |
Log: adm/test/stout/test_nrg.py - Added unit tests for Energies.is_level_present(). - Now using full electronic configurations for Fe+3 levels. |
||||
13463 |
Directory Listing |
Modified
3 years ago Wed Jan 8 21:19:28 2020 UTC |
marios | |
Log: adm/test/stout/test_nrg.py - Added unit tests for Energies.IP(). |
||||
13462 |
Directory Listing |
Modified
3 years ago Wed Jan 8 20:40:43 2020 UTC |
marios | |
Log: adm/adm-sort-nrg.py - Use Energies.validate_energy_order() to confirm that the levels are in order of ascending energy. adm/util/stout/nrg.py - In Energies.validate_energy_order(), use method get_ground() to confirm the uniqueness of the ground state. |
||||
13461 |
Directory Listing |
Modified
3 years ago Wed Jan 8 16:58:22 2020 UTC |
marios | |
Log: adm/test/stout/test_nrg.py - Renamed: __populate_Energies() to: __create_dataset_Energies() - Added level-matching data to the Fe+ dataset. - Removed moot unit tests: - Fe+ from tests of groups methods - Fe+ and Ne+7 from tests of multiplets methods |
||||
13460 |
Directory Listing |
Modified
3 years ago Wed Jan 8 16:42:20 2020 UTC |
marios | |
Log: adm/test/stout/test_nrg.py - Split up test_Energies() into functions: - test_Energies_elevel() - test_Energies_groups() - test_Energies_multiplets() - test_Energies_level_matching() - test_Energies_JSON() |
||||
13459 |
Directory Listing |
Modified
3 years ago Tue Jan 7 22:38:17 2020 UTC |
marios | |
Log: adm/test/stout/test_nrg.py - Updated test_Energies() to work with the defined dataset dicts. |
||||
13458 |
Directory Listing |
Modified
3 years ago Mon Jan 6 22:43:04 2020 UTC |
marios | |
Log: adm/test/stout/test_nrg.py - Converted the data for Fe+, Fe+3, and Ne+7 into dataset structures and used with the test_Energies_setup() function. adm/util/stout/nrg.py - Bugfix: In Energy.pprt(), print configuration info only if configuration data exist. |
||||
13457 |
Directory Listing |
Modified
3 years ago Mon Jan 6 17:44:20 2020 UTC |
marios | |
Log: adm/util/stout/nrg.py - In class Energies(): - In method insert(): - Bugfix: The method used to insert a level whose index was already in use with an index equal to one past the total number of levels in the dataset without checking if that index was being used. Now the appended level has an index of one past the highest index in the dataset. This essentially guards against adding duplicate level indices in datasets with missing indices. - Modified method to return the index with which the level was entered into the dataset. - In method add_level(), now using insert() for adding a level. - Renamed method set_ground() to set_ground_subshells(). - Defined method get_ground() to obtain an Energy() object for the ground state. It checks that only one state has 0 energy. - Used with methods set_ground_subshells() and set_missing_comments(). - In is_level_present(), replaced calls to validate_*() functions with calls to is_*() functions. If any fails, the method returns False, instead of exiting. - In function parse_nrg(), updated call to Energies.set_ground(). adm/test/stout/test_nrg.py - Refactored code that compiles an Energies() dataset from a given dict into functions: - __dict_to_lines_of_data() - __populate_Energies() - Defined functions to exercise some basic methods of the Energies() class: - test_Energies_setup() - __ground_subshells() - __validate_Energies_setup() adm/adm-ingest-data.py adm/adm-merge-nrg.py adm/adm-sort-nrg.py - Updated calls to Energies.set_ground(). |
||||
13456 |
Directory Listing |
Modified
3 years ago Mon Jan 6 15:55:15 2020 UTC |
marios | |
Log: Removed validate_*() from all is_*() functions in favor of calls to is_*() functions. If the latter fail, each is_*() function returns False. - adm/util/atoms/orbitals.py - is_nprim() - is_Lorb_sym() - is_Lorb() - is_nelec() - is_subshell() - is_ancestor() - is_econfig() - is_even_parity() - is_odd_parity() - is_parity() - is_exc() - adm/util/atoms/config.py - is_term_LS() - is_term_jj_or_J1J2() - is_term_J1K_or_LK() - is_term_unassigned() - is_term() - are_terms_equiv() - is_Jtot() - is_spec_level() adm/test/atoms/test_orbitals.py adm/test/atoms/test_config.py - Added tests to each of the is_*() function above with invalid values (None, "", []) to exercise new capabilities. - Removed all validate_*() calls from inner functions to allow these tests. adm/test/atoms/test_orbitals.py - Added unit tests for is_exc() and validate_exc(). |
||||
13455 |
Directory Listing |
Modified
3 years ago Sun Jan 5 16:22:27 2020 UTC |
marios | |
Log: adm/adm-ingest-data.py adm/util/stout/nrg.py - Used new method Energy.primary_subshells() in lieu of using the first object of the list returned by the subshells() method (ie, Energy.subshells()[0]). |
||||
13454 |
Directory Listing |
Modified
3 years ago Sun Jan 5 16:16:22 2020 UTC |
marios | |
Log: adm/util/stout/nrg.py - Defined method Energy.primary_subshells() to get the subshells of the primary configuration. adm/test/stout/test_nrg.py - Exercised method as part of the Energy object-comparison function, __compare_two_Energy_obj(), used with checking the process of exporting to and importing from dicts, and copying an Energy() object into another. |
||||
13453 |
Directory Listing |
Modified
3 years, 1 month ago Sun Jan 5 04:11:57 2020 UTC |
marios | |
Log: adm/util/stout/nrg.py - In Multiplet.add_level() use validate_level() to check on the input level, instead of checking merely that it is an integer; this makes sure it is positive. |
||||
13452 |
Directory Listing |
Modified
3 years, 1 month ago Sun Jan 5 03:53:37 2020 UTC |
marios | |
Log: adm/test/stout/test_nrg.py adm/util/stout/nrg.py - Minor rearrangements. |
||||
13451 |
Directory Listing |
Modified
3 years, 1 month ago Sun Jan 5 03:49:23 2020 UTC |
marios | |
Log: adm/test/stout/test_nrg.py - Defined inner function for unit tests of the *ignore*() family of methods of the Energy() class. - Exercised two tests of the *ignore*() methods. adm/util/stout/nrg.py - Renamed: Energy.is_ignored to: Energy.ignored |
||||
13450 |
Directory Listing |
Modified
3 years, 1 month ago Sun Jan 5 02:53:39 2020 UTC |
marios | |
Log: adm/test/stout/test_nrg.py - Defined inner function for unit tests of the *dismiss*() family of methods of the Energy() class. - Exercised two tests of the *dismiss*() methods. adm/util/stout/nrg.py - Renamed: Energy.reset_dismissed to: Energy.unset_dismissed |
||||
13449 |
Directory Listing |
Modified
3 years, 1 month ago Sun Jan 5 02:43:18 2020 UTC |
marios | |
Log: adm/test/stout/test_nrg.py - Defined inner function for unit tests of the *shuffled() family of methods of the Energy() class. - Exercised two tests of the *shuffled() methods. adm/util/stout/nrg.py - Defined method Energy.shuffled() to query the state of the parameter. |
||||
13448 |
Directory Listing |
Modified
3 years, 1 month ago Sat Jan 4 23:30:54 2020 UTC |
marios | |
Log: adm/test/stout/test_nrg.py - Renamed inner function for unit test of Energy.init(): test_Energy_setter_getter -> test_Energy_init. - Added checks for methods pertinent to the electronic configuration and spectroscopic level when such information is absent. - Added unit test that does not contain the electronic configuration. adm/util/stout/nrg.py - In Energy.init(), added check that a valid number of electrons is given in order to process, and store, the electronic configuration in the input data line. |
||||
13447 |
Directory Listing |
Modified
3 years, 1 month ago Fri Jan 3 20:58:14 2020 UTC |
fguzman | |
Log: assessed smooth working of source factors, corrected bug on extra levels index |
||||
13446 |
Directory Listing |
Modified
3 years, 1 month ago Fri Jan 3 14:47:06 2020 UTC |
fguzman | |
Log: merged from trunk |
||||
13445 |
Directory Listing |
Modified
3 years, 1 month ago Thu Jan 2 18:06:02 2020 UTC |
marios | |
Log: adm/util/stout/nrg.py adm/adm-ingest-data.py - Use Energy.primary_econfig() instead of accessing the first element of the econfig_full() list. - Use Energy.primary_term() instead of accessing the first element of the terms() list. |
||||
13444 |
Directory Listing |
Modified
3 years, 1 month ago Thu Jan 2 17:52:53 2020 UTC |
marios | |
Log: adm/util/stout/nrg.py - In class Energy(): - Use have_config() to tell if configuration information is available. - Methods primary_config(), primary_econfig(), alternate_config(), and primary_term() now return empty string, instead of None, if configuration information is not available. |
||||
13443 |
Directory Listing |
Modified
3 years, 1 month ago Wed Jan 1 16:36:45 2020 UTC |
marios | |
Log: adm/util/stout/nrg.py - Renamed method Energies.get_object() to Energies.elevel(). adm/adm-fine-tune.py adm/adm-ingest-data.py adm/adm-merge-coll.py adm/adm-merge-nrg.py adm/adm-merge-tp.py adm/adm-sort-nrg.py adm/adm-write-stout.py adm/merge-with-stout.py adm/reorder-stout-levels.py adm/test/stout/test_nrg.py adm/util/register/convert.py adm/util/register/levels.py adm/util/register/terms.py adm/util/stout/nrg.py - Updated method calls. |
||||
13442 |
Directory Listing |
Modified
3 years, 1 month ago Wed Jan 1 15:51:56 2020 UTC |
marios | |
Log: adm/util/stout/nrg.py - Use base method Energies.pprt() in JoinedEnergies.pprt(). |
||||
13441 |
Directory Listing |
Modified
3 years, 1 month ago Wed Jan 1 15:50:41 2020 UTC |
marios | |
Log: adm/util/stout/nrg.py - Removed method JoinedEnergies.new_dataline(). Now Energy.new_dataline() must be used instead. adm/adm-fine-tune.py adm/adm-write-stout.py - Updated calls to point to the right method. |
||||
13440 |
Directory Listing |
Modified
3 years, 1 month ago Wed Jan 1 15:41:55 2020 UTC |
marios | |
Log: adm/util/stout/nrg.py - Removed method JoinedEnergies.get_data(). Direct access to the data is now impossible. |
||||
13439 |
Directory Listing |
Modified
3 years, 1 month ago Wed Jan 1 15:40:07 2020 UTC |
marios | |
Log: adm/util/stout/nrg.py - Removed method JoinedEnergies.shifted(). Now method Energy.shifted() must be used, instead. |
||||
13438 |
Directory Listing |
Modified
3 years, 1 month ago Wed Jan 1 15:36:25 2020 UTC |
marios | |
Log: adm/util/stout/nrg.py - Removed method JoinedEnergies.frac_dEnergy(). Now Energy.frac_dEnergy() must be used instead. adm/adm-write-stout.py - Updated calls to point to the right method. |
||||
13437 |
Directory Listing |
Modified
3 years, 1 month ago Wed Jan 1 15:33:56 2020 UTC |
marios | |
Log: adm/util/stout/nrg.py - Removed method JoinedEnergies.dEnergy(). Now the method Energy.dEnergy() must be used. adm/adm-write-stout.py - Updated calls to point to the right method. |
||||
13436 |
Directory Listing |
Modified
3 years, 1 month ago Wed Jan 1 15:28:59 2020 UTC |
marios | |
Log: adm/util/stout/nrg.py - Removed unused method JoinedEnergies.find_original_index(). |
||||
13435 |
Directory Listing |
Modified
3 years, 1 month ago Wed Jan 1 15:26:29 2020 UTC |
marios | |
Log: adm/util/stout/nrg.py - Removed method JoinedEnergies.get_level_DB(). Now method Energy.db() must be used. adm/util/stout/nrg.py adm/adm-merge-tp.py - Updated calls to point to right method. |
||||
13434 |
Directory Listing |
Modified
3 years, 1 month ago Wed Jan 1 00:55:41 2020 UTC |
marios | |
Log: adm/util/stout/nrg.py - Removed method Energies.matched_with(). Now Energy.matched_with() must be used instead. adm/adm-merge-tp.py adm/merge-with-stout.py adm/util/register/levels.py adm/util/register/terms.py adm/test/stout/test_nrg.py - Updated unit tests. |
||||
13433 |
Directory Listing |
Modified
3 years, 1 month ago Wed Jan 1 00:34:37 2020 UTC |
marios | |
Log: adm/util/stout/nrg.py - Removed method Energies.matched(). Now method Energy.matched() must be used instead. - Updated calls to point to the right method. adm/adm-merge-tp.py adm/adm-write-stout.py adm/merge-with-stout.py adm/util/register/levels.py adm/util/register/terms.py - Updated calls to point to the right method. adm/test/stout/test_nrg.py - Updated unit tests. |
||||
13432 |
Directory Listing |
Modified
3 years, 1 month ago Wed Jan 1 00:26:46 2020 UTC |
marios | |
Log: adm/util/stout/nrg.py - Removed method Energies.reset_matched(). Now method Energy.reset_matched() must be used instead. adm/util/register/levels.py - Updated calls to point to the right method. adm/test/stout/test_nrg.py - Updated unit tests. |
||||
13431 |
Directory Listing |
Modified
3 years, 1 month ago Wed Jan 1 00:20:23 2020 UTC |
marios | |
Log: adm/util/stout/nrg.py - Removed method Energies.set_matched(). Now method Energy.set_matched() must be used instead. adm/merge-with-stout.py adm/util/register/levels.py adm/util/register/terms.py - Updated calls to point to the right method. adm/test/stout/test_nrg.py - Updated unit tests. |
||||
13430 |
Directory Listing |
Modified
3 years, 1 month ago Wed Jan 1 00:10:52 2020 UTC |
marios | |
Log: adm/util/stout/nrg.py - Removed method Energies.dismissed(). Now the method Energy.dismissed() must be used. adm/adm-ingest-data.py - Updated calls to point to the right method. |
||||
13429 |
Directory Listing |
Modified
3 years, 1 month ago Wed Jan 1 00:05:06 2020 UTC |
marios | |
Log: adm/util/stout/nrg.py - Removed method Energies.prt_level_dataline(). |
||||
13428 |
Directory Listing |
Modified
3 years, 1 month ago Wed Jan 1 00:01:17 2020 UTC |
marios | |
Log: adm/util/stout/nrg.py - Removed method Energies.Jtot(). Now the method Energy.Jtot() must be used instead. adm/adm-ingest-data.py adm/util/register/terms.py - Updated calls to point to the right method. adm/test/stout/test_nrg.py - Updated unit tests. |
||||
13427 |
Directory Listing |
Modified
3 years, 1 month ago Tue Dec 31 23:55:00 2019 UTC |
marios | |
Log: adm/util/stout/nrg.py - Removed method Energies.subshells(). Now the method Energy.subshells() must be used instead. adm/util/register/levels.py - Updated calls to point to the right method. |
||||
13426 |
Directory Listing |
Modified
3 years, 1 month ago Tue Dec 31 23:49:24 2019 UTC |
marios | |
Log: adm/util/stout/nrg.py - Moved method Energies.primary_term() to Energy.primary_term(). adm/util/register/terms.py - Updated calls to point to the right method. |
||||
13425 |
Directory Listing |
Modified
3 years, 1 month ago Tue Dec 31 23:38:44 2019 UTC |
marios | |
Log: adm/util/stout/nrg.py - Removed method Energies.terms(). Now Energy.terms() must be used instead. adm/util/register/levels.py adm/util/register/terms.py - Updated calls to point to the right method. adm/test/stout/test_nrg.py - Updated unit tests. |
||||
13424 |
Directory Listing |
Modified
3 years, 1 month ago Tue Dec 31 23:30:39 2019 UTC |
marios | |
Log: adm/util/stout/nrg.py - Moved the Energies.primary_econfig() method to the Energy() class. adm/util/register/terms.py - Update calls to point to the right method. |
||||
13423 |
Directory Listing |
Modified
3 years, 1 month ago Tue Dec 31 23:12:46 2019 UTC |
marios | |
Log: adm/util/stout/nrg.py - Removed method Energies.input_config(). Now the method Energy.input_config() must be used instead. adm/test/stout/test_nrg.py - Updated unit tests. |
||||
13422 |
Directory Listing |
Modified
3 years, 1 month ago Tue Dec 31 23:08:38 2019 UTC |
marios | |
Log: adm/util/stout/nrg.py - Removed method Energies.statw(). Now the method Energy.statw() must be used instead. adm/merge-with-stout.py adm/util/register/levels.py - Updated calls to use the Energy.statw() method. adm/test/stout/test_nrg.py - Updated unit tests. |
||||
13421 |
Directory Listing |
Modified
3 years, 1 month ago Tue Dec 31 22:55:08 2019 UTC |
marios | |
Log: adm/util/stout/nrg.py - Removed method Energies.original_energy(). Now the method Energy.original_energy() must be used instead. adm/adm-merge-tp.py - Updated calls to use the Energy.original_energy() method. |
||||
13420 |
Directory Listing |
Modified
3 years, 1 month ago Tue Dec 31 22:51:06 2019 UTC |
marios | |
Log: adm/util/stout/nrg.py - Removed method Energies.energy(). Now the Energy.energy() method must be used. - Redirected calls to the appropriate method. adm/adm-ingest-data.py adm/adm-merge-nrg.py adm/adm-merge-tp.py adm/adm-sort-nrg.py adm/util/register/terms.py - Updated calls to the Energy.energy() method. adm/test/stout/test_nrg.py - Updated unit tests. |
||||
13419 |
Directory Listing |
Modified
3 years, 1 month ago Tue Dec 31 22:33:38 2019 UTC |
marios | |
Log: adm/util/stout/nrg.py - Removed Energies.dataline() method. Now the Energy.dataline() must be used instead. adm/test/stout/test_nrg.py - Updated unit tests. |
||||
13418 |
Directory Listing |
Modified
3 years, 1 month ago Tue Dec 31 22:27:40 2019 UTC |
marios | |
Log: adm/merge-with-stout.py - Update calls from Energies.prt_level_dataline() to Energy..prt_dataline(). Missed those from r13417, because they were using an older name of the method. |
||||
13417 |
Directory Listing |
Modified
3 years, 1 month ago Tue Dec 31 22:20:34 2019 UTC |
marios | |
Log: adm/util/stout/nrg.py - Removed method Energies.print_dataline(). The homonymous function of the Energy class is to be used, instead. adm/adm-ingest-data.py adm/util/register/terms.py - Updated calls to print_dataline(). |
||||
13416 |
Directory Listing |
Modified
3 years, 1 month ago Tue Dec 31 22:14:05 2019 UTC |
marios | |
Log: adm/util/stout/nrg.py - Moved methods toggle_ignore_level() and is_ignored() from the Energies() class to the Energy class(). The former has been renamed toggle_ignored(). - Use Energy.is_ignored() where the Energies() method was used. adm/test/stout/test_nrg.py - Update unit tests. adm/util/register/levels.py - Use new toggle_ignored() method. |
||||
13415 |
Directory Listing |
Modified
3 years, 1 month ago Mon Dec 30 00:33:54 2019 UTC |
gary | |
Log: update PDF versions of docs |
||||
13414 |
Directory Listing |
Modified
3 years, 1 month ago Mon Dec 30 00:18:26 2019 UTC |
gary | |
Log: svn merge -r13412:13413 ^/trunk |
||||
13412 |
Directory Listing |
Modified
3 years, 1 month ago Sun Dec 29 23:51:36 2019 UTC |
gary | |
Log: add LineLabels.out since it contains results of database print command |
||||
13411 |
Directory Listing |
Modified
3 years, 1 month ago Sun Dec 29 23:48:49 2019 UTC |
gary | |
Log: svn merge -r13409:13410 ^/trunk |
||||
13408 |
Directory Listing |
Modified
3 years, 1 month ago Sat Dec 21 15:52:17 2019 UTC |
marios | |
Log: Renamed adm/adm-joined-stout.py to adm/adm-write-stout.py |
||||
13407 |
Directory Listing |
Modified
3 years, 1 month ago Sat Dec 21 15:49:02 2019 UTC |
marios | |
Log: adm/adm-joined-stout.py - Added missing imports of modules argparse and util.io.err. |
||||
13406 |
Directory Listing |
Modified
3 years, 1 month ago Sat Dec 21 15:46:29 2019 UTC |
marios | |
Log: adm/adm-merge-coll.py - Removed unnecessary module imports. - Minor prompt update. |
||||
13405 |
Directory Listing |
Modified
3 years, 1 month ago Sat Dec 21 15:43:21 2019 UTC |
marios | |
Log: adm/adm-fine-tune.py - Bugfix: The theoretical transition was shown instead of the experimental in the output of 'show transition details'. - Adapted output of 'show branching ratios' to also show the ratio of TPs. Sorting by this ratio is also possible. |
||||
13404 |
Directory Listing |
Modified
3 years, 1 month ago Sat Dec 21 00:38:30 2019 UTC |
marios | |
Log: adm/adm-fine-tune.py - Adapted the output of 'show transition details' to also display the details of the experimental transition, if it exists. |
||||
13403 |
Directory Listing |
Modified
3 years, 1 month ago Sat Dec 21 00:35:37 2019 UTC |
marios | |
Log: adm/adm-merge-tp.py - BUGFIX: The wrong experimental transition was copied on occasion, due to a bug in how the experimental indices were determined. Essentially, the code was not checking which the original database of the transition was. This is now delegated to the function merged_index_to_exprem_index() in util.register.convert.py. - Removed function find_native_tran(). - Removed unnecessary module imports. - Bugfix: Variable nicks.initial does not exist. Now using correct variable nicks.init. |
||||
13402 |
Directory Listing |
Modified
3 years, 1 month ago Sat Dec 21 00:17:56 2019 UTC |
marios | |
Log: adm/adm-fine-tune.py - Adapted output of 'list levels' to show the levels of the theoretical and experimental datasets that correspond to the merged ones. |
||||
13401 |
Directory Listing |
Modified
3 years, 1 month ago Fri Dec 20 23:13:13 2019 UTC |
marios | |
Log: adm/util/register/convert.py - Added module. Moved functions merged_index_to_theory_index() and merged_index_to_exprem_index() from adm/adm-fine-tune.py. adm/util/register/__init__.py - Updated the list of modules in the subpackage, suitable for 'import *'. adm/adm-fine-tune.py - Now using the functions in the new module. - Updated module imports. |
||||
13400 |
Directory Listing |
Modified
3 years, 1 month ago Fri Dec 20 23:07:50 2019 UTC |
marios | |
Log: adm/util/stout/tp.py - Added option to method Transitions.get_transition() to suppress warning for missing transitions. This is used with the 'show branching ratios' option of adm-fine-tune.py. |
||||
13399 |
Directory Listing |
Modified
3 years, 1 month ago Fri Dec 20 22:48:50 2019 UTC |
marios | |
Log: adm/adm-fine-tune.py - Minor change in the output of show_transition_details(). Now a missing transition is reported as such. |
||||
13398 |
Directory Listing |
Modified
3 years, 1 month ago Fri Dec 20 22:47:08 2019 UTC |
marios | |
Log: adm/adm-fine-tune.py - Now the user can display the transitions of choice over and again without having to go back to the main menu. |
||||
13397 |
Directory Listing |
Modified
3 years, 1 month ago Fri Dec 20 22:23:04 2019 UTC |
marios | |
Log: adm/adm-fine-tune.py - Adapted output of 'show level details' to print the experimental level, as well, if available. - Added function merged_index_to_exprem_index() to get the experimental level index that corresponds to the given merged level index. |
||||
13396 |
Directory Listing |
Modified
3 years, 1 month ago Fri Dec 20 21:19:54 2019 UTC |
marios | |
Log: adm/adm-fine-tune.py - Promoted inner function get_TP_total() to script function, and renamed to get_level_TP_total(). - Added menu option 'lf' to show the inverse lifetimes (total Einstein A's) of levels within a range. - Minor improvements on the output of 'show transition details'. |
||||
13395 |
Directory Listing |
Modified
3 years, 1 month ago Fri Dec 20 20:24:10 2019 UTC |
marios | |
Log: adm/adm-fine-tune.py - Adapted show_branching_ratios() to be used similar to show_transitions(). The user may now print the transitions for the entire dataset, in addition to those for one level, and limit either their number on output, or limit the values shown. Sorting any of the presented columns works in all use cases. |
||||
13394 |
Directory Listing |
Modified
3 years, 1 month ago Fri Dec 20 18:08:12 2019 UTC |
marios | |
Log: adm/adm-fine-tune.py - Now printing theory level in the output of option 'ld' (show level details) in addition to merged one, if the latter comes from the experimental dataset. |
||||
13393 |
Directory Listing |
Modified
3 years, 1 month ago Fri Dec 20 17:58:31 2019 UTC |
marios | |
Log: adm/adm-fine-tune.py - Promoted inner function get_theory_index() to script function, and renamed it merged_index_to_theory_index(). - Now printing theory transition in the output of option 'td' (show transition details) in addition to merged one. |
||||
13392 |
Directory Listing |
Modified
3 years, 1 month ago Fri Dec 20 17:37:54 2019 UTC |
marios | |
Log: adm/adm-fine-tune.py - Added menu option to view branching ratios out of a level. |
||||
13391 |
Directory Listing |
Modified
3 years, 1 month ago Fri Dec 20 17:29:06 2019 UTC |
marios | |
Log: adm/util/atoms/config.py - Guard against empty lists in are_alt_subshell_lists_same() and are_alt_term_lists_same(). |
||||
13390 |
Directory Listing |
Modified
3 years, 1 month ago Fri Dec 20 16:04:48 2019 UTC |
marios | |
Log: adm/adm-fine-tune.py - Show the experimental term energies along with the theoretical and merged ones. |
||||
13389 |
Directory Listing |
Modified
3 years, 1 month ago Thu Dec 19 01:24:09 2019 UTC |
marios | |
Log: adm/util/atoms/config.py - Defined are_alt_econfig_same() to compare two lists of (alternate) electronic configurations. adm/test/atoms/test_config.py - Added unit tests for are_alt_econfig_same(). |
||||
13388 |
Directory Listing |
Modified
3 years, 1 month ago Thu Dec 19 00:41:54 2019 UTC |
marios | |
Log: adm/util/atoms/config.py - In fix_hex(), inner function to fmt_econfig(): - Bugfix: Allow for ancestry terms. - Bugfix: Allow for missing electron number (1). - Bugfix: Allow for both a single hexadecimal digit and for 1 or more decimal digits at the end of the subshell string. - Now validating the orbital symbol in the given symbol, unless it is an ancestry term. |
||||
13387 |
Directory Listing |
Modified
3 years, 1 month ago Wed Dec 18 23:45:07 2019 UTC |
marios | |
Log: adm/util/atoms/config.py - Fixed fix_hex(), inner function to fmt_econfig(). It had been temporarily disabled and returned the given subshell in lower case. Now restored to process only the final character if it is preceded by another character, the orbital symbol (e.g., s, p, d, ...), and if the final character is in the range A-F. |
||||
13386 |
Directory Listing |
Modified
3 years, 1 month ago Wed Dec 18 23:38:26 2019 UTC |
marios | |
Log: adm/util/atoms/config.py - Missed call to level_nist_fmt(). Now updated to spec_level_nist_fmt(). |
||||
13385 |
Directory Listing |
Modified
3 years, 1 month ago Wed Dec 18 23:21:35 2019 UTC |
marios | |
Log: adm/util/atoms/config.py - Updated function name parse_level() to parse_spec_level(). - Updated calls to parse_level(). adm/util/adas/adas.py - Updated call to parse_level(). adm/test/atoms/test_config.py - Updated tests for parse_level(). |
||||
13384 |
Directory Listing |
Modified
3 years, 1 month ago Wed Dec 18 23:15:13 2019 UTC |
marios | |
Log: adm/util/atoms/config.py - Updated function names: - is_level() to is_spec_level(). - validate_level() to validate_spec_level(). adm/test/atoms/test_config.py - Updated tests of is_level(). |
||||
13383 |
Directory Listing |
Modified
3 years, 1 month ago Wed Dec 18 23:02:43 2019 UTC |
marios | |
Log: adm/util/atoms/config.py - Updated function name level_nist_fmt() to spec_level_nist_fmt(). adm/test/atoms/test_config.py - Updated tests for level_nist_fmt(). |
||||
13382 |
Directory Listing |
Modified
3 years, 1 month ago Wed Dec 18 22:57:46 2019 UTC |
marios | |
Log: adm/util/atoms/config.py - Renamed function fmt_level() to fmt_spec_level(). - Updated calls to function. NistExtractor/NistExtractor.py adm/util/adas/adas.py - Updated calls to fmt_level(). adm/test/atoms/test_config.py - Updated tests of fmt_level(). |
||||
13381 |
Directory Listing |
Modified
3 years, 1 month ago Wed Dec 18 22:49:40 2019 UTC |
marios | |
Log: adm/util/atoms/config.py - Renamed functions: - convert_level_to_real() to convert_spec_level_to_real(). - convert_level_to_frac() to convert_spec_level_to_frac(). - convert_level_to_plain() to convert_spec_level_to_plain(). adm/util/adas/adas.py - Updated call to convert_level_to_real(). adm/test/atoms/test_config.py - Updated test for convert_level_to_real(). |
||||
13380 |
Directory Listing |
Modified
3 years, 1 month ago Wed Dec 18 22:41:09 2019 UTC |
marios | |
Log: adm/util/atoms/config.py - Renamed function compare_levels() to compare_spec_levels(). adm/test/atoms/test_config.py - Update relevant function name to test_compare_spec_levels(). |
||||
13379 |
Directory Listing |
Modified
3 years, 1 month ago Wed Dec 18 00:14:35 2019 UTC |
marios | |
Log: adm/adm-merge-nrg.py - Minor user-facing string update. |
||||
13378 |
Directory Listing |
Modified
3 years, 1 month ago Wed Dec 18 00:14:08 2019 UTC |
marios | |
Log: adm/adm-merge-nrg.py - Minor user-facing string update. |
||||
13377 |
Directory Listing |
Modified
3 years, 1 month ago Tue Dec 17 23:48:39 2019 UTC |
marios | |
Log: adm/adm-sort-nrg.py - Minor bugfixes: Import omitted packages; prepend class name (JoinedEnergies) by package name (nrg). |
||||
13376 |
Directory Listing |
Modified
3 years, 1 month ago Tue Dec 17 21:44:44 2019 UTC |
marios | |
Log: adm/adm-merge-coll.py adm/adm-merge-nrg.py adm/adm-merge-tp.py adm/util/io/nicks.py - Replaced nickname 'joined' with 'merged'. Makes more sense, given that all the scripts are named "adm-merged-..." |
||||
13375 |
Directory Listing |
Modified
3 years, 1 month ago Tue Dec 17 18:15:56 2019 UTC |
marios | |
Log: adm/adm-finalize.py - Added script to select a set of JSON files as the final dataset. Stout files may be created from these at a later step. adm/util/prun.py - Bugfix in run_command_interactive(): STDOUT was not communicated back to caller. This is now achieved by setting the stdout keyword to PIPE. - Added shell keyword to set the homonymous keyword of the Popen() call to True. If True, Popen() receives one string representing the command to run, instead of a list of arguments. This is in compliance with the instructions online, which advise to do so if the a wildcard is used in the command, as in 'ls *.txt'. |
||||
13374 |
Directory Listing |
Modified
3 years, 1 month ago Tue Dec 17 05:49:01 2019 UTC |
marios | |
Log: adm/adm-merge-coll.py - Ask user if s/he wants to join the datasets anew, if the JSON output of the script is already there. - Removed functionality for creating .tp output file, and metadata on statistics. This is now done by adm-joined-stout.py. - Updated script docstring. adm/adm-merge-tp.py - Ask user if s/he wants to join the datasets anew, if the JSON output of the script is already there. - Removed functionality for creating .tp output file, and metadata on statistics. This is now done by adm-joined-stout.py. - Updated script docstring. adm/adm-merge-nrg.py adm/adm-joined-stout.py - Updated script docstring. |
||||
13373 |
Directory Listing |
Modified
3 years, 1 month ago Tue Dec 17 02:26:16 2019 UTC |
marios | |
Log: adm/adm-joined-stout.py - Remove nicknames from command-line UI. - Refactored calls to generate the energy output files into function create_energy_output(). - Added functions create_transitions_output() and create_collisions_output() to generate the relevant output files for transitions and collisions. |
||||
13372 |
Directory Listing |
Modified
3 years, 1 month ago Tue Dec 17 01:12:26 2019 UTC |
marios | |
Log: Renamed adm/adm-write-stout-nrg.py to adm/adm-joined-stout.py |
||||
13371 |
Directory Listing |
Modified
3 years, 1 month ago Mon Dec 16 17:20:53 2019 UTC |
marios | |
Log: adm/adm-merge-nrg.py - Ask user if s/he wants to join the datasets anew, if the JSON output of the script is already there. |
||||
13370 |
Directory Listing |
Modified
3 years, 1 month ago Mon Dec 16 16:22:55 2019 UTC |
marios | |
Log: adm/adm-fine-tune.py - Removed functionality of sorting joined dataset, and of creating output Stout and metadata files. All the script does now is tune the joined energy dataset -- i.e., what it says it does. adm/adm-merge-nrg.py - Removed functionality of sorting joined dataset, and of creating output Stout and metadata files. All the script does now is join the two energy datasets -- i.e., what it says it does. - The output file is now stored with the nicknamed 'joined' (not 'unsorted'). adm/util/io/nicks.py - Removed nickname 'unsorted'. - Added nickname 'joined'. |
||||
13369 |
Directory Listing |
Modified
3 years, 1 month ago Mon Dec 16 16:10:23 2019 UTC |
marios | |
Log: adm/adm-sort-nrg.py - Added script to sort energies into ascending order. adm/util/stout/nrg.py - Moved function sort_energies() into script above as do_sort_energies(). |
||||
13368 |
Directory Listing |
Modified
3 years, 1 month ago Mon Dec 16 15:35:55 2019 UTC |
marios | |
Log: adm/adm-write-stout-nrg.py - Minor update to UI program description. |
||||
13367 |
Directory Listing |
Modified
3 years, 1 month ago Mon Dec 16 15:31:29 2019 UTC |
marios | |
Log: Renamed adm/adm-sort-nrg.py to adm-write-stout-nrg.py |
||||
13366 |
Directory Listing |
Modified
3 years, 1 month ago Mon Dec 16 15:29:01 2019 UTC |
marios | |
Log: adm/adm-sort-nrg.py - Fleshed out program by adding a main() function, and a user interface. |
||||
13365 |
Directory Listing |
Modified
3 years, 1 month ago Mon Dec 16 15:26:43 2019 UTC |
marios | |
Log: adm/util/stout/__init__.py - Removed 'output' subpackage file from 'import *' calls. |
||||
13364 |
Directory Listing |
Modified
3 years, 1 month ago Mon Dec 16 15:02:55 2019 UTC |
marios | |
Log: Moved adm/util/stout/output.py to adm/adm-sort-nrg.py as an executatble. |
||||
13363 |
Directory Listing |
Modified
3 years, 1 month ago Mon Dec 16 14:56:12 2019 UTC |
marios | |
Log: adm/adm-merge-coll.py adm/adm-register-levels.py adm/adm-register-nocfg.py adm/adm-register-terms.py - Minor comment updates. |
||||
13362 |
Directory Listing |
Modified
3 years, 1 month ago Mon Dec 16 14:48:02 2019 UTC |
marios | |
Log: adm/adm-fine-tune.py adm/adm-merge-tp.py - Modified to work with an optional keyword from the command line for transitions JSON files. adm/util/io/ui.py - Defined function parse_add_JSON_nick_trans() that can be used to get a nickname for transitions JSON files from the command line. |
||||
13361 |
Directory Listing |
Modified
3 years, 1 month ago Fri Dec 13 22:46:16 2019 UTC |
marios | |
Log: adm/adm-fine-tune.py adm/adm-merge-coll.py adm/adm-merge-nrg.py adm/adm-merge-tp.py adm/adm-register-levels.py adm/adm-register-nocfg.py adm/adm-register-terms.py - Change all variable names for JSON nicknames to reflect the fact that they refer to energy files. |
||||
13360 |
Directory Listing |
Modified
3 years, 1 month ago Fri Dec 13 20:01:08 2019 UTC |
marios | |
Log: adm/util/io/ui.py - Renamed function: parse_add_JSON_nick() -> parse_add_JSON_nick_energies(). - Renamed parser interface parameter and attribute that holds the read-in value from 'nick' to 'enick'. adm/adm-fine-tune.py adm/adm-merge-coll.py adm/adm-merge-nrg.py adm/adm-merge-tp.py adm/adm-register-levels.py adm/adm-register-nocfg.py adm/adm-register-terms.py - Updated to new function interface. adm/adm-register-levels.py adm/adm-register-nocfg.py adm/adm-register-terms.py - Improved script docstring. |
||||
13359 |
Directory Listing |
Modified
3 years, 1 month ago Fri Dec 13 19:54:57 2019 UTC |
marios | |
Log: adm/adm-fine-tune.py - In show_transitions(), extend multipole order filtering to transitions that involve a user-specified level. |
||||
13358 |
Directory Listing |
Modified
3 years, 1 month ago Fri Dec 13 19:03:53 2019 UTC |
marios | |
Log: adm/adm-fine-tune.py - Enable show_transitions() to: - List only transitions of one multipole order - Sort the column by original and updated TP, in addition to TP correction. - Apply user-specified cuts when reporting the matching transitions; these can be both in the value of the sorted quantity, or in the number of lines matching. |
||||
13357 |
Directory Listing |
Modified
3 years, 1 month ago Fri Dec 13 07:12:52 2019 UTC |
marios | |
Log: adm/util/stout/output.py - Added module holding functions for creating output files. - Moved functions from adm/adm-merge-nrg.py: - save_metadata() - proc_updates() - create_Stout_nrg() - prepare_joined_output() with slightly modified names. adm/util/stout/__init__.py - Added subpackage file for 'import *' calls. adm/adm-fine-tune.py adm/adm-merge-nrg.py adm/util/stout/nrg.py - Moved function sort_energies() to nrg.py module. adm/adm-fine-tune.py - Now creating output Stout file, and metadata JSON file. |
||||
13356 |
Directory Listing |
Modified
3 years, 1 month ago Fri Dec 13 06:52:20 2019 UTC |
marios | |
Log: adm/util/io/ui.py - Bugfix: Recursive call in readline_float() was using readline_int(). |
||||
13355 |
Directory Listing |
Modified
3 years, 1 month ago Fri Dec 13 02:25:32 2019 UTC |
marios | |
Log: adm/adm-fine-tune.py - Added script for fine-tuning energy data. adm/util/io/nicks.py - Added nickname for fine-tuned data, 'tuned'. adm/util/stout/nrg.py - Defined JoinedEnergies.form_multiplets() method to classify levels into multiplets. adm/util/stout/tp.py - Defined Transition.pprt() method to pretty-print object data. Also defined Transitions.pprt(), which uses the previous method. - Defined Transitions.replace() method to copy data without bailing out if the data already exist. |
||||
13354 |
Directory Listing |
Modified
3 years, 1 month ago Fri Dec 13 00:00:48 2019 UTC |
marios | |
Log: adm/adm-merge-nrg.py - In join_energies(), read the theoretical and experimental energy datasets (in JSON) only if the joined energies JSON file does not exist. |
||||
13353 |
Directory Listing |
Modified
3 years, 1 month ago Thu Dec 12 21:05:02 2019 UTC |
marios | |
Log: adm/adm-merge-nrg.py - Bugfix: Update search for and reading of JSON file to use the new unsorted nickname used as of r13348. |
||||
13352 |
Directory Listing |
Modified
3 years, 1 month ago Thu Dec 12 20:58:57 2019 UTC |
marios | |
Log: adm/util/stout/nrg.py - Refactored code for method JoinedEnergies.new_dataline() as method by the same name in Energy(). - The new method accepts the level index as an optional argument, so that it does not print the stored index (which is the index in the original ADAS or NIST dataset) by default. - The JoinedEnergies() method now calls its Energy() namesake with the joined level index as an argument. adm/util/stout/tp.py - Deleted do-nothing function new_dataline(). - Moved check against 0.0 TP inside TransitionRecord.compose_line(). - Now JoinedTransitions.new_dataline() directly calls the TransitionRecord method. |
||||
13351 |
Directory Listing |
Modified
3 years, 1 month ago Thu Dec 12 20:19:40 2019 UTC |
marios | |
Log: adm/util/io/ui.py - In __get_user_input(), add a tab at the end of the prompt, if no whitespace present there. |
||||
13350 |
Directory Listing |
Modified
3 years, 1 month ago Thu Dec 12 19:50:06 2019 UTC |
marios | |
Log: adm/adm-merge-tp.py adm/util/stout/tp.py - Moved function photon_energy_update_factor() into module tp.py, and renamed it photon_energy_update_ratio(). No changes in functionality. adm/test/stout/test_tp.py - Exercised new module function in unit tests. |
||||
13349 |
Directory Listing |
Modified
3 years, 1 month ago Thu Dec 12 17:55:16 2019 UTC |
marios | |
Log: adm/util/stout/nrg.py - In Energies(): - Refactor reading a dictionary into an object into method do_import(). - Method import_dict() now checks the validity of the required and optional keywords and calls do_import() to do the actual work. - This refactoring was needed because Energies.import_dict() was not consistent with inheritance, contrary to assertions prior to previous testing. The problem was that if no optional keywords were desired, those of the Energies class would be used - this was problematic for using the method with JoinedEnergies methods. - In JoinedEnergies(): - Added storage for ground state subshells. Also added as a mandatory keyword. - Defined method import_dict() that uses Energies.do_import() to populate a class object. Used with read_json(), instead of a super() call to Energies.import_dict(). adm/util/stout/tp.py - Endow JoinedTransitions methods pathname(), save_json(), and read_json() with optional keywords for file nicknames. |
||||
13348 |
Directory Listing |
Modified
3 years, 1 month ago Thu Dec 12 16:07:37 2019 UTC |
marios | |
Log: adm/adm-merge-nrg.py - Save the joined unsorted dataset in a JSON file without a suitable nickname (currently, 'energies_unsorted.json'). Not using a nickname gave the impression that this was the final product of energy registration. - Set ground state subshells for both the unsorted and sorted joined datasets. adm/util/io/nicks.py - Added nickname for unsorted energies, 'unsorted'. |
||||
13347 |
Directory Listing |
Modified
3 years, 1 month ago Thu Dec 12 07:26:53 2019 UTC |
marios | |
Log: adm/util/io/ui.py - Defined function readline_float(). - Bugfix: In readline_int(), input of a string that had a '.' would raise an exception. Now processing user input with float() and passing its output to int(). adm/test/io/test_ui.py - Added unit tests for readline_float(). - Added unit tests for readline_int() that involve floats as strings, e.g., '1.'. |
||||
13346 |
Directory Listing |
Modified
3 years, 1 month ago Thu Dec 12 07:13:22 2019 UTC |
marios | |
Log: adm/util/io/ui.py - Refactored printing of prompt and getting user input into function __get_user_input(). adm/test/io/test_ui.py - Update package imports to be from util.io. |
||||
13345 |
Directory Listing |
Modified
3 years, 1 month ago Thu Dec 12 01:53:48 2019 UTC |
marios | |
Log: adm/util/register/terms.py - Defined function insert_missing_multiplets(), which enters all levels that belong to shifted multiplets into the joined dataset. Replaces functions insert_shifted_multiplets() and insert_unregistered_multiplets(). - Replaced existing function join_terms() (previous version commented out -- see below), and greatly simplified it. - Bugfix: In shift_levels(), quitting without first matching any levels led to a crash. Now function exits gracefully to next term. - Commented out obsolete functions: - insert_multiplets_into_registries() - register_all_multiplets() - prt_registration() - get_unregistered_multiplets() - insert_shifted_multiplets() - insert_unregistered_multiplets() - join_terms() adm/util/register/levels.py - Minor formatting changes in output to log. adm/util/io/ui.py - Allow for spaces on user-input in functions readline_int() and pick_option() |
||||
13344 |
Directory Listing |
Modified
3 years, 1 month ago Wed Dec 11 23:26:16 2019 UTC |
marios | |
Log: adm/util/register/terms.py - Defined new function register_terms(), which drives the registration of terms between two datasets in two steps: First, terms are registered one by one, and then, any unregistered terms are shifted. Compared to the previous methodology, there are two differences: the terms are ordered in terms of increasing energy; and there is no separate bookkeeping done, which limited the original version of the term registration functions. - Defined register_term_by_term() to carry out the basic term registration. This is essentially a refactoring of the operations done with the previous version, see __process_multiplets() below. - Defined shift_unregistered_terms(). This is essentially a rewrite of shift_unregistered_multiplets() that does not require the bookkeeping data structures the latter relied on. - Modified __get_new_term_energy() to preserve the energy gap of the term to the nearest term, instead of preserving a fractional offset. - Defined functions __get_bracketing_terms_energies(), which is similar to the homonymous previous function, except that it does not rely on bookkeping data structures. - Refactored the bulk of register_unregistered_multiplets() into function __process_multiplets(). This includes the functionality of matching levels and matching (and shifting) terms. - Modified shift_interactive() to return a False value if not all levels of a multiplet were shifted (matched). - Modified shift_term() to check that the average energies of the updated theoretical and the experimental terms agree _only_ if all levels were shifted (matched). - Refactored code for selecting an experimental configuration and term into function __get_experm_config_term(). - Refactored code for selecting an experimental configuration and term from a shifted theoretical into function __get_shifted_experm_config_term(). - Refactored code that checks that two levels agree into function confirm_same_level(). - Commented out obsolete functions: - register_terms() -- new function retains this name - shift_unregistered_multiplets() -- replaced by shift_unregistered_terms() - __sort_registered_energies() -- relied on bookkeeping dict - __get_bracketing_terms_energies() -- replaced with function of same name - process_registration() - register_multiplets() adm/util/stout/nrg.py - In Energies(): - Broke method prt_term_levels() into two methods, one that prints the term info for one set of levels (same method name), and one that calls this prints the info for all sets of levels (prt_term()) by calling the first recursively. - Defined method multiplet_matched() to tell if all levels in a multiplet have been matched against the other dataset. - Defined method multiplets_sorted() to obtain an energy-sorted list of the multiplets in the dataset. |
||||
13343 |
Directory Listing |
Modified
3 years, 1 month ago Mon Dec 9 04:55:12 2019 UTC |
marios | |
Log: adm/util/register/terms.py - BUGFIX: In __sort_registered_energies(), the experimental dataset was queried with theoretical levels. |
||||
13342 |
Directory Listing |
Modified
3 years, 1 month ago Mon Dec 9 04:21:42 2019 UTC |
marios | |
Log: adm/util/register/terms.py - In register_all_multiplets(), ignore unregistered multiplets. These are identified as those that have been shifted in energy by some amount, which is set by matching to a multiplet in the experimental dataset. |
||||
13341 |
Directory Listing |
Modified
3 years, 1 month ago Mon Dec 9 03:32:00 2019 UTC |
marios | |
Log: adm/util/register/terms.py - Removed creation of temporary JSON file from register_terms(). - In __sort_registered_energies(), put debugging information in a True / False loop, instead of printing at every loop. |
||||
13340 |
Directory Listing |
Modified
3 years, 1 month ago Sun Dec 8 04:55:49 2019 UTC |
marios | |
Log: adm/util/register/terms.py - Defined a number of functions to shift unmatched terms. This is intended to preserve as much as possible the energy differences between closely-spaced terms. This, in turn, is intended to preserve the Einstein A values of transitions between closely-spaced levels. - Currently, the energy of a term is reset to be proportionally spaced from two bracketing (matched) terms in the final dataset, as in the original. The terms are selected to be the closest to that term that are not inverted in the final dataset. - New functions: - shift_unregistered_multiplets() - __get_new_term_energy() - __get_bracketing_terms_energies() - __sort_registered_energies() - Converted inner function shift_interactive() to a proper function. Made the the list of experimental levels an optional argument. Called from shift_unregistered_multiplets(). - In register_terms() and join_terms(), now printing the registration only if it defined. This is possible if the (e,J,p)-group matching step is not done before attempting to match terms. adm/util/stout/nrg.py - Bugfix: Class Energies() now derives from object, not DeepCopy. - Added optional keyword to Energies.multiplet_average_energy() to control whether the average is taken over the original energies, or the updated ones after level matching and term shifting. |
||||
13339 |
Directory Listing |
Modified
3 years, 2 months ago Thu Dec 5 00:23:28 2019 UTC |
marios | |
Log: adm/util/atoms/trans.py - Update docstring to function resolve_ttype(). |
||||
13338 |
Directory Listing |
Modified
3 years, 2 months ago Thu Dec 5 00:00:29 2019 UTC |
marios | |
Log: adm/test/atoms/test_trans.py - Added keywords to inner function test_ttype() to exercise the selection rules for LS coupling. - Added keywords to inner function test_resolve_ttype() to exercise the selection rules for configuration interaction and LS coupling. - Explicitly disabled CI and LS rules in 17/18 unit tests for M1 transitions. - In unit tests for resolve_ttype(): - Only the rigorous rules in is_M1() can reproduce the following transitions as M1 type: - H I: 1s - 2s - He I: z line - Mg I: a number of transitions (5/8) adm/util/atoms/trans.py - Added keywords to toggle use of CI and LS selection rules to functions is_E1(), is_E2(), is_M1(), is_M2(), and also resolve_ttype() -- used by default. - Exercise of these rules is now conditional in all is_*() functions. - In is_M1(): - Now exercising CI and LS rules by default, but may be disabled. - Bugfix: LS rules included cases where |DL| = 1 -- now removed. - resolve_ttype() now calls is_M1() with CI and LS selection rules disabled. This has been guided by unit testing. |
||||
13337 |
Directory Listing |
Modified
3 years, 2 months ago Tue Dec 3 04:50:03 2019 UTC |
marios | |
Log: adm/util/stout/tp.py - Update Transition.order() to report the multipole order read from NIST, if present. The custom order is used if no order was available in the input dataset. - Update Transition.order_index() to operate on the output of .order(), and to report an index of 1 (int), if .order() returns an empty string. adm/test/stout/test_tp.py - Update unit tests, and add another to test the default order index of 1. |
||||
13336 |
Directory Listing |
Modified
3 years, 2 months ago Tue Dec 3 04:30:41 2019 UTC |
marios | |
Log: adm/util/register/terms.py - Defined function insert_shifted_multiplets() to add registered theoretical terms to the joint dataset. Called by join_terms(). |
||||
13335 |
Directory Listing |
Modified
3 years, 2 months ago Tue Dec 3 03:51:43 2019 UTC |
marios | |
Log: adm/util/register/terms.py - Defined new function, register_all_multiplets(), which maps the registration of terms that have either been matched level-by-level, or shifted as a unit. - Function used with join_terms(), in lieu of register_multiplets(). adm/util/stout/nrg.py - Defined new Energies.multiplet_shifted_with() method that reports the levels in the experimental dataset against which the theoretical term has been shifted. |
||||
13334 |
Directory Listing |
Modified
3 years, 2 months ago Mon Dec 2 22:43:32 2019 UTC |
marios | |
Log: adm/util/register/terms.py - Refactored register_multiplets() into separate functions for testing that two multiplets are indeed identical (confirm_same_multiplet), for adding multiplets into data structures (insert_multiplets_into_registries), and for reporting the registration to log (prt_registration). The latter is called after register_multiplets(), not by that function itself. |
||||
13333 |
Directory Listing |
Modified
3 years, 2 months ago Mon Dec 2 22:07:48 2019 UTC |
marios | |
Log: adm/util/register/levels.py - When copying groups into the joint dataset, make sure the title is shown only if there are any levels in the group to copy. |
||||
13332 |
Directory Listing |
Modified
3 years, 2 months ago Mon Dec 2 17:19:10 2019 UTC |
marios | |
Log: adm/util/register/terms.py - Show unregistered multiplets only if they are indeed unregistered. |
||||
13331 |
Directory Listing |
Modified
3 years, 2 months ago Mon Dec 2 16:17:52 2019 UTC |
marios | |
Log: adm/util/register/terms.py - While processing unregistered terms, do not confirm the order of levels when they have been matched one-by-one -- the output of check_term_order() can be confusing. - Bugfix: In check_term_order(), the user may opt to dismiss a match. Set the flag for matched terms with the output of that (inner) function. |
||||
13330 |
Directory Listing |
Modified
3 years, 2 months ago Wed Nov 27 06:21:01 2019 UTC |
marios | |
Log: adm/docs/manual/examples.tex - Discussed TP accuracy flags on example .tp file structure, as well as table in comment section. - Improved language on the example on running adm-fetch-nist.py. |
||||
13329 |
Directory Listing |
Modified
3 years, 2 months ago Wed Nov 27 06:05:43 2019 UTC |
marios | |
Log: NistExtractor/NistExtractor.py - Refactored writing of .tp file to make use of the TransitionRecord() class of tp.py. adm/util/stout/tp.py adm/test/stout/test_tp.py - Used variable for unidentified transition from trans.py instead of None values (or literal empty strings) for null multipole orders. |
||||
13328 |
Directory Listing |
Modified
3 years, 2 months ago Wed Nov 27 04:30:41 2019 UTC |
marios | |
Log: adm/util/nist/tp.py - Removed redundant imports. |
||||
13327 |
Directory Listing |
Modified
3 years, 2 months ago Wed Nov 27 04:26:59 2019 UTC |
marios | |
Log: Now using '/usr/bin/env python3' instead of non-existent '/usr/bin/python3': - adm-adas-to-stout.py - adm-create-pfile.py - adm-fetch-nist.py - adm-fix-fnames.py - adm-ingest-data.py - adm-merge-nrg.py - adm-merge-tp.py - adm-query-adas.py - adm-register-levels.py - adm-register-nocfg.py - adm-register-terms.py - adm-setup.py - create-elements-module.py - merge-with-stout.py - reorder-stout-levels.py - stout-data-summary.py - update-stout.py Set executable property on: - adm-register-nocfg.py - adm-register-terms.py |
||||
13326 |
Directory Listing |
Modified
3 years, 2 months ago Wed Nov 27 04:19:07 2019 UTC |
marios | |
Log: NistExtractor/NistExtractor.py - Extract the TP accuracy flag from the HTML table, and store it in the .tp file as a comment to each transition. - Also write a table of all the accuracy flags encountered in the dataset. - To handle this functionality: - In class RadTrans(), set aside storage for the TP accuracy flag. - In class AllRadTrans(), pass accuracy value to the underlying RadTrans() object. - Remove line references from output .tp file. The NIST line wavelengths are not used in Stout. adm/util/nist/tp.py - Bugfix: __sort_labels() was erasing the original list. Now it operates on a local copy of the accuracy list. - Renamed print_table() to print_acc_table(). - Now printing an empty comment line both before and after the accuracy table. adm/test/nist/test_tp.py - Bugfix: Inner function test_print_table() was not being used. - Renamed test_print_table() to test_print_acc_table(). |
||||
13325 |
Directory Listing |
Modified
3 years, 2 months ago Wed Nov 27 03:18:35 2019 UTC |
marios | |
Log: adm/util/nist/tp.py - Added module to handle NIST tables of transitions. - Currently, it contains only functions relevant to the accuracy of the reported TP values. adm/test/nist/test_tp.py - Exercised functions of new module in unit tests. |
||||
13324 |
Directory Listing |
Modified
3 years, 2 months ago Tue Nov 26 21:47:57 2019 UTC |
marios | |
Log: adm/util/atoms/config.py - Temporarily disable fix_hex(), inner function of fmt_econfig(). |
||||
13323 |
Directory Listing |
Modified
3 years, 2 months ago Tue Nov 26 18:04:06 2019 UTC |
marios | |
Log: adm/util/register/terms.py - Bugfix: shift_levels() was expected to return bool in register_unregistered_multiplets() but was returning None instead. - Simplify question to user whether to keep the changes made or not. adm/util/stout/nrg.py - In Energies.register_level_print(), now also print Jtot. |
||||
13322 |
Directory Listing |
Modified
3 years, 2 months ago Tue Nov 26 05:33:49 2019 UTC |
marios | |
Log: adm/adm-register-terms.py - Added script to register the terms of two energy datasets. adm/adm-register-nocfg.py - Added script to register two energy datasets without configuration info. |
||||
13321 |
Directory Listing |
Modified
3 years, 2 months ago Tue Nov 26 05:13:01 2019 UTC |
marios | |
Log: adm/adm-register-levels.py - Remove redundant imports. - No need for the number of electrons when reading from a JSON file. |
||||
13320 |
Directory Listing |
Modified
3 years, 2 months ago Tue Nov 26 04:46:02 2019 UTC |
marios | |
Log: adm/adm-register-levels.py - Undid r13314. Different scripts will be used for registration of levels, terms, and datasets without configuration information. - Removed all things related to modes. adm/util/io/nicks.py - Refined nicknames for registered datasets to registered levels, terms, and data without configuration information. |
||||
13319 |
Directory Listing |
Modified
3 years, 2 months ago Tue Nov 26 04:35:51 2019 UTC |
marios | |
Log: adm/util/register/nocfg.py - Rename functions: - register_levels_by_energy() to register_nocfg() - join_energies() to join_nocfg() adm/adm-merge-nrg.py - Use new function name, join_nocfg(). |
||||
13318 |
Directory Listing |
Modified
3 years, 2 months ago Tue Nov 26 04:32:47 2019 UTC |
marios | |
Log: adm/util/register/terms.py - Bugfix: Account for no registered terms existing in the datasets. This could happen if registration of terms is done without it being preceded by registration of levels. |
||||
13317 |
Directory Listing |
Modified
3 years, 2 months ago Mon Nov 25 18:23:53 2019 UTC |
marios | |
Log: adm/adm-ingest-data.py - Bugfix: The script printed the original energy level data, when it should have been printing the updated ones. - Improved log output for transition and collision updates. adm/util/stout/nrg.py - Renamed Energies() method groups_remove_degenerate() to groups_remove_degenerate_terms(). - Improved log output of method. - Levels are removed from a group only the level already exists therein. adm/docs/manual/examples.tex - Improved description of the examples of the adm-ingest-data.py command. |
||||
13316 |
Directory Listing |
Modified
3 years, 2 months ago Mon Nov 25 16:33:49 2019 UTC |
marios | |
Log: adm/docs/manual/intro.tex - Minor language improvements. |
||||
13315 |
Directory Listing |
Modified
3 years, 2 months ago Mon Nov 25 15:47:59 2019 UTC |
marios | |
Log: adm/docs/manual/man.tex adm/docs/manual/LocalBibliography.bib - Added bibliography file. adm/docs/manual/examples.tex - Started new section on level joining. adm/docs/manual/intro.tex - Added section on description of algorithm. |
||||
13314 |
Directory Listing |
Modified
3 years, 2 months ago Mon Nov 25 06:32:53 2019 UTC |
marios | |
Log: adm/adm-register-levels.py - Add capability to register terms and levels without configuration info. - Defined modes for levels, terms, and energies, and function validate_mode() to check that a valid mode is passed. - Added command-line option to set the registration mode. - Moved term- and energy-based registration from script adm-merge-nrg.py. adm/adm-merge-nrg.py - Replaced calls to registration functions for terms, and levels with no configuration data with calls to functions that fold such data into the joint energy dataset: join_terms() and join_energies(). adm/util/register/terms.py - Split operations that fold terms of the two datasets into the joint one as a separate function, join_terms(). adm/util/register/nocfg.py - Likewise, as function join_energies(), currently a stub. |
||||
13313 |
Directory Listing |
Modified
3 years, 2 months ago Mon Nov 25 05:27:28 2019 UTC |
marios | |
Log: adm/util/register/levels.py - Remove joined_energies from interface of register_levels(), and its callee, process_group(). adm/adm-register-levels.py - Update to new interface of register_levels(). |
||||
13311 |
Directory Listing |
Modified
3 years, 2 months ago Fri Nov 22 21:25:28 2019 UTC |
marios | |
Log: adm/util/stout/coll.py - In Collisions.save_json() and .read_json() include optional keyword nickname to the calls to JSON() methods save() and read(). adm/adm-merge-coll.py - Fixed various bugs. |
||||
13310 |
Directory Listing |
Modified
3 years, 2 months ago Fri Nov 22 19:23:19 2019 UTC |
marios | |
Log: adm/adm-merge-coll.py - Add comment to original commit in the docstring of the script. |
||||
13309 |
Directory Listing |
Modified
3 years, 2 months ago Fri Nov 22 19:05:30 2019 UTC |
marios | |
Log: Make use of the new io.nicks module in: - adm/adm-ingest-data.py - adm/adm-merge-coll.py - adm/adm-merge-nrg.py - adm/adm-merge-tp.py - adm/adm-register-levels.py |
||||
13308 |
Directory Listing |
Modified
3 years, 2 months ago Fri Nov 22 19:01:10 2019 UTC |
marios | |
Log: adm/util/io/nicks.py - Module parametrizes JSON file nicknames. |
||||
13307 |
Directory Listing |
Modified
3 years, 2 months ago Thu Nov 21 21:08:11 2019 UTC |
marios | |
Log: adm/adm-merge-coll.py - Updated, based on logic of adm-merge-tp.py. At the moment, only one dataset is copied to the joint collisions. |
||||
13306 |
Directory Listing |
Modified
3 years, 2 months ago Thu Nov 21 20:34:56 2019 UTC |
marios | |
Log: adm/util/stout/coll.py - In CollisionBlock(): - Added class-wide tuple of optional keywords, used with JSON serialization. - Defined method sort() to sort the collisions in order to ascending indices and store the data in new private list. - Defined prt_sorted() to print sorted data into list. - Made lo_levels() and hi_levels() return sorted lists. - Renamed prt_in_order() to prt_input_order(). - In Collisions(): - Defined method sort() to sort the contents of each CollisionBlock(). - Defined method prt_sorted() to print the sorted data for each block -- calls CollisionBlock.prt_sorted() for each collision block in succession. - Renamed prt_in_order() to prt_input_order(), and made it call CollisionBlock.prt_input_order(). adm/test/stout/test_coll.py - Exercised methods sort() and prt_sorted() of CollisionBlock() and Collisions() in unit tests. |
||||
13305 |
Directory Listing |
Modified
3 years, 2 months ago Thu Nov 21 18:18:17 2019 UTC |
marios | |
Log: adm/adm-merge-tp.py - Bugfix: Wrong module for the function to read the .tp sections. |
||||
13304 |
Directory Listing |
Modified
3 years, 2 months ago Thu Nov 21 18:16:24 2019 UTC |
marios | |
Log: adm/adm-merge-tp.py - Bugfix: create_Stout_tp() was reading the .nrg files into sections, not the .tp files. |
||||
13303 |
Directory Listing |
Modified
3 years, 2 months ago Wed Nov 20 23:59:18 2019 UTC |
marios | |
Log: adm/util/atoms/config.py - Bugfic: In fmt_econfig(), do not let inner function fix_hex() convert d to D -- this is perfectly valid subshell symbol. adm/util/adas/eissner.py - Remove redundant unit tests. |
||||
13302 |
Directory Listing |
Modified
3 years, 2 months ago Wed Nov 20 16:56:53 2019 UTC |
marios | |
Log: adm/adm-ingest-data.py - Updated call of Collisions.get_collision() to .find_collision(). See r13280. |
||||
13301 |
Directory Listing |
Modified
3 years, 2 months ago Wed Nov 20 16:53:38 2019 UTC |
marios | |
Log: adm/stout-data-summary.py - Updated script to current state of util package. - Added function parse_add_species() to handle species given in the command line. |
||||
13300 |
Directory Listing |
Modified
3 years, 2 months ago Wed Nov 20 16:51:30 2019 UTC |
marios | |
Log: adm/util/stout/info.py - Bugfix: Required module types.py was not imported. adm/test/stout/test_info.py - Bugfix: Module cloudy.py was not imported from current location util.cloudy. |
||||
13299 |
Directory Listing |
Modified
3 years, 2 months ago Wed Nov 20 16:31:52 2019 UTC |
marios | |
Log: adm/util/cloudy/stout_refs.py - Updated to use the fs.JSON class for reading refs.json. |
||||
13298 |
Directory Listing |
Modified
3 years, 2 months ago Wed Nov 20 16:22:46 2019 UTC |
marios | |
Log: adm/test/cloudy/test_stout_refs.py - Updated test module to the new location of the module to be tested. |
||||
13297 |
Directory Listing |
Modified
3 years, 2 months ago Wed Nov 20 16:16:41 2019 UTC |
marios | |
Log: adm/test/cloudy/__init__.py - Added subpackage file for 'import *' calls. |
||||
13296 |
Directory Listing |
Modified
3 years, 2 months ago Wed Nov 20 16:14:18 2019 UTC |
marios | |
Log: Updated package contents for 'import *' calls: - adm/test/stout/__init__.py - adm/util/cloudy/__init__.py - adm/util/stout/__init__.py |
||||
13295 |
Directory Listing |
Modified
3 years, 2 months ago Wed Nov 20 16:11:50 2019 UTC |
marios | |
Log: Moved adm/test/stout/test_refs.py to adm/test/cloudy/test_stout_refs.py |
||||
13294 |
Directory Listing |
Modified
3 years, 2 months ago Wed Nov 20 16:07:15 2019 UTC |
marios | |
Log: Renamed adm/util/cloudy/refs.py to adm/util/cloudy/stout_refs.py |
||||
13293 |
Directory Listing |
Modified
3 years, 2 months ago Wed Nov 20 16:04:40 2019 UTC |
marios | |
Log: Moved adm/util/stout/refs.py to adm/util/cloudy/refs.py |
||||
13292 |
Directory Listing |
Modified
3 years, 2 months ago Wed Nov 20 16:00:29 2019 UTC |
marios | |
Log: Updated module docstrings. - adm/util/stout/c2s.py - adm/util/stout/coll.py - adm/util/stout/dirtree.py - adm/util/stout/fmt.py - adm/util/stout/meta.py - adm/util/stout/nrg.py - adm/util/stout/refs.py - adm/util/stout/tp.py |
||||
13291 |
Directory Listing |
Modified
3 years, 2 months ago Wed Nov 20 03:47:07 2019 UTC |
marios | |
Log: adm/util/stout/coll.py - In Collisions(): - Defined class-wide basename parameter, for use with JSON files. - Update .save_json() and .read_json() to use .export_dict() and .import_dict(), respectively, as well as methods of the JSON class. - In CollisionBlock(): - Bugfix: Imported dict was stored with str level indices, instead of int. adm/test/stout/test_coll.py - Exercised Collisions.save_json() and .read_json() in unit tests. |
||||
13290 |
Directory Listing |
Modified
3 years, 2 months ago Wed Nov 20 02:46:12 2019 UTC |
marios | |
Log: adm/util/stout/coll.py - In Collisions(): - Defined class-wide tuple of required keywords for importing data from a dict. - Defined methods export_dict() and import_dict() to handle object serialization. adm/test/stout/test_coll.py - Exercised Collisions.export_dict() and .import_dict() in unit tests. |
||||
13289 |
Directory Listing |
Modified
3 years, 2 months ago Wed Nov 20 02:06:56 2019 UTC |
marios | |
Log: adm/test/stout/test_coll.py - Exercise method Collisions.prt_in_order() as part of the comparison of Collisions() objects. |
||||
13288 |
Directory Listing |
Modified
3 years, 2 months ago Tue Nov 19 22:06:42 2019 UTC |
marios | |
Log: adm/util/stout/coll.py - In Collisions.reset_db(): - Do not include the nominal dataset name; instead, derive the name from the data. - Bugfix: Use the append() method to add to the list -- not extend(). adm/test/stout/test_coll.py - Exercised Collisions.reset_db() in unit tests. |
||||
13287 |
Directory Listing |
Modified
3 years, 2 months ago Tue Nov 19 21:51:36 2019 UTC |
marios | |
Log: adm/util/stout/coll.py - Bugfix: In Collisions.copy(), attempt to write at unallocated end of list. adm/test/stout/test_coll.py - Exercised Collisions.copy() in unit tests. |
||||
13286 |
Directory Listing |
Modified
3 years, 2 months ago Tue Nov 19 19:40:41 2019 UTC |
marios | |
Log: adm/test/stout/test_coll.py - Exercised Collisions.insert_block() in unit tests. |
||||
13285 |
Directory Listing |
Modified
3 years, 2 months ago Tue Nov 19 19:20:19 2019 UTC |
marios | |
Log: adm/util/stout/coll.py - In Collisions(): - Replicated infrastructure for finding blocks based on a temperature list. - Added private method __find_blocks_by_temps(), which looks for a given list of temperatures among the blocks, and reports all matching instances. - Added private method __get_iblock_by_temps(), which gets the index of a block that has the requested list of temperatures. - Renamed method insert_nonexisting_collision() to insert_collision(). - In add_collision_record() changed the optional keyword from 'this_block' to 'block'. adm/test/stout/test_coll.py - Exercised Collisions.insert_collision() in unit_tests. |
||||
13284 |
Directory Listing |
Modified
3 years, 2 months ago Tue Nov 19 17:13:57 2019 UTC |
marios | |
Log: adm/util/stout/coll.py - In Collisions(): - Modified replace() to not require the collider and levels of the collision it is going to replace, but to extract that information from the object itself. - Ingested the calls to __prep_block_indices() and __find_blocks() in __get_iblock(). - In find_collision(), have_collision(), and get_collision_temps() changed the optional keyword from 'these_blocks' to 'blocks'. adm/test/stout/test_coll.py - Exercised Collisions.replace() in unit tests. - Expanded datasets by including a field ('replace_datalines') in their dictionaries with the collisions to be used with replace(). adm/merge-with-stout.py - Update to new Collisions.replace() interface. |
||||
13283 |
Directory Listing |
Modified
3 years, 2 months ago Tue Nov 19 15:54:26 2019 UTC |
marios | |
Log: adm/test/stout/test_coll.py - Exercised Collisions.get_collision_temps() in unit tests. |
||||
13282 |
Directory Listing |
Modified
3 years, 2 months ago Tue Nov 19 01:08:45 2019 UTC |
marios | |
Log: adm/merge-with-stout.py - Changed call for method get_temps_for_collision() to get_collision_temps(). |
||||
13281 |
Directory Listing |
Modified
3 years, 2 months ago Tue Nov 19 01:04:07 2019 UTC |
marios | |
Log: adm/util/stout/coll.py - In Collisions(): - Renamed method get_temps_for_collision() to get_collision_temps(). - Defined method __get_iblock() to resolve the block index where the collision was found. Used with methods find_collision() and get_collision_temps(). |
||||
13280 |
Directory Listing |
Modified
3 years, 2 months ago Tue Nov 19 00:44:26 2019 UTC |
marios | |
Log: adm/util/stout/coll.py - Removed method Collisions.get_collision() -- method find_collision() does the same job. Moved warning from get_collision() to find_collision() for the case that the collision is found. |
||||
13279 |
Directory Listing |
Modified
3 years, 2 months ago Tue Nov 19 00:30:16 2019 UTC |
marios | |
Log: adm/test/stout/test_coll.py - Now storing Collisions() datasets into objects that other Collisions() methods can invoke. - Exercised Collisions.find_collision() in unit tests. |
||||
13278 |
Directory Listing |
Modified
3 years, 2 months ago Mon Nov 18 23:57:41 2019 UTC |
marios | |
Log: adm/util/stout/coll.py - In CollisionBlock.insert_collision(), add check that the number of collision strength data values is equal to the number of temperatures in the block. adm/test/stout/test_coll.py - Update all CollisionBlock() unit tests to setup() the block prior to testing any methods. |
||||
13277 |
Directory Listing |
Modified
3 years, 2 months ago Mon Nov 18 23:22:08 2019 UTC |
marios | |
Log: adm/util/stout/coll.py - In Collisions(): - Refactored code that checks the block index into function __validate_block_index(). - Bugfix: __prep_block_indices() always returned empty list. adm/test/stout/test_coll.py - Defined inner function __create_dataset_Collisions() to handle the creation of Collisions() objects. - Exercised Collisions.add_collision_record() and .have_collision() in unit tests. |
||||
13276 |
Directory Listing |
Modified
3 years, 2 months ago Mon Nov 18 22:06:17 2019 UTC |
marios | |
Log: adm/test/stout/test_coll.py - Exercised Collisions.add_block() in unit tests. |
||||
13275 |
Directory Listing |
Modified
3 years, 2 months ago Mon Nov 18 20:14:43 2019 UTC |
marios | |
Log: adm/util/stout/coll.py - Removed useless call to CollisionRecord.extract_temp() from Collisions.add_block(). adm/test/stout/test_coll.py - Exercised Collisions.init() in unit test. |
||||
13274 |
Directory Listing |
Modified
3 years, 2 months ago Mon Nov 18 18:00:08 2019 UTC |
marios | |
Log: adm/util/stout/coll.py - In CollisionBlock(): - Defined class-wide tuple of required keywords for manipulating exports to and imports from dictionaries. - In export_dict(), use private attribute names as dictionary keys; i.e., do not drop the leading '_' from attribute names. - Defined import_dict() to ingest a dictionary into an object. adm/test/stout/test_coll.py - Exercised CollisionBlock.export_dict() and .import_dict() in unit tests. |
||||
13273 |
Directory Listing |
Modified
3 years, 2 months ago Mon Nov 18 17:19:51 2019 UTC |
marios | |
Log: adm/util/stout/coll.py - In CollisionBlock().copy(): - Use deep-copy for the record order. - Do not merely copy the collision objects in the _data dict; instead, define each entry as a Collision() object, and use the copy() method of the object to populate the _data dict. adm/test/stout/test_coll.py - Exercise CollisionBlock.copy() in unit tests. |
||||
13272 |
Directory Listing |
Modified
3 years, 2 months ago Mon Nov 18 16:27:18 2019 UTC |
marios | |
Log: adm/util/stout/coll.py - In CollisionBlock(), renamed reset_DB() to reset_db(). - Method no longer uses the block database entry, but instead builds up the composite name from the constituent collision records. adm/test/stout/test_coll.py - Exercised CollisionBlock.reset_db() in unit methods(). |
||||
13271 |
Directory Listing |
Modified
3 years, 2 months ago Mon Nov 18 15:58:11 2019 UTC |
marios | |
Log: adm/util/stout/coll.py - In Collision(): - Add class-wide tuple of optional keywords, currently holding only the '_replaced' attribute. - Add methods set_replaced() and replaced(). - Update copy() and import_dict() to operate on tuple of optional keywords. - In CollisionBlock.replace(), set replaced flag on the copied collision. adm/test/stout/test_coll.py - Exercise Collision.replaced() in unit tests. - Add unit test that the collision has been flagged as replaced in the tests for CollisionBlock.replaced(). |
||||
13270 |
Directory Listing |
Modified
3 years, 2 months ago Mon Nov 18 15:24:30 2019 UTC |
marios | |
Log: adm/util/stout/coll.py - In CollisionBlock.replace(): - Remove the collider and levels from the argument list; instead use the information of the collision object to identify the collision to replace. - Carry out the replacement if the collision is already present in the dataset. Issue a warning if replacement of a non-existent collision was intended. adm/test/stout/test_coll.py - Exercise CollisionBlock.replace() in unit tests. |
||||
13269 |
Directory Listing |
Modified
3 years, 2 months ago Mon Nov 18 14:20:59 2019 UTC |
marios | |
Log: adm/test/stout/test_coll.py - Exercised CollisionBlock.hi_levels() in unit tests. |
||||
13268 |
Directory Listing |
Modified
3 years, 2 months ago Mon Nov 18 13:53:30 2019 UTC |
marios | |
Log: adm/test/stout/test_coll.py - Exercise CollisionBlock.lo_levels() in unit tests. |
||||
13267 |
Directory Listing |
Modified
3 years, 2 months ago Mon Nov 18 13:46:12 2019 UTC |
marios | |
Log: adm/test/stout/test_coll.py - Refactor creation of CollisionBlock() dataset. Use with unit test drivers. |
||||
13266 |
Directory Listing |
Modified
3 years, 2 months ago Fri Nov 15 16:56:17 2019 UTC |
marios | |
Log: adm/util/stout/coll.py - Bugfix: CollisionBlock.colliders() did not return a list(), but a dict_keys() object. Now it returns a sorted list. adm/test/stout/test_coll.py - Exercise CollisionBlock.colliders() in unit tests. |
||||
13265 |
Directory Listing |
Modified
3 years, 2 months ago Fri Nov 15 16:40:13 2019 UTC |
marios | |
Log: adm/test/stout/test_coll.py - Extend tests for CollisionBlock.get_collision() to include collisions that do not exist in the dataset. |
||||
13264 |
Directory Listing |
Modified
3 years, 2 months ago Thu Nov 14 22:17:02 2019 UTC |
marios | |
Log: adm/test/stout/test_coll.py - Exercise CollisionBlock.get_collision() in unit tests. |
||||
13263 |
Directory Listing |
Modified
3 years, 2 months ago Thu Nov 14 22:06:18 2019 UTC |
marios | |
Log: adm/test/stout/test_coll.py - Modify tests for Collision.insert_collision() and .add_collision_record() to work with lists of data lines. - Add unit tests for these methods each with two records in a dataset. |
||||
13262 |
Directory Listing |
Modified
3 years, 2 months ago Thu Nov 14 20:46:22 2019 UTC |
marios | |
Log: adm/util/stout/coll.py - In classes CollisionBlock() and Collisions(), rename methods add_collision() to add_collision_record(). adm/test/stout/test_coll.py - Exercise Collisions.add_collision_record() in unit tests. |
||||
13261 |
Directory Listing |
Modified
3 years, 2 months ago Thu Nov 14 20:39:22 2019 UTC |
marios | |
Log: adm/test/stout/test_coll.py - Exercise CollisionBlock.insert_collision() in unit tests. |
||||
13260 |
Directory Listing |
Modified
3 years, 2 months ago Wed Nov 13 23:12:50 2019 UTC |
marios | |
Log: adm/util/stout/coll.py - Classes Collision() and CollisionBlock() now derive from object, not misc.DeepCopy. adm/test/stout/test_coll.py - Exercised CollisionBlock.setup() in unit tests. |
||||
13259 |
Directory Listing |
Modified
3 years, 2 months ago Wed Nov 13 23:01:20 2019 UTC |
marios | |
Log: adm/test/stout/test_coll.py - Exercised CollisionRecord.extract_temp() in unit tests. |
||||
13258 |
Directory Listing |
Modified
3 years, 2 months ago Wed Nov 13 22:26:31 2019 UTC |
marios | |
Log: adm/test/stout/test_coll.py - Exercise Collision.reset_lo_level() and .reset_hi_level() in unit tests. |
||||
13257 |
Directory Listing |
Modified
3 years, 2 months ago Wed Nov 13 19:29:41 2019 UTC |
marios | |
Log: adm/util/stout/coll.py - In Collision(): - In export_dict() used __dict__, instead of explicitly listing each field. - Defined import_dict() as the reverse process of export_dict(), whereby a dictionary is used to populate an object. adm/test/stout/test_coll.py - Exercised Collision.export_dict() and .import_dict() in unit tests. - Refactored code for comparing two objects into (inner) function __compare_Collision_objects(). |
||||
13256 |
Directory Listing |
Modified
3 years, 2 months ago Wed Nov 13 19:18:02 2019 UTC |
marios | |
Log: adm/test/stout/test_tp.py - In function test_Transition_copy(), now using __compare_Transition_objects() to carry out the comparison of the objects. |
||||
13255 |
Directory Listing |
Modified
3 years, 2 months ago Wed Nov 13 18:57:48 2019 UTC |
marios | |
Log: adm/util/stout/coll.py - In Collision(), define required keywords as a class-wide tuple, and use it with the copy() method. |
||||
13254 |
Directory Listing |
Modified
3 years, 2 months ago Wed Nov 13 18:42:56 2019 UTC |
marios | |
Log: adm/test/stout/test_coll.py - Exercise Collision.copy() in unit tests. |
||||
13253 |
Directory Listing |
Modified
3 years, 2 months ago Wed Nov 13 18:31:09 2019 UTC |
marios | |
Log: adm/util/stout/coll.py - In Collision(): - Bugfix: Method cdata() was returning the high level of the transition. - Remove methods init_data(), and update_dataline(). adm/test/stout/test_coll.py - Exercise Collision.init_dataline() in unit tests. |
||||
13252 |
Directory Listing |
Modified
3 years, 2 months ago Wed Nov 13 18:04:00 2019 UTC |
marios | |
Log: adm/test/stout/test_tp.py - Corrections to unit test functions' comments. |
||||
13251 |
Directory Listing |
Modified
3 years, 2 months ago Tue Nov 12 18:24:54 2019 UTC |
marios | |
Log: adm/util/stout/coll.py - Force CollisionRecord.compose_dataline() to operate on float collision strengths. adm/test/stout/test_coll.py - Update unit tests for CollisionRecord() methods. - Exercise CollisionRecord.compose_dataline() unit tests with float arguments, not string. |
||||
13250 |
Directory Listing |
Modified
3 years, 2 months ago Tue Nov 12 17:48:03 2019 UTC |
marios | |
Log: adm/util/stout/coll.py - Defined functions is_ctype() and is_collider(), which now carry out the tests that were originally embedded in validate_ctype() and validate_collider(). adm/test/stout/test_coll.py - Exercise new functions in unit tests. |
||||
13249 |
Directory Listing |
Modified
3 years, 2 months ago Fri Nov 8 20:49:58 2019 UTC |
marios | |
Log: adm/test/stout/test_coll.py - Update to function name parse_coll() from parse_collisions_file(). - Remove loading of energies file from test_parse_coll() - no longer needed for reading in collisional data. |
||||
13248 |
Directory Listing |
Modified
3 years, 2 months ago Fri Nov 8 04:06:17 2019 UTC |
marios | |
Log: adm/adm-ingest-data.py - In set_transition_types(): - Bugfix: Name conflict between atoms.trans module and function argument. - Bugfix: Called trans.resolve_ttype() with configuration, instead of list of shells. adm/util/stout/tp.py - bugfix: Removed print statement of the object __dict__ from Transitions.export_dict(). adm/util/stout/coll.py - Removed energies from argument list of Collision.init_dataline(). - Removed energies from argument list of CollisionBlock.add_collision(). - In Collisions(): - Removed energies from argument list of add_collision() and insert_nonexisting_collision(). - Removed function parse_collisions_file(). - Removed energies from argument list of parse_coll(). |
||||
13247 |
Directory Listing |
Modified
3 years, 2 months ago Thu Nov 7 23:22:40 2019 UTC |
marios | |
Log: adm/adm-ingest-data.py - Added support for storing the transition multipole order calculated by the software, when missing from the original transition data. adm/util/io/log.py - Added function note(), which emits a note in the log. |
||||
13246 |
Directory Listing |
Modified
3 years, 2 months ago Thu Nov 7 23:09:50 2019 UTC |
marios | |
Log: adm/adm-merge-tp.py - Guard against the possibility that get_transition() returns None. |
||||
13245 |
Directory Listing |
Modified
3 years, 2 months ago Thu Nov 7 23:03:22 2019 UTC |
marios | |
Log: adm/adm-merge-tp.py - Replaced call to obsolete JoinedTransitions method TP_correction() with call to get_transition() to obtain a Transition() object, and use of its native TP_correction() method. |
||||
13244 |
Directory Listing |
Modified
3 years, 2 months ago Thu Nov 7 22:41:52 2019 UTC |
marios | |
Log: adm/util/stout/tp.py - Bugfix in Transitions.warn_missing_transition(): The code was attempting to use the database name of an non-existing transition for the output message. Now using the database name for the entire dataset. - In JoinedTransitions(): - Eliminated method TP_correction(). - Added if-tests where needed against the possibility that tget_transition() returns None. - Commented out methods get_data() and get_tran_to_level(), likely obsolete. - BUGFIX: In export_dict(), function was not returning the dict prepared by the parent method with super(). adm/test/stout/test_tp.py - Exercised JoinedTransitions() methods in unit tests. |
||||
13243 |
Directory Listing |
Modified
3 years, 2 months ago Tue Nov 5 23:35:29 2019 UTC |
marios | |
Log: adm/util/stout/tp.py - In class Transitions(): - Eliminated method is_valid_transition(). - Modified .ntrans() to return 0 if the _data attribute does not yet exist. - Commented out all methods that provide access to Transition() methods. - In class JoinedTransitions(): - Added method export_dict(), which uses an explicit call to the homonymous method of the parent class, Transitions. adm/test/stout/test_tp.py - Now exercise Transitions() methods in unit tests. These are: - DB() - add_transition() - have_transition() - get_transition() - copy() - all_lo_levels() - all_hi_levels() - lo_levels() - hi_levels() - export_dict() & import_dict() - save_json() & read_json() |
||||
13242 |
Directory Listing |
Modified
3 years, 3 months ago Sun Nov 3 14:35:23 2019 UTC |
marios | |
Log: adm/test/stout/test_tp.py - Added unit tests for do_printed_TP_differ(). |
||||
13241 |
Directory Listing |
Modified
3 years, 3 months ago Sun Nov 3 13:51:55 2019 UTC |
marios | |
Log: adm/test/stout/test_tp.py - Added unit tests for divide_TPs() and flip_levels(). |
||||
13240 |
Directory Listing |
Modified
3 years, 3 months ago Sat Nov 2 22:55:56 2019 UTC |
marios | |
Log: adm/util/stout/tp.py - In is_TP_valid() use types.py function is_float_pos(), instead of directly checking for positive and zero values. That is, zero values are NOT supported anymore. - In validate_TP(), do not validate that a float has been given to the function. adm/test/stout/test_tp.py - Exercise function is_TP_valid() in unit tests. - Drop tests of the extract_data() and compose_line() methods of the TransitionRecord() class. - Permit log.py functions print to screen. |
||||
13239 |
Directory Listing |
Modified
3 years, 3 months ago Fri Nov 1 15:55:59 2019 UTC |
marios | |
Log: adm/util/stout/tp.py - In method TransitionRecord.extract_data() changed the default multipole order from None to empty string. - Now validate the order that was read in from the dataline with function in atom.trans.py, instead of merely testing that it is a string. - In class Transition(): - Added keyword '_custom_order' to list of optional data fields. - Eliminated from the interface of method init_dataline() the Energies() dataset. This was meant to be used with testing only. - The method no longer returns a boolean to announce the success of data ingestion. - Eliminated method init_data(). - In method is_set() now require that the TP value type is set. - In method order() now return the custom order, if set, or the read-in order, if set, or an empty string if neither is set. - Defined method set_custom_order() to change the multipole order of the transition. The data are saved in '_custom_order', so the '_order' field is not overwritten. - In method order_index(), first try to report the index of the custom order and, if it does not exist, the index of the read-in order. This is now done with the trans.ttype_order() function, a refactored version of the code originally in order_index(). - Updated interface of method Transitions.add_transition(), and function parse_tp() to no longer require an Energies() dataset, reflecting the change in Transition.init_dataline(). adm/util/stout/fmt.py - In get_fields_from_dataline(), change default comment value from None to empty string. adm/test/stout/test_tp.py - Exercise Transition() methods in unit tests. |
||||
13238 |
Directory Listing |
Modified
3 years, 3 months ago Tue Oct 29 23:01:17 2019 UTC |
marios | |
Log: adm/util/atoms/trans.py - Defined function strip_ttype() to remove all whitespace from a type. Now used in compose_ttype(). - Defined function parse_ttypes() to break apart composite types into their constituent types. Handles non-composite types, as well. - Updated is_ttype() to operate on the output of parse_ttypes(). Also permitted types E3 and M3. - Defined function ttype_order() to extract the multipole order from a type. adm/test/atoms/test_trans.py - Exercise new functions in unit tests. - Add tests for support of E3 and M3. |
||||
13237 |
Directory Listing |
Modified
3 years, 3 months ago Tue Oct 29 18:37:34 2019 UTC |
marios | |
Log: adm/util/atoms/trans.py - Defined transition types as module parameters t_E1, etc, including '' for unidentified transitions. - Defined functions is_ttype() and validate_ttype() to check and guarantee that a transition type is supported. Supports composite types. - Defined function compose_ttype() to join two types using the sentinel '+', defined as a module parameter. - Renamed function resolve_transition_type() to resolve_ttype(), and added code for it. Transitions E1 to M2 are supported, as well as composite types (e.g., E2+M1; except for E1+M2), and blank strings for unidentified types. adm/test/atoms/test_trans.py - Exercised new functions in unit tests. - Exercised previous tests for is_E1() etc, as tests for resolve_ttype(). (Discovered conflicts.) |
||||
13236 |
Directory Listing |
Modified
3 years, 3 months ago Tue Oct 29 15:59:41 2019 UTC |
marios | |
Log: adm/util/atoms/trans.py - Bugfix in is_M2(): Apply LS-coupling rules only when both terms are in LS coupling. adm/test/atoms/test_trans.py - Add unit tests for all functions testing transition types (is_E1(), etc). |
||||
13235 |
Directory Listing |
Modified
3 years, 3 months ago Mon Oct 28 21:52:30 2019 UTC |
marios | |
Log: adm/util/atoms/trans.py - Defined function is_M2() to tell if a transition is M2 type. adm/test/atoms/test_trans.py - Added unit tests to exercise new function. |
||||
13234 |
Directory Listing |
Modified
3 years, 3 months ago Mon Oct 28 21:34:19 2019 UTC |
marios | |
Log: adm/util/atoms/trans.py - Refactored functions obey_dJ_rules() and obey_dLS_rules() into one function, obey_dLSJ_rules(), which operates on floats (dropped support for int). - Old functions removed. - Modified function obey_LS_rules() to work with the spin, not the spin multiplicity of a term. adm/test/atoms/test_trans.py - Unified unit tests for obey_dJ_rules() and obey_dLS_rules() into tests for obey_dLSJ_rules(). |
||||
13233 |
Directory Listing |
Modified
3 years, 3 months ago Mon Oct 28 20:50:50 2019 UTC |
marios | |
Log: adm/util/atoms/trans.py - Refactored code for rigorous rules into function obey_rigorous_rules(), and code for LS rules into function obey_LS_rules(). - Now using new functions, along with obey_CI_rules() in functions is_E1() etc - Removed obsolete function obey_rules(). |
||||
13232 |
Directory Listing |
Modified
3 years, 3 months ago Mon Oct 28 19:39:27 2019 UTC |
marios | |
Log: adm/util/atoms/trans.py - Defined function is_M1() to tell if a transition is of M1 type. Only the rigorous rules are exercised. - In obey_rules(), Bugfix: Do not require keywords for LS-coupling rules. - Add argument to the interfaces of is_E1() and is_E2() to indicate that configuration interaction rules should be exercised. adm/test/atoms/test_trans.py - Exercise new function is_M1() in unit tests. These include various NIST transitions, including certain Fe V M1+E2 transitions; also see below. - Add optional keyword to inner function test_ttype() to tell if the configuation interaction rules should be exercised. - Add unit test for is_E2() exercising Fe V M1+E2 transition. |
||||
13230 |
Directory Listing |
Modified
3 years, 3 months ago Thu Oct 24 15:27:15 2019 UTC |
marios | |
Log: adm/util/atoms/trans.py - Bugfix: Imported missing modules io.log and io.err. - In obey_rules() test presence of keywords with 'is None'. When deciding whether to call obey_CI_rules() test only the number of jumping electrons, as the change in principal quantum number may be None (for any). - Defined function is_E2() to tell if a given transition is consistent with being of E2 type. adm/test/atoms/test_trans.py - Refactor inner function test_is_E1() to test_ttype() to also accept the trans.py function name to test. All test_is_E1() calls are now replaced with this. - Added a few more tests for E1 transitions, targetting violations of specific rules. - Exercised new function is_E2() in unit tests. |
||||
13229 |
Directory Listing |
Modified
3 years, 3 months ago Thu Oct 24 04:18:08 2019 UTC |
marios | |
Log: adm/util/atoms/trans.py - Defined function obey_rules() to apply all 6 rules in Drake's Table 10.4. These may used for the various transition types by supplying suitable sets of rules, as enapsulated in keyword arguments to function. - Defined function is_E1() to check if a transition is electric dipole. adm/util/atoms/orbitals.py - Parametrize parity values. Refactor functions to use new parameters. adm/test/atoms/test_trans.py - Exercise function is_E1() in unit tests. |
||||
13228 |
Directory Listing |
Modified
3 years, 3 months ago Wed Oct 23 22:56:59 2019 UTC |
marios | |
Log: adm/util/atoms/trans.py - Refactored code that walks through a list of forbidden transitions to tell if a given transition is there in funtion is_forbidden(). It works with both int and float input. - Updated obey_dJ_rules() to call is_forbidden(). - Defined function obey_dLS_rules() as a parallel to obey_dJ_rules() to check if changes in Lorb or S are consistent with the given transition rules. Unlike obey_dJ_rules(), it operates on int input. Calls is_forbidden(). adm/test/atoms/test_trans.py - Exercise is_forbidden() and obey_dLS_rules() in unit tests. |
||||
13227 |
Directory Listing |
Modified
3 years, 3 months ago Wed Oct 23 21:17:38 2019 UTC |
marios | |
Log: adm/util/atoms/trans.py - Defined parse_transition_jump() to access the transition properties: number of jumping electrons, change in principal quantum number, and orbital angular momentum. - Depends on reduce_subshells(), see below. - Defined function obey_CI_rules() to validate if rules that arise from negligible configuration interaction are observed by a transition. adm/util/atoms/orbitals.py - Defined function reduce_subshells() to report the subshells present in a configuration that are not present in the reference configuration. adm/test/atoms/test_trans.py adm/test/atoms/test_orbitals.py - Exercise new functions in unit tests. |
||||
13226 |
Directory Listing |
Modified
3 years, 3 months ago Tue Oct 22 12:50:18 2019 UTC |
marios | |
Log: adm/util/atoms/trans.py - Defined function obey_parity_rule() to tell if the transition parity rule is met. adm/test/atoms/test_trans.py - Exercise unit tests for obey_parity_rule(). |
||||
13225 |
Directory Listing |
Modified
3 years, 3 months ago Tue Oct 22 12:24:06 2019 UTC |
marios | |
Log: adm/util/atoms/trans.py - Added file to treat the types of radiative transitions. - Defined function obey_dJ_rules() to check if a transition is consistent with the given selection rules (for both allowed transitions, and forbidden). adm/test/atoms/test_trans.py - Exercise function obey_dJ_rules() with the order 1 (E1/M1) and 2 (E2/M2) transitions. |
||||
13224 |
Directory Listing |
Modified
3 years, 3 months ago Tue Oct 22 03:10:41 2019 UTC |
marios | |
Log: adm/util/atoms/orbitals.py - Accommodate certain ADAS files which use hexadecimal digits for shell occupation numbers higher than 9. This was first encountered in connection to Tungsten (W+0). Modified __parse_subshell(). adm/util/atoms/config.py - Updated fmt_econfig() to properly handle hexadecimal shell occupation numbers. Defined inner function fix_hex(), which capitalizes the hex digit. - Removed empty strings from list of subshells to process. adm/util/misc.py - Defined function is_hex() to tell if the number is hexadecimal (requires presence of characters in the range A-F). adm/test/atoms/test_orbitals.py adm/test/atoms/test_config.py adm/test/test_misc.py - Exercise new capabilities, and their cascade in calls from other functions. |
||||
13223 |
Directory Listing |
Modified
3 years, 3 months ago Sun Oct 20 02:42:19 2019 UTC |
marios | |
Log: Updated imports of the cloudy subpackage - test_cloudy.py - test_lines.py |
||||
13222 |
Directory Listing |
Modified
3 years, 3 months ago Sun Oct 20 02:40:22 2019 UTC |
marios | |
Log: adm/test/cloudy - Added directory to hold unit tests of the cloudy subpackage. Moved modules: - adm/test/test_cloudy.py to adm/test/cloudy/test_cloudy.py - adm/test/test_lines.py to adm/test/cloudy/test_lines.py |
||||
13221 |
Directory Listing |
Modified
3 years, 3 months ago Sun Oct 20 02:37:25 2019 UTC |
marios | |
Log: Updated cloudy subpackage imports: - adm/adm-adas-to-stout.py - adm/adm-fetch-nist.py - adm/adm-fix-fnames.py - adm/adm-query-adas.py - adm/adm-register-levels.py - adm/reorder-stout-levels.py - adm/stout-data-summary.py - adm/util/chianti.py - adm/util/stout/dirtree.py - adm/util/stout/refs.py |
||||
13220 |
Directory Listing |
Modified
3 years, 3 months ago Sun Oct 20 02:35:26 2019 UTC |
marios | |
Log: adm/util/cloudy/cloudy.py adm/util/cloudy/icloudy.pyx adm/util/cloudy/lines.py - Update relative imports. |
||||
13219 |
Directory Listing |
Modified
3 years, 3 months ago Sun Oct 20 02:23:22 2019 UTC |
marios | |
Log: adm/util/cloudy/__init__.py - Provide modules for 'import *'. adm/util/__init__.py - Updated module list -- cloudy and lines removed. |
||||
13218 |
Directory Listing |
Modified
3 years, 3 months ago Sun Oct 20 02:19:10 2019 UTC |
marios | |
Log: Moved modules: - adm/util/cloudy.py to adm/util/cloudy/cloudy.py - adm/util/icloudy.pyx to adm/util/cloudy/icloudy.pyx |
||||
13217 |
Directory Listing |
Modified
3 years, 3 months ago Sun Oct 20 02:14:15 2019 UTC |
marios | |
Log: adm/util/cloudy - Added directory cloudy to hold all Cloudy-related modules. Moved modules: - adm/util/lines.py to adm/util/cloudy/lines.py - adm/util/setup_icloudy.py to adm/util/cloudy/setup_icloudy.py |
||||
13216 |
Directory Listing |
Modified
3 years, 3 months ago Sun Oct 20 02:07:19 2019 UTC |
marios | |
Log: Update adas subpackage imports: - adf042stout.py - adm/test/adas/test_adas.py - adm/test/adas/test_eissner.py - adm/util/stout/nrg.py |
||||
13215 |
Directory Listing |
Modified
3 years, 3 months ago Sun Oct 20 01:58:18 2019 UTC |
marios | |
Log: adm/test/__init__.py updated |
||||
13214 |
Directory Listing |
Modified
3 years, 3 months ago Sun Oct 20 01:57:19 2019 UTC |
marios | |
Log: adm/test/adas - Added directory to hold unit tests of the adas/ subpackage. Moved modules: - adm/test/test_adas.py to adm/test/adas/test_adas.py - adm/test/test_eissner.py to adm/test/adas/test_eissner.py |
||||
13213 |
Directory Listing |
Modified
3 years, 3 months ago Sun Oct 20 01:52:47 2019 UTC |
marios | |
Log: adm/util/adas/adas.py adm/util/adas/eissner.py - Updated relative imports. adm/util/adas/__init__.py - Provide modules for 'import *'. adm/util/__init__.py - Updated module list -- adas and eissner removed. |
||||
13212 |
Directory Listing |
Modified
3 years, 3 months ago Sun Oct 20 01:47:45 2019 UTC |
marios | |
Log: adm/util/adas - Added directory to hold ADAS-related modules. Moved modules: - adm/util/adas.py to adm/util/adas/adas.py - adm/util/eissner.py to adm/util/adas/eissner.py |
||||
13211 |
Directory Listing |
Modified
3 years, 3 months ago Sun Oct 20 01:44:06 2019 UTC |
marios | |
Log: Remove unused json module imports: - adm/adm-merge-tp.py - adm/adm-register-levels.py - adm/util/stout/meta.py - adm/util/stout/nrg.py - adm/util/stout/tp.py |
||||
13210 |
Directory Listing |
Modified
3 years, 3 months ago Sun Oct 20 01:36:46 2019 UTC |
marios | |
Log: Update imports of the io subpackage: - NistExtractor/NistExtractor.py - adf042stout.py - adm/adm-adas-to-stout.py - adm/adm-create-pfile.py - adm/adm-fetch-nist.py - adm/adm-fix-fnames.py - adm/adm-ingest-data.py - adm/adm-merge-nrg.py - adm/adm-merge-tp.py - adm/adm-query-adas.py - adm/adm-register-levels.py - adm/adm-setup.py - adm/create-elements-module.py - adm/merge-with-stout.py - adm/reorder-stout-levels.py - adm/stout-data-summary.py - adm/test/atoms/test_config.py - adm/test/atoms/test_orbitals.py - adm/test/nist/test_fmt.py - adm/test/nist/test_phtml.py - adm/test/nist/test_web.py - adm/test/ptable/test_elements.py - adm/test/ptable/test_ions.py - adm/test/ptable/test_spectra.py - adm/test/stout/test_c2s.py - adm/test/stout/test_coll.py - adm/test/stout/test_dirtree.py - adm/test/stout/test_fmt.py - adm/test/stout/test_info.py - adm/test/stout/test_meta.py - adm/test/stout/test_nrg.py - adm/test/stout/test_refs.py - adm/test/stout/test_tp.py - adm/test/test_adas.py - adm/test/test_chianti.py - adm/test/test_chtypes.py - adm/test/test_cloudy.py - adm/test/test_eissner.py - adm/test/test_fs.py - adm/test/test_lines.py - adm/test/test_match.py - adm/test/test_misc.py - adm/test/test_types.py - adm/util/adas.py - adm/util/atoms/config.py - adm/util/atoms/orbitals.py - adm/util/chianti.py - adm/util/chtypes.py - adm/util/cloudy.py - adm/util/eissner.py - adm/util/fs.py - adm/util/io/ui.py - adm/util/lines.py - adm/util/misc.py - adm/util/nist/err.py - adm/util/nist/fmt.py - adm/util/nist/refs.py - adm/util/prun.py - adm/util/ptable/elements.py - adm/util/ptable/ions.py - adm/util/ptable/spectra.py - adm/util/register/levels.py - adm/util/register/nocfg.py - adm/util/register/terms.py - adm/util/stout/c2s.py - adm/util/stout/coll.py - adm/util/stout/dirtree.py - adm/util/stout/fmt.py - adm/util/stout/info.py - adm/util/stout/meta.py - adm/util/stout/nrg.py - adm/util/stout/refs.py - adm/util/stout/tp.py - fetch-NIST-IP.py |
||||
13209 |
Directory Listing |
Modified
3 years, 3 months ago Sun Oct 20 01:24:35 2019 UTC |
marios | |
Log: adm/test/io - Added directory to host unit tests of the io subpackage. Moved modules: - adm/test/test_dirs.py to adm/test/io/test_dirs.py - adm/test/test_log.py to adm/test/io/test_log.py - adm/test/test_pfile.py to adm/test/io/test_pfile.py - adm/test/test_ui.py to adm/test/io/test_ui.py |
||||
13208 |
Directory Listing |
Modified
3 years, 3 months ago Sun Oct 20 00:36:23 2019 UTC |
marios | |
Log: adm/util/io/__init__.py - Provide modules for 'import *'. adm/util/__init__.py - Updated module list -- dirs, err, log, pfile, and ui removed. |
||||
13207 |
Directory Listing |
Modified
3 years, 3 months ago Sun Oct 20 00:32:33 2019 UTC |
marios | |
Log: adm/util/io/dirs.py adm/util/io/log.py adm/util/io/pfile.py adm/util/io/ui.py - Update relative imports. |
||||
13206 |
Directory Listing |
Modified
3 years, 3 months ago Sun Oct 20 00:29:23 2019 UTC |
marios | |
Log: adm/util/io - Added directory to hold UI-related modules. Moved modules: - adm/util/err.py to adm/util/io/err.py - adm/util/ui.py to adm/util/io/ui.py - adm/util/log.py to adm/util/io/log.py - adm/util/dirs.py to adm/util/io/dirs.py - adm/util/pfile.py to adm/util/io/pfile.py |
||||
13205 |
Directory Listing |
Modified
3 years, 3 months ago Sun Oct 20 00:24:08 2019 UTC |
marios | |
Log: adm/test/atoms/test_config.py adm/test/atoms/test_orbitals.py - Updated imports of config.py and orbitals.py to point to the atoms subpackage. |
||||
13204 |
Directory Listing |
Modified
3 years, 3 months ago Sun Oct 20 00:18:25 2019 UTC |
marios | |
Log: adm/test/atoms - Added directory to host unit tests of the atoms subpackage. Moved modules: - adm/test/test_orbitals.py to adm/test/atoms/test_orbitals.py - adm/test/test_config.py to adm/test/atoms/test_config.py |
||||
13203 |
Directory Listing |
Modified
3 years, 3 months ago Sun Oct 20 00:14:57 2019 UTC |
marios | |
Log: NistExtractor/NistExtractor.py adf042stout.py adm/adm-ingest-data.py adm/adm-register-levels.py adm/test/stout/test_nrg.py adm/util/adas.py adm/util/eissner.py adm/util/register/levels.py adm/util/register/terms.py adm/util/stout/nrg.py - Update imports of config.py and orbitals.py to the right submodule. |
||||
13202 |
Directory Listing |
Modified
3 years, 3 months ago Sun Oct 20 00:14:30 2019 UTC |
marios | |
Log: adm/util/register/terms.py: Remove debug statements from inner function check_term_order() |
||||
13201 |
Directory Listing |
Modified
3 years, 3 months ago Sat Oct 19 23:58:04 2019 UTC |
marios | |
Log: adm/util/atoms/config.py adm/util/atoms/orbitals.py - Updated relative imports. adm/util/atoms/__init__.py - Provide modules for 'import *'. adm/util/__init__.py - Updated module list -- config and orbitals removed. |
||||
13200 |
Directory Listing |
Modified
3 years, 3 months ago Sat Oct 19 23:51:43 2019 UTC |
marios | |
Log: adm/util/atoms - Created new directory to hold modules relevant to atomic levels and transitions. Moved modules - adm/util/config.py to adm/util/atoms/config.py - adm/util/orbitals.py to adm/util/atoms/orbitals.py |
||||
13198 |
Directory Listing |
Modified
3 years, 3 months ago Sat Oct 19 01:55:34 2019 UTC |
marios | |
Log: adm/util/config.py - Define function level_nist_fmt() to convert a level to NIST notation, namely to use an asterisk for odd parity, and place J within angle brackets ('1P<1>' -> '1P*<1>'). - Define function shells_nist_fmt() to convert subshells to NIST format, namely, to eliminate unity occupation numbers (e.g., '1s1' -> '1s'). - Refactor fix_econfig() to use orb.subshells(). - Modify fmt_config_output() to use fix_econfig() for the configuration, and level_nist_fmt() for the level. adm/util/orbitals.py - Define functions is_even_parity() and is_odd_parity(), and refactor function is_parity() to use them. - In function sushells, strip leading and trailing spaces from configuration before processing. adm/test/test_config.py - Add unit tests to exercise level_nist_fmt(), shells_nist_fmt(). adm/test/test_orbitals.py - Add unit tests to exercise is_odd_parity(), is_even_parity(), is_parity(). |
||||
13197 |
Directory Listing |
Modified
3 years, 3 months ago Fri Oct 18 03:16:43 2019 UTC |
marios | |
Log: adm/adm-merge-tp.py - Bugfix: Use the original energies of the theoretical dataset when computing the photon energy ratio for the Einstein A correction. Previously the energy was used, which is updated for shifted terms. - Bugfix: Make sure that the lower index is indeed lower than the upper index. - Use sorted energy JSON file. adm/util/stout/nrg.py - Define method original_energy() in classes Energy() and Energies() to access the original level energy. |
||||
13196 |
Directory Listing |
Modified
3 years, 3 months ago Fri Oct 18 02:28:01 2019 UTC |
marios | |
Log: adm/adm-merge-nrg.py - Sort levels by energy and use sorted list to create output Stout file. - Save JSON of sorted levels with the nickname 'sorted'. adm/util/stout/meta.py - Change format of EnergyStat.report_stat() to report relative difference with as a percentage. |
||||
13195 |
Directory Listing |
Modified
3 years, 3 months ago Thu Oct 17 22:16:27 2019 UTC |
marios | |
Log: adm/adm-merge-tp.py - Report maximum correction to log. |
||||
13194 |
Directory Listing |
Modified
3 years, 3 months ago Thu Oct 17 22:12:01 2019 UTC |
marios | |
Log: adm/adm-merge-tp.py - Bugfix: Inner function get_theory_index() in update_theory_tran() yielded the wrong theoretical index for levels that had not been registered. Now simplified to return the index if the level is theoretical, or the matching index if the level is experimental, or None. - None indices now exit the function immediately with an empty Transition() object. - Report to log which transitions we're using. |
||||
13193 |
Directory Listing |
Modified
3 years, 3 months ago Thu Oct 17 20:38:14 2019 UTC |
marios | |
Log: adm/adm-merge-tp.py - Save total number of transitions in metadata JSON file. adm/util/stout/tp.py - In class Transitions(), add method ntrans() to tell the total number of transitions in the dataset. adm/util/stout/meta.py - In class TPupdate(): - Add variable to store total number of transitions in a dataset. Adjust all methods to accommodate new variable. - Added method ntrans() to access new variable. - Update names of all getter methods by removing the 'get_' prefix. adm/test/stout/test_meta.py - Adapt to the new interface of TPupdate.set_data(). - Exercise all getter methods. |
||||
13192 |
Directory Listing |
Modified
3 years, 3 months ago Thu Oct 17 20:34:39 2019 UTC |
fguzman | |
Log: created printout of bfn values |
||||
13191 |
Directory Listing |
Modified
3 years, 3 months ago Thu Oct 17 19:44:08 2019 UTC |
marios | |
Log: adm/util/stout/nrg.py - Add optional keywords when asserting the keys of a dict input to the Energy.import_dict() method. - In class Multiplet(): - Define object mandatory keywords for method import_dict() as class variable. - In class Energies(): - Define JSON basename, as well as object mandatory and optional keywords for method import_dict() as class variables. - Refactor save_json() code for casting an object into a dict into method export_dict(). - Refactor read_json() code for populating an object from a dict into method import_dict(). The method is designed to be used with child classes. - Update methods pathname(), save_json(), and read_json() to use the methods of the JSON class. The data I/O to/from the object is done with the export_dict() and import_dict() methods. - In class JoinedEnergies(): - Define JSON basename, and object mandatory keywords for method import_dict() as class variables. - Update methods pathname(), save_json(), and read_json() to use the methods of the JSON class. The data I/O to/from the object is done with the export_dict() and import_dict() methods of the parent class. adm/util/misc.py - In require_dict_keywords(): Bugfix: Wrong variable was used with error messages. |
||||
13190 |
Directory Listing |
Modified
3 years, 3 months ago Thu Oct 17 17:36:04 2019 UTC |
marios | |
Log: adm/util/stout/tp.py - Update to TP_correction() value of 1, when no correction is to be applied: - Bugfix in JoinedTransitions.count_updates(): With previous implementation ALL transitions were counted. - Bugfix in JoinedTransitions.ntrans_db(): With previous implementation NO experimental transitions were counted. |
||||
13189 |
Directory Listing |
Modified
3 years, 3 months ago Thu Oct 17 17:26:21 2019 UTC |
marios | |
Log: adm/adm-merge-tp.py - Save in the metadata file the total number of updated transitions. adm/util/stout/meta.py - In class TPupdate(): - Store the total number of updated transitions. Modify all methods and class data to accommodate that. - Define method get_nupdated_in_print() to access new variable. |
||||
13188 |
Directory Listing |
Modified
3 years, 3 months ago Thu Oct 17 17:16:03 2019 UTC |
marios | |
Log: adm/util/config.py adm/util/stout/info.py adm/util/stout/meta.py - Define class variables for encapsulating required keywords in dictionaries for use with import_dict() methods. adm/util/misc.py - Minor docstring correction. |
||||
13187 |
Directory Listing |
Modified
3 years, 3 months ago Thu Oct 17 16:53:06 2019 UTC |
marios | |
Log: adm/adm-merge-tp.py - Modified the logic of putting together the merged transition dataset. Instead of stitching the final dataset from the transitions of the input datasets, the script now goes over all possible transitions between the joined energy levels, and searches for matching experimental transitions. If not present, the theoretical transition is used, if also present. Its Einstein A may be updated to be consistent with its (possibly updated) level energies. In making this change, the following operations were done: - Updated script docstring. - Updated CL interface. - Removed functions: - form_all_paths() - print_tran_configs() - get_missing_transitions() - replace_transitions_ADAS_with_NIST() - get_appended_transitions() - append_TP_file_comments() - update_ADAS_TP() - Defined functions: - find_native_tran() - update_theory_tran() - do_join() - join_transitions() renamed from update_tp() adm/util/stout/tp.py - Remove dependence on module dbdir.py. - In class TransitionRecord(), parametrize TP format and use it with method compose_line(), as well as with module function do_printed_TP_differ(). - In class Transition(): - Define object mandatory and optional keywords for method import_dict() as class variables. - Define methods copy() to populate an object from another, and is_set() to make sure that an object is not empty. - Default value of method order_index() is 1.0 (was None). - Define method set_TP_correction() to compute the correction factor for an updated transition, and method TP_correction() to access that value. The value is stored in the attribute '_TP_factor', which otherwise does not exist. - In function new_dataline(), print database name if comment is absent. - In class Transitions(): - Class now inherits from object() class, not misc.DeepCopy(). - Define JSON basename, and required keywords for import method as class variables. - Method order_index() now returns None, if the transition does not exist. - Removed method hasattr(). - Defined methods export_dict() and import_dict() to use with JSON I/O. import_dict() is designed to be used from derived classes: it accepts the required keywords of the dictionary as an optional argument; if absent, it operates on the class required keywords. - Updated methods pathname(), save_json(), and read_json() to use the methods of the JSON class. The data I/O to/from the object is done with the export_dict() and import_dict() methods. - In class JoinedTransitions(): - Define JSON basename, and required keywords for import method as class variables. - Removed object metadata variables: - _missing - _extra - _nmissing - _nextra - _nreplaced - _nupdated - _nupdated_in_output_file which are no longer needed, given the change in logic in the script that merges the TP lists. Also removed associated methods: - replace() - get_nreplaced() - add_missing_tran() - get_nmissing() - add_NIST_extra_tran() - get_nextra() - is_replaced_with_NIST() - is_missing() - is_extra() - is_NIST() - set_TP_correction(), now absorbed in the Transition() class - get_nupdated() - get_nupdated_in_output() - copy_metadata() - Simplified method set_DB() to compile the DB name from its stored data. - Defined method count_updates() to compute on the fly the number of updated transitions. - Defined method ntrans_db() to compute the number of unmodified transitions from a given database. - Defined method import_dict() to aid with input from JSON. The parent's export_dict() is used for export to J |