Commit Graph

79 Commits

Author SHA1 Message Date
Sylvain Tricot 519c48c61f Add some compilation options to the Makefile.
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
2020-03-11 17:02:42 +01:00
Sylvain Tricot 81bd65a001 Fix some issues in using power method for EIG 2020-03-11 16:40:26 +01:00
Sylvain Tricot ff600a2e3d Fix some bugs in EIG calculator.
Now we can use either standard inversion or power method to
compute the spectral radii and plot the results.
2020-03-11 11:08:17 +01:00
Sylvain Tricot 5a817ab97d Add shared object for PED by Matrix inversion.
The PED spectroscopy by the matrix inversion algorithm is now
included.

This commit also includes:
 * some changes in default values in parameters.py for eigval_ipwm, eigval_method
   in SpecParameters and phi in SourceParameters
 * a modification in the cluster viewer: the mouse wheel allows to change the
   transparency and see the emitter
 * in utils.py, the hemispherical_cluster function has a new keyword that allows
   to create cylindrical clusters
2020-02-21 15:18:53 +01:00
Sylvain Tricot 27c772004c Remove a print in utils.py 2019-12-12 17:02:12 +01:00
Sylvain Tricot cedbfd823e Fix bugs for energy scan in EIG spectroscopy.
It was impossible to perform an energy scan in EIG spectroscopy.
The calculator and calcio modules were corrected.
We can now compute the spectral radius vs energy with and without
renormalization for EIG spectroscopy mode
The G_n, Sigma_n, Z_n and Lowdin K^2 methods are supported for
the inversion algorithm.

This commit fixes also several issues in the GUI and in the
hemispherical_cluster function
2019-12-12 16:45:12 +01:00
Kevin Dunseath 50a0bb7632 Replaced STOP by RETURN before error print statements in src/msspec/spec/fortran/eig/mi/do_main.f
In src/msspec/spec/fortran/eig/common/, modified eig_mat_ms.f to call subroutines in new
files diagonalize_matrix.f and renormalization.f to implement renormalization in the
eigenvalue "spectroscopy"
2019-12-11 15:12:58 +01:00
Sylvain Tricot c5187e3c4b Fix bug in Jenkinsfile.
The PYTHONPATH variable is passed in the stage steps to tell Python where
to find the msspec package.
2019-12-06 13:43:31 +01:00
Sylvain Tricot c22f86fe76 Fix bug in install process.
The *.so are now in the fortran folders, so the MANIFEST.in file was updated
to include those shared objects in the pip source distribution
2019-12-06 13:26:22 +01:00
Sylvain Tricot 93782236b0 Add the eigen value "spectroscopy" support.
The msspec/spec/fortran folder is totally different now. Most of the
fortran subroutines are in their own file and are located in different folders

The Makefile has been rewritten and can generate 3 libraries:
- one for Photoelectron Diffration in series expansion
- two for Eigen value calculation with matrix inversion and power method
2019-12-05 18:26:41 +01:00
Sylvain Tricot 47adb16ccc coverage moved to results target in src/Makefile 2019-11-29 18:06:59 +01:00
Sylvain Tricot 047458dcf6 Add test coverage report in documentation
Now tests are run through the coverage utility and a report is generated
and available in the FAQ of the html doc.
2019-11-29 17:38:41 +01:00
Sylvain Tricot dcda10d1b5 Improve Python < 3.6 compatibility.
f-strings are removed as it is only available since Python >=3.6
2019-11-29 14:04:41 +01:00
Sylvain Tricot ad52398853 Merge branch 'master' of https://git.ipr.univ-rennes1.fr/epsi/msspec_python3 2019-11-28 18:43:33 +01:00
Sylvain Tricot 4eceb1bf26 Simplify the install process.
The installation script does not try anymore to create a virtual environment.
A message at the begining recommends to the user to be in a virtual env. That way
it is possible to use virtualenv, conda, python - m venv or none of this to
create (or not) a virtual environment. It's up to the user.

The script is simpler and *should* be POSIX compliant

Files that have been modified in this commit:
- Makefile
- src/Makefile
- src/msspec/spec/fortran/Makefile
- src/msspec/phagen/fortran/Makefile
- src/install.sh
2019-11-28 18:35:37 +01:00
Kevin Dunseath 1e67616733 Changes to src/install.sh to allow installation under Mac OSX
In phagen_scf.f, subroutine atom_sub: changed dimensions of r_hs, rho0_hs to be assumed size arrays
2019-11-27 16:03:49 +01:00
Sylvain Tricot 4a5f6f1161 Add Renormalization option in the python interface 2019-11-27 14:09:55 +01:00
Sylvain Tricot 13a43b0b70 Fix bug in memory management
the call to the run function in libspec cannot be done
with unzip the OrderedDict values. It creates memory address
confusion and the program is killed by the os with a message:
"Operating system error: Cannot allocate memory
 Allocation would exceed memory limit"

To fix, we shall call the run function with each argument well specified
between the parentheses.
2019-11-22 13:38:28 +01:00
Sylvain Tricot 59c43395c2 Work on install script 2019-11-21 17:09:19 +01:00
Sylvain Tricot 4807474889 Work on continuous integration
* Started port of the previous CI.bash
* Also fix bug in spec.f (stdout was closed so nothing appeared on screen
  at the second call to libspec)
* Work on test suite
  - utils to create clusters are tested
  - PED calculator for polar and azimutal scans are tested
2019-11-20 18:14:00 +01:00
Sylvain Tricot 3f2659780c Work on package creation. 2019-11-17 23:27:10 +01:00
Sylvain Tricot a3469c53df work on packaging 2019-11-16 00:38:17 +01:00
Sylvain Tricot 45034a44cd Update version 2019-11-15 16:51:07 +01:00
Sylvain Tricot ba80b3c88d work on CI set_version 2019-11-15 16:48:05 +01:00
Sylvain Tricot 189f60e1d8 iUpdate the license info 2019-11-15 16:24:12 +01:00
Sylvain Tricot 500d822c11 change bug in hooks/pre-commit 2019-11-15 16:15:15 +01:00
Sylvain Tricot 923f5580e8 Add version target in toplevel Makefile 2019-11-15 16:07:48 +01:00
Sylvain Tricot 85cc7d788a test hook again 2019-11-15 15:56:02 +01:00
Sylvain Tricot eee2516a02 Add new file hierarchy 2019-11-15 11:16:06 +01:00