Commit Graph

34 Commits

Author SHA1 Message Date
Sylvain Tricot df5c0de8b7 Fix bug, the rank was not set properly 2021-07-21 23:06:12 +02:00
Sylvain Tricot 3743cb8d17 Changed return values of Looper.run
Instead of returning a panda dataframe, return both a list
of [x0, y0, x1, y1,...] values for all the calculations and the
corresponding dict of parameters
2021-07-20 16:45:37 +02:00
Sylvain Tricot a4c13d3bdb Update the Readme file.
epsi-builds/msspec_python3/pipeline/head This commit looks good Details
I updated the information in the Readme file to provide
detailed steps to build msspec with GNU make.
2021-02-22 15:49:57 +01:00
Sylvain Tricot e801582beb Fix missing dependencies in EIG Makefiles 2020-12-02 08:49:06 +01:00
Sylvain Tricot 70eef0af8a Trying to fix NaN for lmax > 30.
epsi-builds/msspec_python3/pipeline/head This commit looks good Details
It is impossible to compute the crosssection if LMAX > 30.
This is due to a lack of precision in the djmn.f subroutine which
is written in simple precision. This commit is a first step to promote
this subroutine and all its dependensices to doucle precision.
2020-12-01 11:13:24 +01:00
Sylvain Tricot 50219b9f45 Work on topmost Makefile (unittests and install targets)
epsi-builds/msspec_python3/pipeline/head This commit looks good Details
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.
2020-11-30 16:39:29 +01:00
Sylvain Tricot d7b6ca5b84 Change the reading format for the tl.
epsi-builds/msspec_python3/pipeline/head This commit looks good Details
2020-11-26 09:52:14 +01:00
Sylvain Tricot 13593b8870 Revert back to GNU Make for building.
epsi-builds/msspec_python3/pipeline/head This commit looks good Details
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.
2020-11-24 09:57:35 +01:00
Sylvain Tricot fac18395c4 Print more path information.
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.
2020-11-09 14:19:36 +01:00
Sylvain Tricot 0ee6c2d791 Fix bug in spec (files not closed).
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.
2020-09-28 15:09:47 +02:00
Sylvain Tricot cd3fb05932 Add R-Factor support.
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.
2020-07-22 18:32:15 +02:00
Sylvain Tricot 22a1433726 Fix the install problem due to *.so suffix.
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.
2020-05-29 16:13:02 +02:00
Sylvain Tricot 4702d0cb0c Simplify code building and package creation. 2020-03-31 18:28:08 +02:00
Sylvain Tricot e2ec1e8bcd Documentation is now generated by scons 2020-03-27 17:47:50 +01:00
Sylvain Tricot f7caa5eef7 Move to SCons building tool instead of make.
The scons python module is now used to build the code extension.
It is an all python solution and is easier to read than a Makefile
2020-03-26 18:19:26 +01:00
Sylvain Tricot 44b3145b65 Update SConstruct 2020-03-23 22:07:12 +01:00
Sylvain Tricot 61202f7a1f Update SConstruct 2020-03-22 00:06:43 +01:00
Sylvain Tricot fbe1b6917b Add a SConstruct file to compile spec with scons 2020-03-21 20:54:10 +01:00
Kevin Dunseath 1f11a61888 In eig_mat_ms.f, moved initialisation of IOUT2 and IOUT3 to before
the test on JE, otherwise they were not initialised for JE > 1
2020-03-16 15:45:51 +01:00
Sylvain Tricot 162ffa87bd Fix bugs in packaging procedure.
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.
2020-03-12 16:16:28 +01:00
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 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 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 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
Sylvain Tricot 4a5f6f1161 Add Renormalization option in the python interface 2019-11-27 14:09:55 +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 a3469c53df work on packaging 2019-11-16 00:38:17 +01:00
Sylvain Tricot eee2516a02 Add new file hierarchy 2019-11-15 11:16:06 +01:00