-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathoctopus.html
255 lines (251 loc) · 9.26 KB
/
octopus.html
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
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
<!DOCTYPE html>
<html>
<!-- General information and directives of this page. -->
<head>
<title>Carlos H. Borca - Resources - Octopus</title>
<link href="styles/main.css" rel="stylesheet" type="text/css"/>
</head>
<!-- Links menu in english. -->
<ul class="nav">
<li><a href="index.html"/>Main</a></li>
<li><a href="about.html"/>About</a></li>
<li><a href="research.html"/>Research</a></li>
<li><a href="people.html"/>People</a></li>
<li><a href="publications.html"/>Publications</a></li>
<li><a href="events.html"/>Events</a></li>
<li><a href="outreach.html"/>Outreach</a></li>
<li><a href="resources.html"/><b>Resources</b></a></li>
<li><a href="pulpo.html"/>Español</a></li>
</ul>
<!-- Title and stylish image background. -->
<div>
<img style="border: 0px solid; width: 100%; height: auto;"
title="Header"
src="design/header.png"
alt="" hspace="0" vspace="0"/>
</div>
<!-- This is where the content of the page starts. -->
<div class="resources" align="justify">
<center><h1>Resources: <font color="gray">Octopus</font></h1></center>
</div>
<!-- Resources menu in english. -->
<ul class="resources">
<li><a href="libefp.html"/>LibEFP</a></li>
<!-- <li><a href="gromacs.html"/>GROMACS</a></li> -->
<li><a href="octopus.html"/><b>Octopus</b></a></li>
<!-- <li><a href="q-chem.html"/>Q-Chem</a></li> -->
<!-- <li><a href="gamess.html"/>GAMESS</a></li> -->
<!-- <li><a href="psi4.html"/>Psi4</a></li> -->
<!-- <li><a href="mopac.html"/>MOPAC2016</a></li> -->
</ul>
<div class="resources" align="justify">
<h2>Contents</h2>
<ol><li><a href="octopus.html#What"/>What is Octopus?</a></li>
<li><a href="octopus.html#Octopus">Octopus Web Page</a></li>
<li><a href="octopus.html#How">How to compile Octopus 5.0.0 (Developers subversion)?</a>
<ol><li><a href="octopus.html#Ubuntu">On Ubuntu 14.04 LTS</a>
<ol><li><a href="octopus.html#Preparing">Preparing the operative system</a></li>
<li><a href="octopus.html#Installing">Installing required basic libraries</a></li>
<li><a href="octopus.html#Cleaning">Cleaning unused libraries</a></li>
<li><a href="octopus.html#scientific">Compiling scientific libraries</a></li>
<li><a href="octopus.html#download">Downloading Octopus through SVN</a></li>
<li><a href="octopus.html#configuration">Preparing Octopus configuration</a></li>
<li><a href="octopus.html#checking">Compiling and checking Octopus</a></li>
<li><a href="octopus.html#paths">Creating system paths for Octopus</a></li>
</ol>
</li>
</ol>
</li>
</ol>
<h2><a name="What">What is Octopus?</a></h2>
<p>
Octopus is a scientific program aimed at the <i>ab initio</i> virtual experimentation on a hopefully ever-increasing range of system types. Electrons are described quantum-mechanically within density-functional theory (DFT), and in its time-dependent form (TDDFT) when doing simulations in time. Nuclei are described classically as point particles. Electron-nucleus interaction is described within the pseudopotential approximation.
</p>
<p>
For optimal execution performance Octopus is parallelized using MPI and OpenMP and can scale to tens of thousands of processors. It also has support for graphical processing units (GPUs) through OpenCL.
</p>
<p>
Octopus is free software, released under the GPL license, so you are free to download it, use it and modify it.
</p>
<p>
I am a Monkey-Style developer of Octopus. My work has been related mainly to the implementation of the <a href="http://dx.doi.org/10.1103/PhysRevLett.102.073005"/>Tkatchenko-Scheffler van der Waals correction</a> for standard density functional approximations.
</p>
<h2><a name="Octopus">Octopus Web Page</a></h2>
<p>
To find out more information about Octopus, go to: <a href="http://www.tddft.org/programs/octopus/wiki/index.php/Main_Page"/>OctopusWiki - TDDFT.org</a>
</p>
<h2><a name="How">How to compile Octopus 5.0.0 (Developers subversion)?</a></h2>
<p>
Perhaps, the most difficult part of using Octopus is to compile it properly.
</p>
<h3><a name="Ubuntu">On Ubuntu 14.04 LTS</a></h3>
<p>
This is an effective method to compile Octopus on an <a href="http://www.ubuntu.com/desktop"/>Ubuntu Desktop 14.04 LTS</a>. It is based on the <a href="http://www.tddft.org/programs/octopus/wiki/index.php/Manual:Building_from_scratch"/>"slow instructions"</a> section from the Octopus manual, and it was tested on September 14th, 2015:
</p>
<h4><a name="Preparing">Preparing the operative system</a></h4>
<p>
Make sure your system is up-to-date.
</p>
<div class="code">
sudo apt-get update<br>
sudo apt-get upgrade<br>
sudo apt-get dist-upgrade<br>
</div>
<h4><a name="Installing">Installing required basic libraries</a></h4>
<p>
Install compilers.
</p>
<div class="code">
sudo apt-get install build-essential<br>
sudo apt-get install gfortran<br>
</div>
<p>
Install Math Libraries
</p>
<div class="code">
sudo apt-get install libatlas-dev<br>
sudo apt-get install libblas-dev<br>
sudo apt-get install liblapack-dev<br>
</div>
<p>
Install the Fast Fourier Transform 3 library.
</p>
<div class="code">
sudo apt-get install libfftw3*
</div>
<p>
Install SVN.
</p>
<div class="code">
sudo apt-get install subversion
</div>
<h4><a name="Cleaning">Cleaning unused libraries</a></h4>
<p>
Clean after yourself.
</p>
<div class="code">
sudo apt-get autoremove<br>
sudo apt-get autoclean<br>
sudo apt-get clean<br>
</div>
<h4><a name="scientific">Compiling scientific libraries</a></h4>
<p>
Compile the GNU Scientific Library.
</p>
<div class="code">
cd /tmp/<br>
sudo -s<br>
wget <a href="ftp://ftp.gnu.org/gnu/gsl/gsl-1.9.tar.gz">ftp://ftp.gnu.org/gnu/gsl/gsl-1.9.tar.gz</a><br>
tar -xvf gsl-1.9.tar.gz<br>
cd gsl-1.9/<br>
./configure<br>
make<br>
make install<br>
exit<br>
</div>
<p>
In addition to installing the Fast Fourier Transform 3 library, you also need to compile the 3.3.4 version.
</p>
<div class="code">
cd /tmp/<br>
sudo -s<br>
wget <a href="http://www.fftw.org/fftw-3.3.4.tar.gz">http://www.fftw.org/fftw-3.3.4.tar.gz</a><br>
tar -xvf fftw-3.3.4.tar.gz<br>
cd fftw-3.3.4/<br>
./configure<br>
make<br>
make install<br>
exit<br>
</div>
<p>
Compile the XC library.
</p>
<div class="code">
cd /tmp/<br>
sudo -s<br>
wget <a href="http://www.tddft.org/programs/octopus/down.php?file=libxc/libxc-2.1.2.tar.gz">http://www.tddft.org/programs/octopus/down.php?file=libxc/libxc-2.1.2.tar.gz</a><br>
mv down.php\?file\=libxc%2Flibxc-2.1.2.tar.gz libxc-2.1.2.tar.gz<br>
tar -xvf libxc-2.1.2.tar.gz<br>
cd libxc-2.1.2/<br>
./configure<br>
make<br>
make install<br>
exit<br>
</div>
<h4><a name="download">Downloading Octopus through SVN</a></h4>
<p>
Create a directory to download the Octopus source code.
</p>
<div class="code">
cd ~/<br>
mkdir ~/Installers<br>
mkdir ~/Installers/Octopus-5.0.0<br>
</div>
<p>
Check-out the last version of Octopus through SVN.
</p>
<div class="code">
cd ~/Installers/Octopus-5.0.0/<br>
svn co http://www.tddft.org/svn/octopus/trunk<br>
cd ~/Installers/Octopus-5.0.0/trunk/<br>
autoreconf -i<br>
</div>
<h4><a name="configuration">Preparing Octopus configuration</a></h4>
<p>
Find out where the important libraries are in your system.
</p>
<div class="code">
whereis libblas.a liblapack.a libfftw3.a
</div>
<p>
Export the corresponding flags for the <em class="code">configure</em> script.
</p>
<div class="code">
export LIBS_BLAS=/usr/lib/libblas.a<br>
export LIBS_LAPACK=/usr/lib/liblapack.a<br>
export LIBS_FFT=/usr/local/lib/libfftw3.a<br>
</div>
<h4><a name="checking">Compiling and checking Octopus</a></h4>
<p>
Compile Octopus.
</p>
<div class="code">
./configure --prefix=$HOME/octopus --with-gsl-prefix=/usr/local --with-libxc-prefix=/opt/etsf<br>
make clean<br>
make<br>
make install<br>
</div>
<p>
Check the installation through a series of preloaded tests.
</p>
<div class="code">
make check
</div>
<h4><a name="paths">Creating paths for octopus</a></h4>
<p>
Create paths for Octopus binaries on your <em class="code">.profile</em>.
</p>
<div class="code">
export PATH="~/octopus/bin:$PATH"
</div>
</div>
<!-- This is where the content of the page ends. -->
<!-- Copyright information. -->
<div class="bottom">
<img style="border: 0px solid; width: 100%; height: auto;"
title="Bottom"
src="main/bottom.png"
alt="" hspace="0" vspace="0"/>
</div>
<footer>
<center>© 2025 Carlos H. Borca</center>
</footer>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-76513146-1', 'auto');
ga('send', 'pageview');
</script>
</html>