Updating to a new version
This page lists the issues that may appear when updating to a new version of Octopus and how to solve them.
Octopus 14 (to be released)
- Support for libxc version 4 has been removed. Libxc verions 5 and 6 are now supported.
- Octopus can now be build with CMake (see Readme.md)
Octopus 13
- Libxc version 4 has been marked deprecated and will be removed in the next major version of Octopus.
Variables
- The variables TDIonicTimeScale and TDTimeStep are now disconnected variables. TDTimeStep specifies the electronic time step, and the ionic timestep is given by TDTimeStep*TDIonicTimeScale
Octopus 11
Variables
- The syntax of the Output and TDOutput variables has been changed for greater flexibility.
- The LSize variable cannot be used anymore for periodic systems. Instead, the LatticeParameters variable is mandatory for periodic systems.
Execution
- Runs that do not use the GPU will now by default fail if the code was compiled with GPU support. It is possible to override this behavior using the AllowCPUonly input variable.
Installation
- This version supports libxc 5.1. Support for libxc 3 and libxc 5.0 has been removed. Note that if you are using libxc 5.1, the library needs to be compiled with support for third order derivatives in order for Octopus to be able to perform response calculations using the Casida or the Sternheimer methods.
Octopus 10
Execution
- The default convergence criteria have been changed:
ConvRelDens = 1e-6
andEigensolverTolerance = 1e-7
. - The SCF loop is terminated only if the convergence criteria are fulfilled twice in subsequent iterations.
Octopus 8
Variables
- The Species block can now take a set option to choose which pseudopotential set to use.
- The default for XCFunctional is now taken, when possible, from the pseudopotentials.
Octopus 7
Variables
- The UnitsInput and Units variables have been removed. Input file values are now always in atomic units, unless explicitly stated otherwise in the corresponding variable description. A few constants are available to help using eV/Angstrom units in the input file, such that one can write
Spacing = 0.25*angstrom
. - Now by default the code assumes XYZ files to be in Angstrom. This can be changed by using the UnitsXYZFiles variable.
Octopus 6
Installation
- A compiler supporting Fortran 2003 iso_c_binding is now required.
- The executable is always called octopus , no longer octopus_mpi when compiled in parallel.
- This version supports libxc 3.0.0. Although it is still possible to use libxc 2.0.0 or any of the 2.x versions, updating to libxc 3.0.0 is highly recommended.
Variables
- There is a new format for the Species block and the names of the species options have been revised.
- The variable OutputHow has been renamed to OutputFormat.
- The variable ParallelizationStrategy and ParallelizationGroupRanks have been replaced with ParDomains, ParStates, ParKPoints, and ParOther.
Utilities
The oct-rotatory_strength utility has been removed. This utility is replaced by a new PropagationSpectrumType in oct-propagation_spectrum .
Octopus 5.0
Restart files
This version breaks the backwards compatibility of the restart files. Nevertheless, it is not too difficult to update the restart files generated with a previous version. Here is a summary of the changes and how to update the files:
- Casida restart data now goes to a directory restart/casida , and a file kernel or kernel_triplet . One then needs to create the directory and rename the files.
- The format of the occs file changed with the addition of an extra field for the imaginary part of the eigenvalues. To update the file one needs to add a column of zeros by hand after the column of eigenvalues.
- The line starting with fft_alpha was removed from the mesh file.
Note that the mesh partition restart is also not compatible any more. In this case the partition needs to be recalculated, which is usually not a problem.
Variables
Some variables changed name or changed format. If an obsolete variable is found, Octopus will stop and will tell you the variable that replaces it.
The datasets feature was removed. The input file of a calculation using datasets needs to be split into several independent input files.
Octopus 4.1
Installation
This version requires libxc 2.0.0 or higher, so it might be necessary to update libxc before installing Octopus.
Restart files
Casida restart file is incompatible with that generated by version 4.0. The new format avoids problems with restarting with a different number of states.
Octopus 4.0
Installation
-
Libxc is now an independent library. To compile Octopus 4.0.0 you will have to compile libxc 1.1.0 first. These are the short instructions to compile it (we assume that libxc will be installed in $DIR, this can be the same directory where Octopus is going to be installed):
Now, when configuring Octopus pass the option –with-libxc-prefix=$DIR.tar -xvzf libxc-1.1.0.tar.gz cd libxc-1.1.0 ./configure --prefix=$DIR make make install
-
The configure option for the location of netcdf and etsf_io are –with-netcdf-prefix and –with-etsf-io-prefix.
Variables
- TDEvolutionMethod is now called TDPropagator.
Utilities
- oct-cross_section was renamed to oct-propagation_spectrum .
- oct-broad was renamed to oct-casida_spectrum .
- The format for oct-help has changed. Now -s is used instead of search , -p instead of show , and -l instead of list .
Octopus 3.0
Input variables
Some variables changed name or changed format. If an obsolete variable is found, Octopus will stop and will tell you the variable that replaces it.
- Units, UnitsInput and UnitsOutput now take a named option as argument instead of a string. So
Units = "eVA"
should be replaced by
Units = eV_Angstrom
The code will stop if the old format is encountered.
- XFunctional and CFunctional were replaced by XCFunctional, for example
XFunctional = lda_x
CFunctional = lda_c_vwn
must be replaced with
XCFunctional = lda_x + lda_c_vwn
- TDLasers was replaced by TDExternalFields.
- Some options for CalculationMode were renamed.
Output directories
Some directories in Octopus output were renamed, restart files now are stored under restart/ instead of tmp/ . Files previously found under status/ are now located in exec/ .
Restart file format
Octopus writes restart files in a binary format, this format has been updated and improved. As a result Octopus is no longer able to restart automatically the calculation of a run performed with older versions.
Recovering old restart files
If you really need to recover your old restart files, first you have to generate NetCDF restart files with your old version of Octopus. Then you will have to rename the tmp/ directory to restart/ and remove the restart_ prefix from its subdirectories, for example tmp/restart_gs/ now should be called restart/gs/ .
Now you can run Octopus 3.0 and it will find your restart information.