-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathREADME
146 lines (98 loc) · 2.57 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
big_bath
========
This code is intended to generate the interations between
spin systems embedded in a bath of spin impurities.
***Last modified version 09/03/2015***
Big Bath - Fortran library for spin interaction generation
==========================================================
Generates all interactions (hyperfine, dipolar) between spins
in a bath.
- Includes the generation of a crystal structure.
Installation
============
Requirements:
- Intel or GNU fortran compiler
- Git
- Make/Cmake
The following instructions are for a Unix-like environment
without root privileges.
In a terminal,
```sh
mkdir big_bath
cd big_bath
git clone https://github.com/UCLGuichard/big_bath
```
This gets the code. Now let's build it.
```sh
mkdir ./bin
mkdir ./build
cd ./build
cmake ..
make
```
If all went well, you should now have created an executable big_bath.exe in
the ./bin directory.
You may wish to modify the CMakeLists.txt to adapt to your own system.
***big_bath has been tested on Scientific Linux***
Usage
-----
Run the executable big_bath.exe in the ./bin directory.
It takes the arguments defined in the input files
System.inp ! Sets the properties of the system.
in the ./input folder. To do so, just rename System_example.inp
to System.inp and modify it for your own purposes.
Testing
-------
A bundle of unit tests is implemented in the directory ./unit_test.
To run all of them at once, follow the instructions
```sh
cd ./unit_test
mkdir ./bin
mkdir ./build
cd ./build
cmake ..
make
```
This creates an executable in the ./bin directory. Then, run it
```sh
cd ../bin
./unit_test.exe
```
It should display a serie of test for each subroutine with 'ok'.
Output files are also created which allows to compare with the benchmarks
in the ./benchmark directory.
Example
-------
Getting help
------------
Documentation
=============
Requirements:
- Dot (contained in Graphviz package)
- LaTeX compiler (pdflatex)
You can generate a full documentation of big_bath by using doxygen with
the Doxyfile:
doxygen Doxyfile
This will produce both an html call tree and a pdf LaTeX documentation in the
doc directory.
License
=======
See LICENSE file for more details.
Citation
========
See CITATION file for more details.
Version
=======
1.0 (in progress)
History
=======
big_bath is originally written by R. Guichard starting in 2015. Checking has
been performed with Setrak Balian's C++ spindec code:
http://www.bitbucket.org/sbalian/spindec
Acknowledgements
================
- Prof. Tania Monteiro
- Setrak Balian
Contact
=======
[Roland Guichard] - <r.guichard@ucl.ac.uk>