Changelog¶
latest¶
Nothing here yet
v.0.15.0¶
Added¶
Bugfixes¶
v.0.14.0¶
Added¶
Command
masci-tools convert-inpgento transform common structure formats, e.g.cifinto inpgen files. Usesaseorpymatgenwith the corresponding fleur pluginsase-fleurandpymatgen-io-fleur(install additional dependenciescmdline-extras)[#215]Functions
get_inpgen_commentsandreadd_inpgen_commentsto keep the comments of the inp.xml file containing the inpgen commandline and file content through functions usingclear_xml
Improvements¶
write/read_fleur_inpgennow supports the magnetic moment definitions in the inpgen input file introduced in MaX-6.1 (also thescfnamelist) [#213]get_structuredataalso reads out the magnetic moments [#213]FleurXMLModifier.modify_xmlfilenow keeps the inpgen comments by default (controlled by optionkeep_inpgen_comments)
Bugfixes¶
Serveral fixes for Fleur DOS plots [#212]:
Fixed wrong summation of atom weights for files containing 10 or more atomtypes
Fixed crashes using a custom weight not conforming to the naming scheme of weights in the
banddos.hdfFixed specification of parameters by DOS label not working if the spin suffix is omitted
v.0.13.0¶
Improvements¶
set_kpointmeshnow also writes out thenx/ny/nzattributes fro the dimensions of the kpoint meshget_structure_data,get_parameter_dataandget_kpoints_dataare renamed toget_structuredata,get_parameterdataandget_kpointsdatato match the names of the corresponding functions in aiida-fleur. Old names are available with deprecations [#208]FleurXMLModifiernow supports changes to input files with not yet available Fleur schemas, if the changes are compatible with the last available file schema [#209]
Bugfixes¶
Bugfix in XML setters
set_inpchangesandset_attrib_value, setting thexcFunctionalkey was previously not case-insensitive in constrast with all other keysFixed crash in
get_parameter_data. This function would previously crash if a kpoint mesh withoutnx/ny/nzattributes was used and the first point in the list was the gamma point
v.0.12.0¶
Added¶
Added XPath evaluation functions with runtime tpye checking of the results of the expressions [#181]
Command
masci-tools fleur-schema pull <branch>to update/add Fleur Schema files from the iffgit more easily [#184]New XML setters [#183]:
Setting XC functional explicitly + LibXC support (
set_xcfunctional),Creating a kpoint path using
ase(set_kpointpath)Creating a kpoint mesh with symmetry reduction using
spglib. Should be equivalent to thegamma@grid=nx,ny,nzkpoint generator ininpgen(set_kpointmesh)
Added
FleurInputSchema.xsdandFleurOutputSchema.xsdfor the MaX6.1 release of fleur (file version0.36) [#196]
Bugfixes¶
Add clearer error message if
Noneis passed to theconvert_to_xmlfunctions. This would happen for example using theset_inpchangesfunction with{'minDistance': None}[#182]Fixed
masci-tools fleur-schema addwith--from-gitflag. Previously it would still check for the existence of the Schema file locally [#184]get_fleur_modes:gwmode renamed tospexand now stores the actual integer value of the attribute [#185]Bugfix in
clear_xml, when multiple XML comments are present outside the root element [#193]Bugfix in
reverse_xinclude. This would previously break when reexcluding trees already containing arelaxationtag and would end up with twoxi:includetags for therelax.xml[#194]Bugfix for
FleurXMLModifier. Thetask_listproperty would incorrectly enter akwargskey if the modifying function in question has an explicit**kwargsargumentBugfix in matplotlib plots with placement of multiple colorbars (e.g. weighted spin-polarized bandstructure) [#198]
v.0.11.3¶
Improvements¶
Changes to KKR plotting routine
dispersionplotfor compatibility with AiiDA v2.0Connecting vectors for intersite
GreensFunctionare now saved in Angstroem. For better interoperability with ase, pymatgen, AiiDA
For Developers¶
Relaxed CI requirements for docs build. Nitpicky mode is no longer required to pass but is treated as a hint to look into the warnings
v.0.11.2¶
Improvements¶
Several changes in KKR IO functions to make them compatible with
aiida-core>=2.0[#175]Add function to calculate fourier transform of e.g.
J_ijconstants calculated from Green’s functions (masci_tools.tools.greensf_calculations.heisenberg_reciprocal)
Bugfixes¶
Fixed nondeterministic order in bokeh regression tests if multiple dictionaries with the same values but differing keys in the same list (e.g. Providing the same data for different columns)
Fixed wrong names for columns entered in
decompose_jij_tensor, i.e.J_ji->J_ij
Deprecations¶
Deprecated the unused modules
util/kkr_rms_tracker.pyandutil/modify_potential.py
v.0.11.1¶
Bugfixes¶
Bugfix in
reverse_xinclude. Version0.11.0broke this function for versions, where therelaxationtag was not allowed.
v.0.11.0¶
This release adds some improvements to the XML and HDF5 handling mainly for better AiiDA-Fleur support. Also major updates to documentation configurations and Green’s function calculations.
Added¶
Added
FleurElementMakerclass. This can be used to create XML elements compatible with a given version from scratch. Has case-insensitivity and converts values to strings for XML [#159] Examplefrom masci_tools.util.xml.builder import FleurElementMaker E = FleurElementMaker.fromVersion('0.35') new_kpointset = E.kpointlist( *( E.kpoint(kpoint, weight=weight, label=special_labels[indx]) if indx in special_labels else E.kpoint(kpoint, weight=weight) for indx, (kpoint, weight) in enumerate(zip(kpoints, weights)) ), name=name, count=nkpts, type=kpoint_type)
Function
serialize_xml_argumentstomasci_tools.util.xml.common_functionsto remove XML elements/trees from positional/keyword arguments and replace them with string representations of the XML. Can be used in AiiDA-FleurModule
masci_tools.util.ipythonand ipython extension (%load_ext masci_tools). Adds syntax highlighted XML tree output and creating HTML syntax highlighted diffs of XML trees [#158]Added calculation of Jij Tensor from intersite Green’s functions [#170]
Improvements¶
Added
nameentry toSchemaDict.tag_infowhich contains the tag name in the original case [#159]convert_to_xmlis made more strict. Conversioninttostruses the{:d}format specifier and string conversion is no longer always attempted [#159]Improvements to Colorbar creation in matplotlib plotting methods. Limits are now set consistently with
limits={'color': (low, high)}in the plot and colorbar. Spinpolarized bandplots now show two colorbars for the two colormaps if requestedget_parameter_datanow also extracts thegammaswitch for kpoint generation for more consistent roundtrips. This is only set if the first kpoint in the mesh is the gamma point and there are multipleload_inpxmlandload_outxmlnow consistently accept the XML file given as a string of the content. The content no longer has to be manually encoded as bytesThe method
FleurXMLModifier.modify_xmlfilenow always returns two things. The modified XML tree and a dictionary with all additional file contents, e.g.n_mmp_mat.Support for aligning spin/real-space frames of Green’s functions. Several further imporvements/bugfixes for Green’s function modules [#170]
Bugfixes¶
Bugfix for
outxml_parserreturning a nested list for Hubbard 1 distances, where a flat list was expected. Removedforce_listargument from the parsing task definitionFixes in
plot_fleur_bands, when providing custom weights without spin suffixes, i.e._up/_downFix in
HDF5Reader. IO like objects without an attached filename would lead to an early error. This is the case for example for some readers in the file repository implementation used in AiiDA v2.0Fix in
HDF5Reader. The file handles for compressed files in the AiiDA v2 repository have to be copied into a temporary file first before they can be used
For Developers¶
Docs: Updated
sphinxandsphinx-autodoc-typehintsversions and build docs on python 3.10 [#156]Docs: Converted to
MySTmarkdown and where appropriate introducedmyst-nbfor executing code cells in the documentation, e.g. generate plotting examples [#157]Bokeh regression tests now strip out the bokeh version from the test files
Added pre-commit hook, which generates the docstrings for the
FleurXMLModifierregistration methods from their XML setter function counterparts [#166]
v0.10.1¶
Bugfixes¶
Remove accidentally left in debug print in
outxml_parser
v.0.10.0¶
This release provides several new features in the XML modification/evaluation for Fleur XML files and bugfixes. Multiple problems when working with DFT+U density matrix files are also fixed.
Added¶
New XML setter
align_nmmpmat_to_sqato rotate the density matrix file according to SQAs specified either for noco or second variation SOC [#140]Added
task_listproperty toFleurXMLModifierto construct a list which can be used to replicate the sameFleurXMLModifierwith thefromList()classmethod [#149]Added
FleurXMLContext, which acts as a holder of th XML elements, schema dictionary, constants and logger to reduce the amount of information/clutter in functions evaluating things from the XML file [#152]Note: The class
ParseTasksused in theoutxml_parserwas simplified and placed into theoutxml_parsermodule and the decoratorregister_parsing_functionwas removed. This was done without deprecation since they were exclusively used in theoutxml_parserand were the main cause of cyclic import problems previouslyAdded several predefined conversions to/from input version
0.35toinpxml_converter[#153]
Improvements¶
Added
inverseargument to nmmpmat XML setters. These will correctly produce the inverse rotation operation for the given angles. Also allow settingorbital='all'inrotate_nmmpmatto rotate all blocks by the given angles [#140]The XML setters
create_tag,replace_tagand their low-level equivalents now also accept XML strings, i.e.<example attribute="1"/>, as arguments for the elements to create/replace [#145]
Bugfixes¶
Fix for XML setters operating on the DFT+U density matrix file. Previously these functions would not map the density matrix blocks correctly if multiple atomgroups shared the same species containing
ldaUtags [#140]Added missing prefactor
(-1)^(m-mp)toget_wigner_matrix()Added basic tests of
masci_tools.tools.greensfunctionmodule and fixed several bugs found due to this [#150]Fixed bug in XML setters operating on the DFT+U density matrix file not correctly extracting the number of spin blocks when only setting
l_mperpFixed bug, when using the
FleurXMLModifierdirectly (not inaiida-fleur), included XML files were not handledFixed bug in
outxml_parser, when the XML file had to be repaired and more than one iteration was present the wrong iteration was chosen as the last stable iteration [#152]
Deprecated¶
For Developers¶
Added
py.typedmarker to masci-tools, since a large part of the outside facing code (especially the XML APIs are typed). With this marker other packages can use the typehints in this package
v.0.9.1¶
Added¶
Standalone function
masci_tools.tools.fleur_inpxml_converter.convert_inpxmlto allow conversions ofinp.xmlfiles within a python runtime without needing to go via the commandline
Bugfixes¶
Fixed bug in bokeh testing fixtures using the wrong folder for fallback versions
Fixed bug not correctly converting complex numbers from the Fleur xml files if they have whitespace at beginning/end
v.0.9.0¶
Added¶
New
bokehplot routine for matrix plot of rectangle patches with added texts [#124]Added TS contribution to free energy to output of
outxml_parser
Improvements¶
Several arguments in XML setter functions were renamed for more consistent signatures. The main changes are
attributedict/change_dict->changesattributename/attribv->name/valueadd_number->number_to_add
The old signatures are still supported with deprecations if called via the
FleurXMLModifier[#118]Remove constraint on
bokehversion (previously<=1.4.0) [#122]Add
only_spinoption and calculate complete non-spinpolarized DOS forspinpol=Falseinplot_fleur_dos[#125]Refactored
CFCalculation, i.e. naming of attributes handling of cutoffs. Added classmethod to construct instance directly from numpy arrays [#127]Refactored plotting methods for
CFCalculationto allow the same parameter freedom as for the other matplolib routines [#127]Improvement to labels and legends in DOS/bandstructure plots. Matplotlib plots now put the legend centered below the plot and added latex labels to axis and ticks in bokeh (version
2.4.0needed) [#133]io_nmmpmat: Allow negative indices inread_nmmpmat_blockand raise error for invalid index
Bugfixes¶
Fix for signatures of
set_text/set_first_text. These contained names of attribute setting functions [#118]Fix for validating arguments in
FleurXMLModifiernot accepting an argument namednamewhen passed by keyword. [#118]Fixed problems in
masci_tools.testing.bokehwhen adding files for new bokeh versions [#122]Several fixes for
plot_fleur_dos. Using thearea_plotor specifyingcolorexplicitly could mess up the color order [#132]Fixed bug in
validate_nmmpmatand consequentlyFleurXMLModifiernot correctly validating denisty matrix files with certain off-diagonal elements being negative [#135]Fix for
HDF5Readerfor compatibility for file handles inaiida-core2.0. The file handles coming from the file repository have no directly attached extension so the check if the file is a hdf file cannot be performed
For developers¶
v.0.8.0¶
Added¶
Added
FleurInputSchema.xsdandFleurOutputSchema.xsdfor the MaX6 release of fleur (file version0.35) [#112]New XML getter function:
get_special_kpointsextracts the labelled kpoints from a kpoint list (for now only implemented for Max5 or later)Added extraction of Hubbard 1 input and distances in the
outxml_parserfor fleur (distances only available starting from version0.35) [#108]Added extraction of global vector of magnetic moments in non-collinear calculations in
outxml_parserunder the keymagnetic_vec_momentsstarting from version0.35
Improvements¶
Fleur schema parsing functions now recognize a new alias from the fleur schemas
FortranComplexwhich is a number of the form(float,float). Converters for complex values are added. (Note: Complex numbers should not yet be used in theoutxml_parser, since AiiDA (<2.0) does not support complex numbers yet) [#106]Added
IncompatibleSchemaVersionserror when a combination of output and input version forOutputSchemaDictis given, for which it is known that no XML schema can be compiledxml_gettersfunctions can now be used in the task definitions of theoutxml_parserto keep information consistent. This example definition will insert the structure data, i.e. a tuple of atoms, bravais matrix and periodic boundary conditions into the output dictionary.{'parse_type':'xmlGetter', 'name': 'get_structure_data'}[#107]The
_conversionskey in theoutxml_parsernow accepts namedtuplesConversionto enable passing additional arguments to these functions. [#109]Adjusted
get_cellto understand thebravaisMatrixFilminput introduced with the MaX6 release of fleur [#110]Improved detection, whether a given xpath contains a tag including stripping predicates. Added function
contains_taginmasci_tools.util.xml.common_functions[#113]Refactored bokeh plot routine
periodic_table_plotto make use of the plot parameters utilities [#114]get_parameter_datanow extracts LOs with higher energy derivatives orHELOtype, as they are supported by the newest versions of the inpgen. The old behaviour of dropping all nonSCLOandeDeriv="0"LOs is available via the optionallow_special_los=False
Bugfixes¶
Fix in
load_inpxmlandload_outxml(this also effects theinpxml/outxml_parser). Previously file handle like objects not directly subclassingio.IOBasewould lead to an exceptionAdded patch for
OutputSchemaDictobjects withFleurOutputSchema.xsdfiles before version0.35. The attributeqPointsin the DMI output was actually calledqpointsin these schemas, making it impossible to retrieve this attributeFixed behaviour of relative XPath methods of
SchemaDictwhich did not correctly handle root tags, whose names are contained in other tag names, for examplebravaisMatrixandbravaisMatrixFilmfrom the new file version0.35
Deprecated¶
Passing strings in the
_conversionskey in task definitions for theoutxml_parser. Usemasci_tools.util.parse_utils.Conversioninstead. [#109]
For developers¶
Reorganized visualization tests, making the regeneration of baseline images with
pytest-mpleasier [#101]Switched build system from
setuptoolstoflit, since this way all the configuration can be specified in thepyproject.tomland a lot of duplication of information is avoided (e.g. version numbers) [#102]
v.0.7.2¶
Bugfixes¶
Fixed regression in
set_atomgroup_labelandset_species_label. These functions could be used in previous versions with atom labels, that do not exist. This is not possible inv.0.7.1. Since some parts of theaiida-fleurplugin relied on this the behaviour has to be kept.
v.0.7.1¶
Added¶
XPathBuilderclass for specifying complex conditions on xpaths with a dictionary. Addedfiltersargument toschema_dict_utilandxml_settersfunctions for this dictionary [#96]
Bugfixes¶
Fixed issue with
MANIFEST.in, where non-python files from thetoolssubpackage were not included in the built packagesFixed bug not correctly processing the plot limits in
plot_fleur_bandsin excluding points outside the plot area for better performanceFix for HDF5 transformation
add_partial_sumsif not all formatted patterns are present in the dataset, e.g. if a bandstructure/DOS is calculated for only selected atoms
For developers¶
More strict
mypyconfiguration and moved a lot of the annotations to modern syntax withfrom __future__ import annotationsAdded
pyupgradehook to automatically do some easy refactoring, i.e. removing compatibility workarounds move to modern syntax. Set to apply changes compatible with3.7and later
v.0.7.0¶
Commandline interface, refactoring of SchemaDict/XML functions and major improvements for package configuration/tooling for developers. Added support for python 3.10. Dropped testing for python 3.6.
Added¶
Added click command line interface (available as
masci-tools). Can add Fleur XML Schema files with validation (Also directly pulled from the Fleur git), use the XML parsing functions and interface to the fleur visualization routines [#49]Added
Tabulatorfor use of creatingpandas.Dataframesfrom attributes of python objects. Used inaiida-jutoolsto tabulate attributes of aiida nodesAdded
optional_tasksargument tooutxml_parser. Adds tasks marked with'_optional': Trueto the performed tasks [#81]Added visualization routine for spectral functions (colormesh plot with path though Brillouin zone)
Added tool for converting
inp.xmlfiles between different file versions (Available through the click CLImasci-tools inpxml) [#88]Added three new XML setters:
clone_species(Create and modify a species starting from an existing one),switch_species/switch_species_labelfor switching the species attribute of atom groups with additional checksoutxml_parser: Total Energy is now taken from the outputfreeEnergyin theout.xml
Improvements¶
Refactored SchemaDict code. Moved routines
get_tag_xpathand similar to methods on the SchemaDict. If the path cannot be determined custom exceptionsNoPathFoundandNoUniquePathFoundare now raised [#84]Added utility to
OutputSchemaDictto create absolute paths intoiterationelements inout.xml. Added support for this option inschema_dict_utilfunctions withiteration_path=TrueAll basic XML modification functions now accept either a
ElementTreeorElement. and warn they find no nodes to operate onImproved capabilities of green’s function tool, can now be used with radially resolved/k-resolved Green’s functions
Improved performance of Fleur XML Schema parsing by switching from the
xpathmethod on theElementTreeto constructing aXPathEvaluatorobject [#89]All
xml_gettersfunctions can now also be used without.xmlfilesset_atomgroup/set_atomgroup_labelnow useswitch_speciesif the species attribute is changedset_atomgroupnow supports theall-<search string>syntax for species argument, equivalent toset_speciesImproved behaviour of spin-polarized DOS plots for duplicating all plot parameters for spin-down components (previously only color was repeated)
Bugfixes¶
Fixed several issues in version handling of Schema dictionaries. It is now possible to add a new schema and have it work (with warnings) without needing to change any code (
masci-tools fleur-schema add <path/to/schema>)Bugfix in
evaluate_tagnot handling the combination of optionssubtags=Trueandtext=Truecorrectly. Previously some results were overwritten.Fixed accidental change in
write_inpgen_filein comparison to oldaiida-fleurimplementation. Now the species name is always appended to the position in the inpgen file if it is not equal to the atom symbolFixed behaviour of
get_parameter_datafor inputs with local orbitals with higher energy derivatives. These cannot be created by the inpgen and so are droppedFixes in
xml_settersto allow consistent creation of multiple tags for setting text or attributes
Deprecated¶
The
fleur_schemasubpackage was moved frommasci_tools.io.parsers.fleurtomasci_tools.io.parsersto avoid circular import issues [#87]
Removed¶
get_structure_datanow returnsAtomSitePropertiesfor the atom information by default. The default value ofsite_namedtupleis nowTrue
For developers¶
Moved configuration of
yapf,pylintandpytestintopyproject.tomlMade test suite executable from the root-folder (Some file paths were not transferrable when changing the execution directory)
Added
test_filefixture, which constructs the absolute filepath to files in thetests/filesfolder to reduce the difficulty of moving test files around and reorganizing the pytest suiteUpdated pylint (
2.11), pytest (6.0) insetup.pyAdded
mypypre-commit hook. Checked files are specified explicitly [#86].Added typing to majority of XML functions (with stubs package
lxml-stubs) and large parts of theioandutilsubpackagesDropped testing for python
3.6in CI
v.0.6.2¶
Small bugfixes and refactoring for plotting routines
Added¶
Common plot routines for equation of states
eos_plotand plotting scf convergenceconvergence_plotReplaced old convergence plot routines with single routines for bokeh/matplotlib named
plot_convergence
Improvements¶
Moved eos and convergence plots to use
PlotDataclassFixed some edge cases of bokeh testing fixtures. Previously some plots would crash the code for normalizing the json
Bugfixes¶
Fixed bugs in convergence routines for using them in aiida-fleur
v.0.6.1¶
Release fixing a small issue with publishing version 0.6.0 to zenodo
v.0.6.0¶
This release contains major improvements to plotting methods and new tools. Also the fleur parsing functions were improved
Added¶
PlotDataclass for handling data passed to plotting methods very flexibly [#54] (For more information see the relevant users guide or developers guide sections in the documentation)masci_tools.vis.commonmodule for plotting methods with common interfaces for bokeh/matplotlib [#71]get_parameter_dataalso extracts kpt mesh specifications for the input generatorExposed and improved bokeh testing fixtures in
masci_tools.testing.bokehfor use in higher level packagesgreensf_calculationsmodule intoolswith sample functions for calculating properties with green’s functions from fleurAdded two options
line_plotandseparate_bandsto bandstructure plots. Whileline_plotis obvious (no weighted bandstructures possible),separate_bandsallows to set parameters for single selected bands. These options can also be combined
Improvements¶
Added option
only_usedtoget_kpoints_datato get only thekPointListreferenced in thekPointListSelectiontagMade
constantsargument toschema_dict_utilfunctions completely optional. Will raise an exception if a undefined constant is encounteredBandstructure plots now exclude points outside the plotting area to speed up these plots significantly for systems with a large number of bands
Refactored attribute/text type definitions in
SchemaDictobjects. Now unified under one structure. Both attributes and texts can now be recognized to contain multiple values [#64]Added
spin_arrowsoption to toggle spin arrows inplot_spinpol_dosfor matplotlib. Previously this was only possible for bokehAdded options to create different types of bar plots to
barchart: Available are'stacked'(default),'grouped','independent'(positions can be defined for each data set)Exceptions occurring in
transformsforHDF5Readerare now bundled intoHDF5TransformationErrorto allow easier error handlingAdded MT keys to
kkrparams
Bugfixes¶
Fix for
write_inpgen_file, which was incorrectly inserting the'X'(empty sphere) element into inpgen filesFix for
read_inpgen_file, which could not handle inpgen files with comments on certain lines in the inpgen fileSeveral fixes for
plot_fleur_dosnot using the standard DOS calculation but orbital decompositions and so onAdjusted default
dpifor matplotlib to100to avoid problems with size when usingplt.show()instead of saving
v.0.5.0¶
This release contains fleur inpgen IO capabilities and many major improvements
Added¶
IO routines for reading/writing inpgen input files
get_structure_datanow returns the relaxed structure if arelaxationsection is presentget_parameter_datacan read in the electron configuration if requestedget_symmetry_informationxml getter to get all defined symmetry operationsget_structure_dataandget_parameter_datanow norm the species names to get consistent ids for usage in the inpgen files [#70]
Improvements¶
Added another possible value to environment variable
MASCI_TOOLS_USE_OLD_CONSTANTSto get the values of constants in between commits c171563 and 66953f8 [#66]spexattribute is now used in addition to oldgwattribute to determine whether a fleur input file is from a SPEX calculationevaluate_tagcan now also get the text and recursively parse all subtagsChanged default of
multiply_by_eqiv_atomsinplot_fleur_dostoTruebarchartcan now make horizontal bar chartsget_cellnow also takes thescaleattribute into accountMade conversion to angstroem optional (done by default) in the xml getters. Can be turned off with the options
convert_to/from_angstroemDeprecated: Old atom position output in
get_structure_data. Use optionsite_namedtuple=Trueto get new output (includes species information)
Bugfixes¶
Fixes to make
plot_convex_hull_2dworkFix in
evaluate_textmakeconstantsargument optionalFix for
get_structure_data; Added missing unit conversion for z-coordinate of film positions
v.0.4.10¶
This release contains bugifxes for the visualization routines
Bugfixes¶
Fixed issue for histogram plot, which prevented usage for e.g. stacked histograms with multiple datasets
Fixed usage of dictionary arguments in plot_fleur_dos, that should not be used to specify parameters for multiple datasets (e.g. limits, lines)
Updated documentation table of plot parameters to put all dictionaries into literal blocks. Otherwise single quotes appear differently on read the docs
v.0.4.9¶
Improvements¶
Added saving/loading of plot defaults in json files to Plotter class (No exposed functions yet in plot_methods or bokeh_plots)
DOS plot parameters in plot_fleur_dos can now be specifified by label, e.g. color={‘Total_up’: ‘blue’}
Bugfixes¶
Various Bugfixes and improvements to ChemicalElements class, greensfunction tools and plotting methods
Fixed wrong atom label generation in DOS plots (#55)
v.0.4.8¶
Added¶
Tool to analyze/work with greensfunctions calculated by Fleur
masci_tools.tools.greensfunction
Improvements¶
Several improvements of KKR parsers/parameters [#13]
Introduced patching functions for the schema dictionaries to manually correct ambiguities [#48]
Improvements of the
HDF5Readerand recipes for Fleur DOS/bandstructure calculationFor devs:
pylint warnings are no longer fatal for the CI jobs
tests folder moved outside package directory
Bugfixes¶
Bugfixes and improvements in the plotting functions for DOS/bandstructures
Bugfixes in
xml_settersandfleurxmlmodifiermodules
v.0.4.7¶
Added¶
Introduced higher level XML modification functions for
xml_delete_tag,xml_delete_att,xml_replace_tag
Improvements¶
moving conversion factors for energy and bohr to angstroem conversion to NIST values in KKR parts of the code. This can also be disabled for backwards compatibility by setting the environment flag
MASCI_TOOLS_USE_OLD_CONSTANTSAdded missing energy unit alias for Fleur input files
xml_delete_tag,xml_delete_att,xml_replace_tagnow also support theoccurrencesargumentFleurXMLModifier improvements. Modification registration methods will now test the given arguments against the modifying functions immediately to fail early for errors.
fromListclassmethod allows the instantiation with a known list of tasks to perform. These are passed through the same procedure as the normal registration of changes
v.0.4.6¶
Bugfixes¶
Fix for the
clear_xmlfunction, where comments could end up in the set of included tags. This lead to failures in aiida-fleur
v.0.4.5¶
Added¶
Introduced function to split a xmltree back up into the included subtrees and the main tree with
xi:includetagsclear_xml now returns a set of the tags, that were included
Bugfixes¶
various bugfixes for xml modifying functions
A special case for
theta,phiandef_shiftattributes of forceTheorem tags, since they are not correctly typed in the Inputschema
v.0.4.4¶
Added¶
XML getter methods for number of kpoints and relaxation information
XML setter methods for manipulating kpoints
Improvements¶
top level
create_tagnow also accepts a etree.ElementXML getters now also accept etree.Element
Added
etree.indentcalls to keep modifiedinp.xmlclean (raises lxml dependency constraint to 4.5)io_fleurxmlfunctions now pass keyword arguments to XMLParserRe-add
fleur_modesto output_dict
Bugfixes¶
Bugfix for relative xpaths
v.0.4.3¶
Added¶
Added utility for creating schema dictionary version specific functions
Added XML getter functions adapted from aiida-fleur fleurinpdata methods [#40]
Improvements¶
v.0.4.2¶
Added¶
Added key descriptions to Plotter objects and
get_mpl_helpandget_bokeh_helpfunctions in plotting modules for getting descriptions of parametersTwo new recipes for
HDF5Readerfor bandstructures (for reading in no or specific weights besides eigenvalues)
Improvements¶
MatplotlibPlotter and BokehPlotter now have a autogenerated table of descriptions and default values in the docstring (not as nicely formatted) and in the sphinx build (really nicely formatted)
save_formatin matplotlib plots can now be a list of formatsVarious visual improvements to band/DOS plots:
Bandstructure size scaling adjusted to not produce massive bands
Bandstrcuture spin up components are now potted on top by default
size/color scaling now done with respect to the maximum in the plotting region
DOS added spin arrows in spin-polarized case
DOS inverted x-axis in vertical plot (spin down now on the right side)
DOS added symmetric limits in DOS direction for spin-polarized plots
DOS default figsize flipped for vertical plots
v.0.4.1¶
Bugfixes¶
Fix for
plot_lattice_constantto make it work in aiida-fleur
v.0.4.0¶
Added¶
Parsers for Fleur
inp.xml/out.xmlfiles. These are robust with respect to changing file versions [#3]General parser for
.hdffiles [#30]Functionality for modifying
inp.xmlfiles [#23]Fleur visualization routines
plot_fleur_dosandplot_fleur_bandsIO Module for creating/reading and manipulating
n_mmp_matfiles for LDA+U calculations in fleur [#31]Tool for calculating crystal field coefficients [#22]
Improvements¶
Refactored parameter handling in plotting methods. Introduced
Plotterclass for consistent behaviour and easy extendability of plotting capabilities [#6]