epsi-builds/msspec_python3/pipeline/head This commit looks goodDetails
Just began to rewrite the topmost Makefile which will provide
targets for:
* runing the tests
* creating the Python venv
* building and installing the code
* building the manual and the website
Makefiles in subfolder were also upgraded to fix some issues in
target filenames.
epsi-builds/msspec_python3/pipeline/head This commit looks goodDetails
Makefiles are easier to maintain, I eventually prefer using GNU Make
instead of scons. SConstruct files will be removed when makefiles will
be ready in a future commit.
epsi-builds/msspec_python3/pipeline/head There was a failure building this commitDetails
The automatic resizing is not working very well in WXPython along with
matplotlib with the WxAgg backend. It is an attempt to improve this but
does not change anything unfortunately. This is a problem of WX + mpl.
When setting calc.spec_parameters.iprint=3, Spec prints out a huge
amount of information about path taken into account using the series
expansion algorithm.
Some files were not closed in spec at the end of the program. This
caused some troubles in runing the phagen-spec cycle several times.
A function (CLOSE_ALL_FILES) was added in misc.f to force opened
units in the range [7,200] to be closed before exiting the main
subroutine.
The Curve comparison is possible through R-Factor analysis.
Further comparison like shape analysis, similarity index... will
be included later.
Data export is now possible through the gui menu or as a method of
the Data object.
X, Y, Z axes were not in the right-hand orientation and the
Z-stack for drawing axes was not updated resulting in strange
graphical output (axis could "jump" over another instead of being
drawn behind)
A module (cli.py) is used to provide an entry point for the msspec
package. It is here to be PEX-compatible (https://github.com/pantsbuild/pex)
that may be used to provide a zero-install msspec distribution.
F2PY can generate inconsistent suffix for *.so files due to a
different version of numpy if not the same as the one used
in the virtualenv. The workaround is to remove the
"cpython-36m-x86_64-linux-gnu"-like part of the name. The import
mechanism works well without. This is a tiny hack though.
The f2py *.so suffix is not consistent with python virtualenv version.
By using the source dir it is easier to fix manually since the *.so are not
installed
The sys module should be imported first to decalre msspec
path as soon as possible. It enables to load the version module
necessary to avoid hardcoded version number in the setup.py file.
Please note that this import order is not pep8 compliant.
A new keyword in TMatrixParameters allows to use an external
file for the potential energy of atoms. It should be used like
this:
calc.tmatrix_parameters.potential = 'spkkr'
calc.tmatrix_parameters.potential_file = 'Cu.pot' # the name does not matter
The version 2.1 of Phagen is now used. Some updates in the
original code (bakup in phagen_scf_2.1_dp.f.orig file) have been
made to allow the making of the python extension.
Every changes are commented by a line begining by "CST"
To deal with the case of previously installed version of msspec,
the order in which the version is checked has changed.
1- test if we can infer the version from the SCM
2- check if a VERSION file exists
3- take the version from the distribution
The version is now not hardcoded anymore in the python module. We use
setuptools_scm or pkg_resources instead.
There was also a bug in the linkage for PED with matrix inversion using
external lapack.
Finally, the install script install now requirements and all requirements
are stored in the requirements.txt file. setup.py looks inside to set its
"install_requires" keyword.
It is now possible to use an external lapack version. If using
directly the Makefile, use
make pybinding USE_MKL=1 LINKER_FLAGS=-L$(MKLROOT) -lmkl_core -lmkl_intel_lp64 -lmkl_sequential
If using the install script, you can choose to edit each option of the compilation