Initiate
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
# typeII_quasisolitons
|
||||
|
||||
Tools for simulations of type II quasisoliton wavepackets in the repulsive Lieb-Liniger model.
|
||||
|
||||
|
||||
## Compilation notes
|
||||
|
||||
The C++ standard used in the current codebase is C++-23. In particular, [C++ modules](https://en.cppreference.com/cpp/language/modules) are used.
|
||||
|
||||
These instructions apply to the following executables:
|
||||
|
||||
* typeII_quasisolitons_compute_par (produces .states and .[operator] files)
|
||||
* typeII_quasisolitons_rhoxt_par (produces .x, .t and .rhoxt files)
|
||||
* typeII_quasisolitons_amplitudes_[uniform, staggered, IDeltax] (produce .amplitudes file for specified protocol)
|
||||
|
||||
|
||||
All executables make use of Abacus version 2.
|
||||
|
||||
|
||||
### Compilation with g++23
|
||||
|
||||
This assumes that Abacus has been compiled with g++ (version 15 or above)
|
||||
|
||||
Ensure to add a symbolic link the gcm cache from the main abacus repo:
|
||||
|
||||
ln -fs [your Abacus build directory]/gcm.cache gcm.cache
|
||||
|
||||
[your g++ compiler] [executable].cc -o [executable].out -std=c++23 -fmodules -O3 -L[your Abacus build directory]/lib -labacus-2.0.0
|
||||
|
||||
|
||||
### Compilation with clang (version 21 or above)
|
||||
|
||||
This assumes that Abacus has been compiled with clang++.
|
||||
|
||||
clang++-21 [executable].cc -o [executable].out -std=c++23 -stdlib=libc++ --gcc-toolchain=[local toolchain, e.g. /usr/local/gcc-15.2.0] -fprebuilt-module-path=[local Abacus compiled objects, e.g. /home/[yourname]/abacus/obj/ -O3 -L[local Abacus library location, e.g. /home/[yourname]/abacus/lib -labacus-2.0.0
|
||||
Reference in New Issue
Block a user