Komega
issp-center-dev / Komega
シフト型クリロフ部分空間法による線形方程式ソルバーライブラリ(動的グリーン関数計算)
概要
Library for solving linear problems in materials science
典型的な利用シーン
- 多数の周波数での動的グリーン関数を効率よく計算したい
README
What ?
This package provides the solver library based on Shifted-Krylov subspace method and the software to calculate dynamical Green function by inputting the Hamiltonian and the vector of the excited state.
Download
Latest release
https://github.com/issp-center-dev/Komega/releases/download/v2.0.0/komega-2.0.0.tar.gz
Release note
https://github.com/issp-center-dev/Komega/releases/tag/v2.0.0
Other version
Prerequisite
- fortran compiler
- BLAS library
- LAPACK library (Used in the sample program)
- MPI library (Optional)
Docments
- Manual for the Library
- Manual for the sample program
Directory Tree
app/: The directory for the softwaresrc/: The source directory for the softwaresample/: The sample directoryShiftk.nb: The mathmatica note book to test the software (for developers)denovo/: Sample files not to input either Hamiltonian and the right-hand side initial vectorfrom_file/: Sample files to input both Hamiltonian and the right-hand side initial vector
doc/: The documents directory (only japanese, english version will be provided from ver.1.0)index.html: Top page for documentslibrary/: Directory for the document of the librariysoftware/: Directory for the document of the sample program
configure: Configuration script to buildsrc/: The source directory for the librariestest/: The test directory for the libraries
Install
The simplest procedure is as follows:
- Type
$ ./configure --prefix=install_dir; make; make installwhereinstall_dirshould be replaced with the full path of the directory where the library will be stored. - The following objects are generated in the directory specified by
install_dir.- In
install_dir/lib/: Static and shared libraries. - In
install_dir/include/: Header file for C/C++. install_dir/bin/Shiftk.out: Sample program
- In
For more details, please see the manual.
Test of the software
- Change the directory to
app/sample/denovo/orapp/sample/from_file/. - Type the command
$ install_dir/bin/ShiftK.out namelist.def. - When the software works well, the files such as
dynamicalG.datwill be generated. - The details of the file format of
namelist.defis written in the manual.
Usage of libraries
How to call each routines in the program
For fortran/C/C++
See the manual.
How to link the libraries
$ gfortran myprog.f90 -L install_dir/lib -lkomega -lblas -I install_dir/include
$ gcc myprog.c -L install_dir/lib -lkomega -lblas -I install_dir/include
etc.
Add the install_dir/lib directry to the environment
variable LD_LIBRARY_PATH to execute the file with dynamic link.
Test for libraries(Optional)
- Move to the
test/directory. - Type the command
$ ./solve_cc.x < complex_freq.in. - The program is normally finished when Residual vector becomes sufficiently small.
- You can check other programs (
solve_rc.x,solve_cr.x,solve_rr.x) in a similar way. Forsolve_cr.xandsolve_rr.x, please usereal_freq.in` as an input file. - The parameters in
krylov.in(you can modify the file name freely) are as followsndim: The dimeinsion of the psuedo Hamiltoniannl: This parameter is used to test the projection. The vectors are calculated from the target vector up tonl(<=ndim)th vector.nz: The number of the frequences to calculate.itermax: The maximum number of iterations.threshold: The threshold to judge the convergence.rnd_seed: The seed of random number to generate pseudo Hamiltonian.- Write the value of each frequencies line by line after this namelist.
出典: https://github.com/issp-center-dev/Komega の README
充実度
充実度 = ドキュメント(docs)・サンプル(examples)・テスト(tests)の3項目の整備状況を★3で表示します(1星=1項目/下のチェックリストが内訳)。リポジトリ情報を取得していない(手動で登録した)ソフトウェアは自動評価の対象外で、充実度の絞り込み(1 以上)では表示されません。
- あり: README
- なし: LICENSE
- あり: docs
- なし: examples
- あり: tests
- なし: CITATION
- あり: release
情報
- 主要言語
- Fortran
- 言語
- Fortran, Wolfram Language, C, Shell, Makefile, M4
- ライセンス
- LGPL-3.0
- 提供元
- github
- DOI
- 10.1016/j.cpc.2020.107536
- ドキュメント
- https://www.pasums.issp.u-tokyo.ac.jp/komega/