diff --git a/aiida_quantumespresso/calculations/__init__.py b/aiida_quantumespresso/calculations/__init__.py
index b92acdc83..a0eb6f8f8 100644
--- a/aiida_quantumespresso/calculations/__init__.py
+++ b/aiida_quantumespresso/calculations/__init__.py
@@ -505,16 +505,15 @@ def _generate_PWCPinputdata(cls, parameters, settings, pseudos, structure, kpoin
# ------------ ATOMIC_POSITIONS -----------
coordinates = [site.position for site in structure.sites]
if use_fractional:
- atomic_positions_card_list = ['ATOMIC_POSITIONS crystal']
+ atomic_positions_card_header = 'ATOMIC_POSITIONS crystal\n'
coordinates = numpy.dot(coordinates, numpy.linalg.inv(numpy.array(structure.cell))).tolist()
else:
- atomic_positions_card_list = ['ATOMIC_POSITIONS angstrom']
+ atomic_positions_card_header = 'ATOMIC_POSITIONS angstrom\n'
- for site, site_coords in zip(structure.sites, coordinates):
- atomic_positions_card_list.append(
- '{0} {1:18.10f} {2:18.10f} {3:18.10f}'. # pylint: disable=consider-using-f-string
- format(site.kind_name.ljust(6), *site_coords)
- )
+ atomic_positions_card_list = [
+ '{0} {1:18.10f} {2:18.10f} {3:18.10f}'.format(site.kind_name.ljust(6), *site_coords) # pylint: disable=consider-using-f-string
+ for site, site_coords in zip(structure.sites, coordinates)
+ ]
fixed_coords = settings.pop('FIXED_COORDS', None)
@@ -525,12 +524,15 @@ def _generate_PWCPinputdata(cls, parameters, settings, pseudos, structure, kpoin
raise exceptions.InputValidationError(
f'Input structure has {len(structure.sites)} sites, but fixed_coords has length {len(fixed_coords)}'
)
- fixed_coords_strings = [' {:d} {:d} {:d}'.format(*row) for row in numpy.int32(fixed_coords).tolist()] # pylint: disable=consider-using-f-string
-
- for atomic_pos_str, fixed_coords_str in zip(atomic_positions_card_list[1:], fixed_coords_strings):
- atomic_pos_str += fixed_coords_str
-
- atomic_positions_card = '\n'.join(atomic_positions_card_list) + '\n'
+ fixed_coords_strings = [
+ ' {:d} {:d} {:d}'.format(*row) for row in numpy.int32(numpy.invert(fixed_coords)).tolist() # pylint: disable=consider-using-f-string
+ ]
+ atomic_positions_card_list = [
+ atomic_pos_str + fixed_coords_str
+ for atomic_pos_str, fixed_coords_str in zip(atomic_positions_card_list, fixed_coords_strings)
+ ]
+
+ atomic_positions_card = atomic_positions_card_header + '\n'.join(atomic_positions_card_list) + '\n'
# Optional ATOMIC_FORCES card
atomic_forces = settings.pop('ATOMIC_FORCES', None)
diff --git a/aiida_quantumespresso/parsers/pw.py b/aiida_quantumespresso/parsers/pw.py
index 8cb1072cd..970e053bf 100644
--- a/aiida_quantumespresso/parsers/pw.py
+++ b/aiida_quantumespresso/parsers/pw.py
@@ -250,13 +250,14 @@ def is_ionically_converged(self, trajectory, except_final_scf=False):
return verify_convergence_trajectory(
trajectory=trajectory,
index=-1,
- threshold_forces=threshold_forces
+ threshold_forces=threshold_forces,
+ fixed_coords=fixed_coords
)
if relax_type == 'vc-relax':
- values = [threshold_forces, threshold_stress, external_pressure]
- converged_relax = verify_convergence_trajectory(trajectory, -2, *values, fixed_coords)
- converged_final = verify_convergence_trajectory(trajectory, -1, *values, fixed_coords)
+ values = [threshold_forces, threshold_stress, external_pressure, fixed_coords]
+ converged_relax = verify_convergence_trajectory(trajectory, -2, *values)
+ converged_final = verify_convergence_trajectory(trajectory, -1, *values)
return converged_relax and (converged_final or except_final_scf)
diff --git a/tests/calculations/test_pw.py b/tests/calculations/test_pw.py
index 809d5a349..35f68f1cf 100644
--- a/tests/calculations/test_pw.py
+++ b/tests/calculations/test_pw.py
@@ -320,3 +320,35 @@ def test_pw_validate_inputs_restart_nscf(
inputs['parameters'] = orm.Dict(dict=parameters)
with pytest.warns(Warning, match='`restart_mode` should be set to `from_scratch` for a `.*`.'):
generate_calc_job(fixture_sandbox, entry_point_name, inputs)
+
+
+def test_fixed_coords(fixture_sandbox, generate_calc_job, generate_inputs_pw, file_regression):
+ """Test a ``PwCalculation`` where the ``fixed_coords`` setting was provided."""
+ entry_point_name = 'quantumespresso.pw'
+
+ inputs = generate_inputs_pw()
+ inputs['settings'] = orm.Dict(dict={'FIXED_COORDS': [[True, True, False], [False, True, False]]})
+ generate_calc_job(fixture_sandbox, entry_point_name, inputs)
+
+ with fixture_sandbox.open('aiida.in') as handle:
+ input_written = handle.read()
+
+ file_regression.check(input_written, encoding='utf-8', extension='.in')
+
+
+@pytest.mark.parametrize(['fixed_coords', 'error_message'], [
+ ([[True, True], [False, True]], 'The `fixed_coords` setting must be a list of lists with length 3.'),
+ ([[True, True, 1], [False, True, False]
+ ], 'All elements in the `fixed_coords` setting lists must be either `True` or `False`.'),
+ ([
+ [True, True, False],
+ ], 'Input structure has 2 sites, but fixed_coords has length 1'),
+])
+def test_fixed_coords_validation(fixture_sandbox, generate_calc_job, generate_inputs_pw, fixed_coords, error_message):
+ """Test the validation of the ``fixed_coords`` setting for the ``PwCalculation``."""
+ entry_point_name = 'quantumespresso.pw'
+
+ inputs = generate_inputs_pw()
+ inputs['settings'] = orm.Dict(dict={'FIXED_COORDS': fixed_coords})
+ with pytest.raises(ValueError, match=error_message):
+ generate_calc_job(fixture_sandbox, entry_point_name, inputs)
diff --git a/tests/calculations/test_pw/test_fixed_coords.in b/tests/calculations/test_pw/test_fixed_coords.in
new file mode 100644
index 000000000..33c0d497e
--- /dev/null
+++ b/tests/calculations/test_pw/test_fixed_coords.in
@@ -0,0 +1,28 @@
+&CONTROL
+ calculation = 'scf'
+ outdir = './out/'
+ prefix = 'aiida'
+ pseudo_dir = './pseudo/'
+ verbosity = 'high'
+/
+&SYSTEM
+ ecutrho = 2.4000000000d+02
+ ecutwfc = 3.0000000000d+01
+ ibrav = 0
+ nat = 2
+ ntyp = 1
+/
+&ELECTRONS
+ electron_maxstep = 60
+/
+ATOMIC_SPECIES
+Si 28.0855 Si.upf
+ATOMIC_POSITIONS angstrom
+Si 0.0000000000 0.0000000000 0.0000000000 0 0 1
+Si 1.3575000000 1.3575000000 1.3575000000 1 0 1
+K_POINTS automatic
+2 2 2 0 0 0
+CELL_PARAMETERS angstrom
+ 2.7150000000 2.7150000000 0.0000000000
+ 2.7150000000 0.0000000000 2.7150000000
+ 0.0000000000 2.7150000000 2.7150000000
diff --git a/tests/parsers/fixtures/pw/fixed_coords_relax/aiida.out b/tests/parsers/fixtures/pw/fixed_coords_relax/aiida.out
new file mode 100644
index 000000000..0e3ce8dc6
--- /dev/null
+++ b/tests/parsers/fixtures/pw/fixed_coords_relax/aiida.out
@@ -0,0 +1,382 @@
+
+ Program PWSCF v.7.0 starts on 9Mar2022 at 19: 6:34
+
+ This program is part of the open-source Quantum ESPRESSO suite
+ for quantum simulation of materials; please cite
+ "P. Giannozzi et al., J. Phys.:Condens. Matter 21 395502 (2009);
+ "P. Giannozzi et al., J. Phys.:Condens. Matter 29 465901 (2017);
+ "P. Giannozzi et al., J. Chem. Phys. 152 154105 (2020);
+ URL http://www.quantum-espresso.org",
+ in publications or presentations arising from this work. More details at
+ http://www.quantum-espresso.org/quote
+
+ Parallel version (MPI), running on 1 processors
+
+ MPI processes distributed on 1 nodes
+ 39404 MiB available memory on the printing compute node when the environment starts
+
+ Reading input from aiida.in
+
+ Current dimensions of program PWSCF are:
+ Max number of different atomic species (ntypx) = 10
+ Max number of k-points (npk) = 40000
+ Max angular momentum in pseudopotentials (lmaxx) = 4
+ Message from routine setup:
+ using ibrav=0 with symmetry is DISCOURAGED, use correct ibrav instead
+
+ Subspace diagonalization in iterative solution of the eigenvalue problem:
+ a serial algorithm will be used
+
+
+ G-vector sticks info
+ --------------------
+ sticks: dense smooth PW G-vecs: dense smooth PW
+ Sum 877 439 151 17261 6183 1139
+
+ Using Slab Decomposition
+
+
+
+ bravais-lattice index = 0
+ lattice parameter (alat) = 7.3075 a.u.
+ unit-cell volume = 275.9279 (a.u.)^3
+ number of atoms/cell = 2
+ number of atomic types = 1
+ number of electrons = 8.00
+ number of Kohn-Sham states= 8
+ kinetic-energy cutoff = 30.0000 Ry
+ charge density cutoff = 240.0000 Ry
+ scf convergence threshold = 8.0E-10
+ mixing beta = 0.4000
+ number of iterations used = 8 plain mixing
+ energy convergence thresh.= 2.0E-04
+ force convergence thresh. = 1.0E-03
+ Exchange-correlation= PBE
+ ( 1 4 3 4 0 0 0)
+ nstep = 50
+
+
+ celldm(1)= 7.307523 celldm(2)= 0.000000 celldm(3)= 0.000000
+ celldm(4)= 0.000000 celldm(5)= 0.000000 celldm(6)= 0.000000
+
+ crystal axes: (cart. coord. in units of alat)
+ a(1) = ( 1.000000 0.000000 0.000000 )
+ a(2) = ( 0.500000 0.866025 0.000000 )
+ a(3) = ( 0.500000 0.288675 0.816497 )
+
+ reciprocal axes: (cart. coord. in units 2 pi/alat)
+ b(1) = ( 1.000000 -0.577350 -0.408248 )
+ b(2) = ( 0.000000 1.154701 -0.408248 )
+ b(3) = ( 0.000000 0.000000 1.224745 )
+
+
+ PseudoPot. # 1 for Si read from file:
+ ./pseudo/Si.pbe-n-rrkjus_psl.1.0.0.UPF
+ MD5 check sum: 0b0bb1205258b0d07b9f9672cf965d36
+ Pseudo is Ultrasoft + core correction, Zval = 4.0
+ Generated using "atomic" code by A. Dal Corso v.5.1
+ Using radial grid of 1141 points, 6 beta functions with:
+ l(1) = 0
+ l(2) = 0
+ l(3) = 1
+ l(4) = 1
+ l(5) = 2
+ l(6) = 2
+ Q(r) pseudized with 0 coefficients
+
+
+ atomic species valence mass pseudopotential
+ Si 4.00 28.08550 Si( 1.00)
+
+--- SYMMETRIES REMOVED ---
+
+ Cartesian axes
+
+ site n. atom positions (alat units)
+ 1 Si tau( 1) = ( 1.6500000 0.9526279 0.6123724 )
+ 2 Si tau( 2) = ( 1.0000000 0.5773503 0.3522790 )
+
+ Crystallographic axes
+
+ site n. atom positions (cryst. coord.)
+ 1 Si tau( 1) = ( 0.8500000 0.8500000 0.7500000 )
+ 2 Si tau( 2) = ( 0.5228494 0.5228494 0.4314519 )
+
+--- K-POINTS REMOVED ---
+
+--- MEMORY INFO REMOVED ---
+
+ Initial potential from superposition of free atoms
+
+ starting charge 7.9989, renormalised to 8.0000
+ Starting wfcs are 8 randomized atomic wfcs
+
+ total cpu time spent up to now is 0.5 secs
+
+ Self-consistent Calculation
+
+ iteration # 1 ecut= 30.00 Ry beta= 0.40
+ Davidson diagonalization with overlap
+
+---- Real-time Memory Report at c_bands before calling an iterative solver
+ 92 MiB given to the printing process from OS
+ 0 MiB allocation reported by mallinfo(arena+hblkhd)
+ 39386 MiB available memory on the node where the printing process lives
+------------------
+ ethr = 1.00E-02, avg # of iterations = 4.8
+
+ Threshold (ethr) on eigenvalues was too large:
+ Diagonalizing with lowered threshold
+
+ Davidson diagonalization with overlap
+
+---- Real-time Memory Report at c_bands before calling an iterative solver
+ 100 MiB given to the printing process from OS
+ 0 MiB allocation reported by mallinfo(arena+hblkhd)
+ 39379 MiB available memory on the node where the printing process lives
+------------------
+ ethr = 6.32E-04, avg # of iterations = 1.8
+
+ total cpu time spent up to now is 0.9 secs
+
+ total energy = -22.74611644 Ry
+ estimated scf accuracy < 0.05457483 Ry
+
+ iteration # 2 ecut= 30.00 Ry beta= 0.40
+ Davidson diagonalization with overlap
+
+---- Real-time Memory Report at c_bands before calling an iterative solver
+ 105 MiB given to the printing process from OS
+ 0 MiB allocation reported by mallinfo(arena+hblkhd)
+ 39375 MiB available memory on the node where the printing process lives
+------------------
+ ethr = 6.82E-04, avg # of iterations = 1.0
+
+ total cpu time spent up to now is 1.1 secs
+
+ total energy = -22.74288687 Ry
+ estimated scf accuracy < 0.01516845 Ry
+
+ iteration # 3 ecut= 30.00 Ry beta= 0.40
+ Davidson diagonalization with overlap
+
+---- Real-time Memory Report at c_bands before calling an iterative solver
+ 105 MiB given to the printing process from OS
+ 0 MiB allocation reported by mallinfo(arena+hblkhd)
+ 39374 MiB available memory on the node where the printing process lives
+------------------
+ ethr = 1.90E-04, avg # of iterations = 1.7
+
+ total cpu time spent up to now is 1.3 secs
+
+ total energy = -22.74395942 Ry
+ estimated scf accuracy < 0.00032227 Ry
+
+ iteration # 4 ecut= 30.00 Ry beta= 0.40
+ Davidson diagonalization with overlap
+
+---- Real-time Memory Report at c_bands before calling an iterative solver
+ 105 MiB given to the printing process from OS
+ 0 MiB allocation reported by mallinfo(arena+hblkhd)
+ 39375 MiB available memory on the node where the printing process lives
+------------------
+ c_bands: 2 eigenvalues not converged
+ c_bands: 1 eigenvalues not converged
+ ethr = 4.03E-06, avg # of iterations = 8.0
+
+ total cpu time spent up to now is 1.7 secs
+
+ total energy = -22.74402517 Ry
+ estimated scf accuracy < 0.00002581 Ry
+
+ iteration # 5 ecut= 30.00 Ry beta= 0.40
+ Davidson diagonalization with overlap
+
+---- Real-time Memory Report at c_bands before calling an iterative solver
+ 105 MiB given to the printing process from OS
+ 0 MiB allocation reported by mallinfo(arena+hblkhd)
+ 39375 MiB available memory on the node where the printing process lives
+------------------
+ ethr = 3.23E-07, avg # of iterations = 2.3
+
+ total cpu time spent up to now is 1.9 secs
+
+ total energy = -22.74402743 Ry
+ estimated scf accuracy < 0.00000078 Ry
+
+ iteration # 6 ecut= 30.00 Ry beta= 0.40
+ Davidson diagonalization with overlap
+
+---- Real-time Memory Report at c_bands before calling an iterative solver
+ 106 MiB given to the printing process from OS
+ 0 MiB allocation reported by mallinfo(arena+hblkhd)
+ 39374 MiB available memory on the node where the printing process lives
+------------------
+ ethr = 9.73E-09, avg # of iterations = 2.0
+
+ total cpu time spent up to now is 2.1 secs
+
+ total energy = -22.74402752 Ry
+ estimated scf accuracy < 0.00000014 Ry
+
+ iteration # 7 ecut= 30.00 Ry beta= 0.40
+ Davidson diagonalization with overlap
+
+---- Real-time Memory Report at c_bands before calling an iterative solver
+ 106 MiB given to the printing process from OS
+ 0 MiB allocation reported by mallinfo(arena+hblkhd)
+ 39351 MiB available memory on the node where the printing process lives
+------------------
+ ethr = 1.74E-09, avg # of iterations = 2.0
+
+ total cpu time spent up to now is 2.4 secs
+
+ total energy = -22.74402753 Ry
+ estimated scf accuracy < 0.00000004 Ry
+
+ iteration # 8 ecut= 30.00 Ry beta= 0.40
+ Davidson diagonalization with overlap
+
+---- Real-time Memory Report at c_bands before calling an iterative solver
+ 106 MiB given to the printing process from OS
+ 0 MiB allocation reported by mallinfo(arena+hblkhd)
+ 39320 MiB available memory on the node where the printing process lives
+------------------
+ ethr = 4.58E-10, avg # of iterations = 1.4
+
+ total cpu time spent up to now is 2.6 secs
+
+ End of self-consistent calculation
+
+--- OCCUPATIONS REMOVED ---
+
+ the Fermi energy is 6.6446 ev
+
+! total energy = -22.74402753 Ry
+ estimated scf accuracy < 2.5E-10 Ry
+ smearing contrib. (-TS) = -0.00022120 Ry
+ internal energy E=F+TS = -22.74380633 Ry
+
+ The total energy is F=E-TS. E is the sum of the following terms:
+ one-electron contribution = 5.02315831 Ry
+ hartree contribution = 1.08019211 Ry
+ xc contribution = -12.26905250 Ry
+ ewald contribution = -16.57810425 Ry
+
+ convergence has been achieved in 8 iterations
+
+ Forces acting on atoms (cartesian axes, Ry/au):
+
+ atom 1 type 1 force = -0.03561845 -0.02056432 0.00005349
+ atom 2 type 1 force = 0.03561845 0.02056432 -0.00005349
+ The non-local contrib. to forces
+ atom 1 type 1 force = -0.03929359 -0.02268616 -0.00086755
+ atom 2 type 1 force = 0.03929448 0.02268668 0.00086307
+ The ionic contribution to forces
+ atom 1 type 1 force = 0.02423345 0.01399119 0.04444962
+ atom 2 type 1 force = -0.02423345 -0.01399119 -0.04444962
+ The local contribution to forces
+ atom 1 type 1 force = -0.02513890 -0.01451395 -0.04363408
+ atom 2 type 1 force = 0.02513904 0.01451403 0.04363586
+ The core correction contribution to forces
+ atom 1 type 1 force = 0.00457859 0.00264345 0.00010230
+ atom 2 type 1 force = -0.00458575 -0.00264758 -0.00010305
+ The Hubbard contrib. to forces
+ atom 1 type 1 force = 0.00000000 0.00000000 0.00000000
+ atom 2 type 1 force = 0.00000000 0.00000000 0.00000000
+ The SCF correction term to forces
+ atom 1 type 1 force = -0.00000000 -0.00000000 0.00000000
+ atom 2 type 1 force = 0.00000000 0.00000000 -0.00000154
+
+ Total force = 0.000053 Total SCF correction = 0.000002
+
+
+ Computing stress (Cartesian axis) and pressure
+
+ total stress (Ry/bohr**3) (kbar) P= 42.56
+ -0.00008601 -0.00051277 -0.00029112 -12.65 -75.43 -42.82
+ -0.00051277 0.00050609 -0.00016808 -75.43 74.45 -24.72
+ -0.00029112 -0.00016808 0.00044785 -42.82 -24.72 65.88
+
+ kinetic stress (kbar) 2226.73 81.92 57.05
+ 81.92 2132.14 32.94
+ 57.05 32.94 2111.23
+
+ local stress (kbar) 950.89 1102.96 754.10
+ 1102.96 -322.70 435.38
+ 754.10 435.38 -526.91
+
+ nonloc. stress (kbar) 1489.90 -108.63 -73.45
+ -108.63 1615.34 -42.41
+ -73.45 -42.41 1633.98
+
+ hartree stress (kbar) 68.59 -148.18 -102.51
+ -148.18 239.70 -59.19
+ -102.51 -59.19 267.58
+
+ exc-cor stress (kbar) 2887.22 -6.62 -4.51
+ -6.62 2894.86 -2.60
+ -4.51 -2.60 2895.98
+
+ corecor stress (kbar) -3854.13 14.60 9.88
+ 14.60 -3870.99 5.70
+ 9.88 5.70 -3873.47
+
+ ewald stress (kbar) -3781.86 -1011.49 -683.38
+ -1011.49 -2613.89 -394.55
+ -683.38 -394.55 -2442.51
+
+ hubbard stress (kbar) 0.00 0.00 0.00
+ 0.00 0.00 0.00
+ 0.00 0.00 0.00
+
+ DFT-D stress (kbar) 0.00 0.00 0.00
+ 0.00 0.00 0.00
+ 0.00 0.00 0.00
+
+ XDM stress (kbar) 0.00 0.00 0.00
+ 0.00 0.00 0.00
+ 0.00 0.00 0.00
+
+ dft-nl stress (kbar) 0.00 0.00 0.00
+ 0.00 0.00 0.00
+ 0.00 0.00 0.00
+
+ TS-vdW stress (kbar) 0.00 0.00 0.00
+ 0.00 0.00 0.00
+ 0.00 0.00 0.00
+
+
+ 0.00 0.00 0.00
+ 0.00 0.00 0.00
+
+
+ 0.00 0.00 0.00
+
+
+ BFGS Geometry Optimization
+ Energy error = 0.0E+00 Ry
+ Gradient error = 5.3E-05 Ry/Bohr
+
+ bfgs converged in 1 scf cycles and 0 bfgs steps
+ (criteria: energy < 2.0E-04 Ry, force < 1.0E-03 Ry/Bohr)
+
+ End of BFGS Geometry Optimization
+
+ Final energy = -22.7440275342 Ry
+Begin final coordinates
+
+ATOMIC_POSITIONS (angstrom)
+Si 6.3805081446 3.6837880949 2.3680286748 0 0 0
+Si 3.8669746331 2.2325988453 1.3622538753 0 0 1
+End final coordinates
+
+
+
+ Writing all to output data dir ./out/aiida.save/
+
+--- TIMINGS REMOVED ---
+
+=------------------------------------------------------------------------------=
+ JOB DONE.
+=------------------------------------------------------------------------------=
diff --git a/tests/parsers/fixtures/pw/fixed_coords_relax/data-file.xml b/tests/parsers/fixtures/pw/fixed_coords_relax/data-file.xml
new file mode 100644
index 000000000..56632842f
--- /dev/null
+++ b/tests/parsers/fixtures/pw/fixed_coords_relax/data-file.xml
@@ -0,0 +1,932 @@
+
+
+
+
+ QEXSD_21.11.01
+ XML file generated by PWSCF
+ This run was terminated on: 19: 6:37 9 Mar 2022
+
+
+
+ 1
+ 1
+ 1
+ 1
+ 1
+ 1
+
+
+
+
+ relax
+ from_scratch
+ aiida
+ ./pseudo/
+ ./out/
+ true
+ true
+ true
+ low
+ 41040
+ 50
+ 1.000000000000000e-4
+ 5.000000000000000e-4
+ 5.000000000000000e-1
+ high
+ 100000
+
+
+
+ 2.808550000000000e1
+ Si.pbe-n-rrkjus_psl.1.0.0.UPF
+
+
+
+
+ 1.205741292923812e1 6.961350600517926e0 4.474925650632502e0
+ 7.307522987434224e0 4.219000363772738e0 2.574286736527106e0
+
+
+ 7.307522987434222e0 0.000000000000000e0 0.000000000000000e0
+ 3.653761493622625e0 6.328500545942567e0 0.000000000000000e0
+ 3.653761493622625e0 2.109500181980855e0 5.966567534365643e0
+ |
+
+
+ PBE
+
+
+ false
+ false
+ false
+
+
+ mv
+ 0.000000000000000e0
+ smearing
+
+
+ false
+ 1.500000000000000e1
+ 1.200000000000000e2
+
+
+ davidson
+ plain
+ 4.000000000000000e-1
+ 4.000000000000000e-10
+ 8
+ 80
+ false
+ false
+ false
+ false
+ 0.000000000000000e0
+ false
+ 20
+ 20
+ 4
+ 16
+ false
+
+
+ Monkhorst-Pack
+
+
+ bfgs
+ 1.000000000000000e2
+ false
+ false
+
+ 1
+ 1.000000000000000e-4
+ 8.000000000000000e-1
+ 5.000000000000000e-1
+ 1.000000000000000e-2
+ 5.000000000000000e-1
+
+
+
+ none
+ 0.000000000000000e0
+ 5.617100000000001e1
+ all
+
+
+ false
+ false
+ false
+ false
+ false
+ false
+
+
+ 0 0 0
+ 0 0 1
+
+
+
+
+ true
+ 8
+ 2.542999795247903e-10
+
+
+
+ 1.205741292923812e1 6.961350600517926e0 4.474925650632502e0
+ 7.307522987434224e0 4.219000363772738e0 2.574286736527106e0
+
+
+ 7.307522987434222e0 0.000000000000000e0 0.000000000000000e0
+ 3.653761493622625e0 6.328500545942567e0 0.000000000000000e0
+ 3.653761493622625e0 2.109500181980855e0 5.966567534365643e0
+ |
+
+
+ -1.137201376707892e1
+ 2.688899691316882e-1
+ 5.400960527219643e-1
+ -3.322868571473395e0
+ -6.134526248701011e0
+ -8.289052126719902e0
+ -1.106011033148917e-4
+
+
+ 0.000000000000000e0 0.000000000000000e0 0.000000000000000e0
+ 0.000000000000000e0 0.000000000000000e0 -2.674509189185166e-5
+
+
+
+ 0
+
+
+ 2.943870000000000e0
+ 3.220255851745605e0
+
+
+ 3.674470000000000e-1
+ 3.831341266632080e-1
+
+
+ 2.246860000000000e-1
+ 2.281689643859863e-1
+
+
+ 3.587999999999994e-3
+ 3.587961196899414e-3
+
+
+ 2.025160000000000e-1
+ 2.056279182434082e-1
+
+
+ 3.413599999999928e-2
+ 3.524208068847656e-2
+
+
+ 2.901800000000004e-2
+ 3.566813468933105e-2
+
+
+ 2.005800000000000e-1
+ 2.143294811248779e-1
+
+
+ 2.443779999999998e-1
+ 2.581706047058105e-1
+
+
+ 3.656999999999577e-3
+ 3.673315048217773e-3
+
+
+ 6.067999999999962e-3
+ 7.555961608886719e-3
+
+
+ 3.630000000000244e-3
+ 5.094051361083984e-3
+
+
+ 2.701060000000002e-1
+ 3.621308803558350e-1
+
+
+ 5.043300000000000e-2
+ 5.181002616882324e-2
+
+
+ 1.205000000000020e-1
+ 1.229050159454346e-1
+
+
+ 1.197499999999989e-1
+ 1.222424507141113e-1
+
+
+ 2.672000000000063e-3
+ 2.689123153686523e-3
+
+
+ 2.643999999999869e-3
+ 2.666711807250977e-3
+
+
+ 3.367300000000012e-2
+ 3.495883941650391e-2
+
+
+ 3.364099999999992e-2
+ 3.492999076843262e-2
+
+
+ 3.357499999999980e-2
+ 3.486204147338867e-2
+
+
+ 3.067100000000000e-2
+ 3.195190429687500e-2
+
+
+ 7.271910000000004e-1
+ 7.374980449676514e-1
+
+
+ 7.261010000000008e-1
+ 7.364306449890137e-1
+
+
+ 7.201009999999957e-1
+ 7.303347587585449e-1
+
+
+ 6.656950000000035e-1
+ 6.750814914703369e-1
+
+
+ 6.636810000000026e-1
+ 6.747441291809082e-1
+
+
+ 3.100699999999978e-2
+ 3.148603439331055e-2
+
+
+ 4.246300000000147e-2
+ 4.396843910217285e-2
+
+
+ 2.117799999999681e-2
+ 2.160000801086426e-2
+
+
+ 1.668000000000225e-3
+ 1.667022705078125e-3
+
+
+ 2.447000000000399e-2
+ 2.485656738281250e-2
+
+
+ 2.043900000000365e-2
+ 2.075052261352539e-2
+
+
+ 7.280000000000064e-4
+ 7.319450378417969e-4
+
+
+ 4.494000000000398e-2
+ 4.601764678955078e-2
+
+
+ 4.180000000000850e-4
+ 4.251003265380859e-4
+
+
+ 1.933796000000000e0
+ 2.154656171798706e0
+
+
+ 1.037326999999999e0
+ 1.052959203720093e0
+
+
+ 8.395179999999982e-1
+ 8.526775836944580e-1
+
+
+ 8.506000000003677e-3
+ 9.140491485595703e-3
+
+
+ 1.160100000000108e-2
+ 1.190447807312012e-2
+
+
+ 7.152999999998411e-3
+ 8.173942565917969e-3
+
+
+ 2.446600000000076e-2
+ 2.503871917724609e-2
+
+
+ 4.532299999999578e-2
+ 4.633474349975586e-2
+
+
+ 1.412299999999567e-2
+ 1.444339752197266e-2
+
+
+ 4.864980000000001e-1
+ 5.937232971191406e-1
+
+
+ 1.160999999999746e-3
+ 1.304864883422852e-3
+
+
+ 1.913860000000005e-1
+ 1.967406272888184e-1
+
+
+ 2.044000000001045e-3
+ 2.096891403198242e-3
+
+
+ 4.987100000000000e-2
+ 5.086350440979004e-2
+
+
+ 8.367000000001568e-3
+ 9.134531021118164e-3
+
+
+ 8.930000000026972e-4
+ 9.217262268066406e-4
+
+
+ 2.839709999999998e-1
+ 3.842501640319824e-1
+
+
+ 1.106000000000051e-3
+ 1.112937927246094e-3
+
+
+ 6.267800000000001e-2
+ 1.562371253967285e-1
+
+
+ 1.412960000000001e-1
+ 1.416790485382080e-1
+
+
+ 8.492000000000388e-3
+ 9.912967681884766e-3
+
+
+ 7.639000000000173e-3
+ 8.664131164550781e-3
+
+
+ 5.755919999999999e-1
+ 6.078929901123047e-1
+
+
+ 9.167700000000023e-2
+ 9.995889663696289e-2
+
+
+ 5.235900000000004e-2
+ 6.038403511047363e-2
+
+
+ 1.821000000000073e-3
+ 2.020120620727539e-3
+
+
+ 2.993400000000035e-2
+ 2.999401092529297e-2
+
+
+ 5.994999999999973e-3
+ 5.995035171508789e-3
+
+
+ 4.837520000000000e-1
+ 5.077569484710693e-1
+
+
+ 1.020000000000465e-4
+ 1.032352447509766e-4
+
+
+ 4.541999999999380e-3
+ 4.550695419311523e-3
+
+
+ 4.245999999997974e-3
+ 4.292249679565430e-3
+
+
+ 1.918000000000308e-3
+ 1.941204071044922e-3
+
+
+
+
diff --git a/tests/parsers/fixtures/pw/fixed_coords_vcrelax/aiida.out b/tests/parsers/fixtures/pw/fixed_coords_vcrelax/aiida.out
new file mode 100644
index 000000000..b8eb955d7
--- /dev/null
+++ b/tests/parsers/fixtures/pw/fixed_coords_vcrelax/aiida.out
@@ -0,0 +1,581 @@
+
+ Program PWSCF v.7.0 starts on 9Mar2022 at 18:36:40
+
+ This program is part of the open-source Quantum ESPRESSO suite
+ for quantum simulation of materials; please cite
+ "P. Giannozzi et al., J. Phys.:Condens. Matter 21 395502 (2009);
+ "P. Giannozzi et al., J. Phys.:Condens. Matter 29 465901 (2017);
+ "P. Giannozzi et al., J. Chem. Phys. 152 154105 (2020);
+ URL http://www.quantum-espresso.org",
+ in publications or presentations arising from this work. More details at
+ http://www.quantum-espresso.org/quote
+
+ Parallel version (MPI), running on 1 processors
+
+ MPI processes distributed on 1 nodes
+ 39557 MiB available memory on the printing compute node when the environment starts
+
+ Reading input from aiida.in
+
+ Current dimensions of program PWSCF are:
+ Max number of different atomic species (ntypx) = 10
+ Max number of k-points (npk) = 40000
+ Max angular momentum in pseudopotentials (lmaxx) = 4
+ Message from routine setup:
+ using ibrav=0 with symmetry is DISCOURAGED, use correct ibrav instead
+
+ Subspace diagonalization in iterative solution of the eigenvalue problem:
+ a serial algorithm will be used
+
+
+ G-vector sticks info
+ --------------------
+ sticks: dense smooth PW G-vecs: dense smooth PW
+ Sum 825 403 135 16263 5737 1113
+
+ Using Slab Decomposition
+
+
+
+ bravais-lattice index = 0
+ lattice parameter (alat) = 6.7026 a.u.
+ unit-cell volume = 258.3983 (a.u.)^3
+ number of atoms/cell = 2
+ number of atomic types = 1
+ number of electrons = 8.00
+ number of Kohn-Sham states= 8
+ kinetic-energy cutoff = 30.0000 Ry
+ charge density cutoff = 240.0000 Ry
+ scf convergence threshold = 8.0E-10
+ mixing beta = 0.4000
+ number of iterations used = 8 plain mixing
+ energy convergence thresh.= 2.0E-04
+ force convergence thresh. = 1.0E-03
+ press convergence thresh. = 5.0E-01
+ Exchange-correlation= PBE
+ ( 1 4 3 4 0 0 0)
+ nstep = 50
+
+
+ celldm(1)= 6.702556 celldm(2)= 0.000000 celldm(3)= 0.000000
+ celldm(4)= 0.000000 celldm(5)= 0.000000 celldm(6)= 0.000000
+
+ crystal axes: (cart. coord. in units of alat)
+ a(1) = ( 0.992947 -0.118217 -0.008985 )
+ a(2) = ( 0.394095 0.919026 -0.008985 )
+ a(3) = ( 0.452385 0.261184 0.888864 )
+
+ reciprocal axes: (cart. coord. in units 2 pi/alat)
+ b(1) = ( 0.954642 -0.412931 -0.364526 )
+ b(2) = ( 0.119712 1.033210 -0.364526 )
+ b(3) = ( 0.010860 0.006270 1.117662 )
+
+
+ PseudoPot. # 1 for Si read from file:
+ ./pseudo/Si.pbe-n-rrkjus_psl.1.0.0.UPF
+ MD5 check sum: 0b0bb1205258b0d07b9f9672cf965d36
+ Pseudo is Ultrasoft + core correction, Zval = 4.0
+ Generated using "atomic" code by A. Dal Corso v.5.1
+ Using radial grid of 1141 points, 6 beta functions with:
+ l(1) = 0
+ l(2) = 0
+ l(3) = 1
+ l(4) = 1
+ l(5) = 2
+ l(6) = 2
+ Q(r) pseudized with 0 coefficients
+
+
+ atomic species valence mass pseudopotential
+ Si 4.00 28.08550 Si( 1.00)
+
+--- SYMMETRIES REMOVED ---
+
+ Cartesian axes
+
+ site n. atom positions (alat units)
+ 1 Si tau( 1) = ( 1.5182739 0.8765759 0.6513741 )
+ 2 Si tau( 2) = ( 0.9199363 0.5311255 0.4060827 )
+
+ Crystallographic axes
+
+ site n. atom positions (cryst. coord.)
+ 1 Si tau( 1) = ( 0.8500000 0.8500000 0.7500000 )
+ 2 Si tau( 2) = ( 0.5108640 0.5108640 0.4671835 )
+
+--- K-POINTS REMOVED ---
+
+--- MEMORY INFO REMOVED ---
+
+ Self-consistent Calculation
+
+ iteration # 1 ecut= 30.00 Ry beta= 0.40
+ Davidson diagonalization with overlap
+
+---- Real-time Memory Report at c_bands before calling an iterative solver
+ 90 MiB given to the printing process from OS
+ 0 MiB allocation reported by mallinfo(arena+hblkhd)
+ 39537 MiB available memory on the node where the printing process lives
+------------------
+ ethr = 1.00E-02, avg # of iterations = 4.3
+
+ Threshold (ethr) on eigenvalues was too large:
+ Diagonalizing with lowered threshold
+
+ Davidson diagonalization with overlap
+
+---- Real-time Memory Report at c_bands before calling an iterative solver
+ 97 MiB given to the printing process from OS
+ 0 MiB allocation reported by mallinfo(arena+hblkhd)
+ 39531 MiB available memory on the node where the printing process lives
+------------------
+ ethr = 5.12E-04, avg # of iterations = 2.7
+
+ total cpu time spent up to now is 1.6 secs
+
+ total energy = -22.77350117 Ry
+ estimated scf accuracy < 0.04403237 Ry
+
+ iteration # 2 ecut= 30.00 Ry beta= 0.40
+ Davidson diagonalization with overlap
+
+---- Real-time Memory Report at c_bands before calling an iterative solver
+ 100 MiB given to the printing process from OS
+ 0 MiB allocation reported by mallinfo(arena+hblkhd)
+ 39528 MiB available memory on the node where the printing process lives
+------------------
+ ethr = 5.50E-04, avg # of iterations = 1.1
+ Minimization algorithm failed to find Fermi energy: reverting to bisection
+ Possible cause: smearing is larger than the electronic band-gap.
+
+ total cpu time spent up to now is 1.7 secs
+
+ total energy = -22.77208186 Ry
+ estimated scf accuracy < 0.01103791 Ry
+
+ iteration # 3 ecut= 30.00 Ry beta= 0.40
+ Davidson diagonalization with overlap
+
+---- Real-time Memory Report at c_bands before calling an iterative solver
+ 100 MiB given to the printing process from OS
+ 0 MiB allocation reported by mallinfo(arena+hblkhd)
+ 39529 MiB available memory on the node where the printing process lives
+------------------
+ ethr = 1.38E-04, avg # of iterations = 2.0
+
+ total cpu time spent up to now is 1.9 secs
+
+ total energy = -22.77271363 Ry
+ estimated scf accuracy < 0.00039183 Ry
+
+ iteration # 4 ecut= 30.00 Ry beta= 0.40
+ Davidson diagonalization with overlap
+
+---- Real-time Memory Report at c_bands before calling an iterative solver
+ 101 MiB given to the printing process from OS
+ 0 MiB allocation reported by mallinfo(arena+hblkhd)
+ 39530 MiB available memory on the node where the printing process lives
+------------------
+ ethr = 4.90E-06, avg # of iterations = 7.0
+
+ total cpu time spent up to now is 2.2 secs
+
+ total energy = -22.77276209 Ry
+ estimated scf accuracy < 0.00001289 Ry
+
+ iteration # 5 ecut= 30.00 Ry beta= 0.40
+ Davidson diagonalization with overlap
+
+---- Real-time Memory Report at c_bands before calling an iterative solver
+ 101 MiB given to the printing process from OS
+ 0 MiB allocation reported by mallinfo(arena+hblkhd)
+ 39528 MiB available memory on the node where the printing process lives
+------------------
+ ethr = 1.61E-07, avg # of iterations = 1.8
+
+ total cpu time spent up to now is 2.4 secs
+
+ total energy = -22.77276297 Ry
+ estimated scf accuracy < 0.00000116 Ry
+
+ iteration # 6 ecut= 30.00 Ry beta= 0.40
+ Davidson diagonalization with overlap
+
+---- Real-time Memory Report at c_bands before calling an iterative solver
+ 101 MiB given to the printing process from OS
+ 0 MiB allocation reported by mallinfo(arena+hblkhd)
+ 39528 MiB available memory on the node where the printing process lives
+------------------
+ ethr = 1.45E-08, avg # of iterations = 1.9
+
+ total cpu time spent up to now is 2.6 secs
+
+ total energy = -22.77276316 Ry
+ estimated scf accuracy < 0.00000003 Ry
+
+ iteration # 7 ecut= 30.00 Ry beta= 0.40
+ Davidson diagonalization with overlap
+
+---- Real-time Memory Report at c_bands before calling an iterative solver
+ 101 MiB given to the printing process from OS
+ 0 MiB allocation reported by mallinfo(arena+hblkhd)
+ 39528 MiB available memory on the node where the printing process lives
+------------------
+ ethr = 4.34E-10, avg # of iterations = 3.0
+
+ total cpu time spent up to now is 2.8 secs
+
+ total energy = -22.77276317 Ry
+ estimated scf accuracy < 4.9E-09 Ry
+
+ iteration # 8 ecut= 30.00 Ry beta= 0.40
+ Davidson diagonalization with overlap
+
+---- Real-time Memory Report at c_bands before calling an iterative solver
+ 101 MiB given to the printing process from OS
+ 0 MiB allocation reported by mallinfo(arena+hblkhd)
+ 39528 MiB available memory on the node where the printing process lives
+------------------
+ ethr = 6.19E-11, avg # of iterations = 2.0
+
+ total cpu time spent up to now is 3.0 secs
+
+ End of self-consistent calculation
+
+--- OCCUPATIONS REMOVED ---
+
+ the Fermi energy is 6.8788 ev
+
+! total energy = -22.77276318 Ry
+ estimated scf accuracy < 3.3E-10 Ry
+ smearing contrib. (-TS) = 0.00033696 Ry
+ internal energy E=F+TS = -22.77310014 Ry
+
+ The total energy is F=E-TS. E is the sum of the following terms:
+ one-electron contribution = 6.07553484 Ry
+ hartree contribution = 0.79426191 Ry
+ xc contribution = -12.25171012 Ry
+ ewald contribution = -17.39118676 Ry
+
+ convergence has been achieved in 8 iterations
+
+ Forces acting on atoms (cartesian axes, Ry/au):
+
+ atom 1 type 1 force = -0.04559879 -0.02632647 -0.00053087
+ atom 2 type 1 force = 0.04559879 0.02632647 0.00053087
+ The non-local contrib. to forces
+ atom 1 type 1 force = -0.01555479 -0.00898056 0.00367384
+ atom 2 type 1 force = 0.01555249 0.00897923 -0.00369180
+ The ionic contribution to forces
+ atom 1 type 1 force = 0.23466020 0.13548113 0.03592609
+ atom 2 type 1 force = -0.23466020 -0.13548113 -0.03592609
+ The local contribution to forces
+ atom 1 type 1 force = -0.26650739 -0.15386811 -0.03989982
+ atom 2 type 1 force = 0.26650953 0.15386935 0.03990537
+ The core correction contribution to forces
+ atom 1 type 1 force = 0.00179887 0.00103858 -0.00023806
+ atom 2 type 1 force = -0.00179872 -0.00103849 0.00023105
+ The Hubbard contrib. to forces
+ atom 1 type 1 force = 0.00000000 0.00000000 0.00000000
+ atom 2 type 1 force = 0.00000000 0.00000000 0.00000000
+ The SCF correction term to forces
+ atom 1 type 1 force = 0.00000000 0.00000000 -0.00000000
+ atom 2 type 1 force = -0.00000000 -0.00000000 0.00000265
+
+ Total force = 0.000531 Total SCF correction = 0.000003
+
+
+ Computing stress (Cartesian axis) and pressure
+
+ total stress (Ry/bohr**3) (kbar) P= 0.13
+ -0.00000028 -0.00000387 0.00000128 -0.04 -0.57 0.19
+ -0.00000387 0.00000419 0.00000074 -0.57 0.62 0.11
+ 0.00000128 0.00000074 -0.00000131 0.19 0.11 -0.19
+
+ kinetic stress (kbar) 2335.16 98.65 35.67
+ 98.65 2221.24 20.59
+ 35.67 20.59 2276.96
+
+ local stress (kbar) 463.95 478.40 150.44
+ 478.40 -88.45 86.86
+ 150.44 86.86 337.58
+
+ nonloc. stress (kbar) 1615.79 -65.50 -31.86
+ -65.50 1691.42 -18.39
+ -31.86 -18.39 1699.71
+
+ hartree stress (kbar) 160.57 -27.01 6.89
+ -27.01 191.76 3.98
+ 6.89 3.98 99.85
+
+ exc-cor stress (kbar) 3087.01 -3.80 -1.75
+ -3.80 3091.40 -1.01
+ -1.75 -1.01 3089.32
+
+ corecor stress (kbar) -4117.18 8.25 4.15
+ 8.25 -4126.71 2.40
+ 4.15 2.40 -4128.25
+
+ ewald stress (kbar) -3545.32 -489.55 -163.34
+ -489.55 -2980.04 -94.31
+ -163.34 -94.31 -3375.36
+
+ hubbard stress (kbar) 0.00 0.00 0.00
+ 0.00 0.00 0.00
+ 0.00 0.00 0.00
+
+ DFT-D stress (kbar) 0.00 0.00 0.00
+ 0.00 0.00 0.00
+ 0.00 0.00 0.00
+
+ XDM stress (kbar) 0.00 0.00 0.00
+ 0.00 0.00 0.00
+ 0.00 0.00 0.00
+
+ dft-nl stress (kbar) 0.00 0.00 0.00
+ 0.00 0.00 0.00
+ 0.00 0.00 0.00
+
+ TS-vdW stress (kbar) 0.00 0.00 0.00
+ 0.00 0.00 0.00
+ 0.00 0.00 0.00
+
+
+ 0.00 0.00 0.00
+ 0.00 0.00 0.00
+
+
+ 0.00 0.00 0.00
+
+
+ BFGS Geometry Optimization
+ Energy error = 0.0E+00 Ry
+ Gradient error = 5.3E-04 Ry/Bohr
+ Cell gradient error = 6.2E-01 kbar
+
+ number of scf cycles = 1
+ number of bfgs steps = 0
+
+ enthalpy new = -22.7727631757 Ry
+
+ new trust radius = 0.0005308715 bohr
+ new conv_thr = 0.0000000008 Ry
+
+ new unit-cell volume = 258.41511 a.u.^3 ( 38.29317 Ang^3 )
+ density = 2.43579 g/cm^3
+
+CELL_PARAMETERS (angstrom)
+ 3.521839323 -0.419682810 -0.031761287
+ 1.397463687 3.259843727 -0.031761287
+ 1.604536131 0.926379367 3.152623961
+
+ATOMIC_POSITIONS (angstrom)
+Si 5.3848096571 3.1089213051 2.3104737830 0 0 0
+Si 3.2627077194 1.8837251800 1.4406833026 0 0 1
+
+
+
+ Writing config-only to output data dir ./out/aiida.save/
+ NEW-OLD atomic charge density approx. for the potential
+ extrapolated charge 8.00052, renormalised to 8.00000
+
+ total cpu time spent up to now is 5.4 secs
+
+ Self-consistent Calculation
+
+ iteration # 1 ecut= 30.00 Ry beta= 0.40
+ Davidson diagonalization with overlap
+
+---- Real-time Memory Report at c_bands before calling an iterative solver
+ 105 MiB given to the printing process from OS
+ 0 MiB allocation reported by mallinfo(arena+hblkhd)
+ 39524 MiB available memory on the node where the printing process lives
+------------------
+ ethr = 1.00E-06, avg # of iterations = 1.9
+
+ Threshold (ethr) on eigenvalues was too large:
+ Diagonalizing with lowered threshold
+
+ Davidson diagonalization with overlap
+
+---- Real-time Memory Report at c_bands before calling an iterative solver
+ 105 MiB given to the printing process from OS
+ 0 MiB allocation reported by mallinfo(arena+hblkhd)
+ 39525 MiB available memory on the node where the printing process lives
+------------------
+ ethr = 1.31E-10, avg # of iterations = 4.0
+
+ total cpu time spent up to now is 5.8 secs
+
+ total energy = -22.77276374 Ry
+ estimated scf accuracy < 0.00000001 Ry
+
+ iteration # 2 ecut= 30.00 Ry beta= 0.40
+ Davidson diagonalization with overlap
+
+---- Real-time Memory Report at c_bands before calling an iterative solver
+ 105 MiB given to the printing process from OS
+ 0 MiB allocation reported by mallinfo(arena+hblkhd)
+ 39525 MiB available memory on the node where the printing process lives
+------------------
+ ethr = 1.40E-10, avg # of iterations = 2.0
+
+ total cpu time spent up to now is 6.0 secs
+
+ total energy = -22.77276374 Ry
+ estimated scf accuracy < 2.3E-09 Ry
+
+ iteration # 3 ecut= 30.00 Ry beta= 0.40
+ Davidson diagonalization with overlap
+
+---- Real-time Memory Report at c_bands before calling an iterative solver
+ 105 MiB given to the printing process from OS
+ 0 MiB allocation reported by mallinfo(arena+hblkhd)
+ 39525 MiB available memory on the node where the printing process lives
+------------------
+ ethr = 2.86E-11, avg # of iterations = 1.0
+
+ total cpu time spent up to now is 6.1 secs
+
+ End of self-consistent calculation
+
+--- OCCUPATIONS REMOVED ---
+
+ the Fermi energy is 6.8778 ev
+
+! total energy = -22.77276374 Ry
+ estimated scf accuracy < 4.5E-10 Ry
+ smearing contrib. (-TS) = 0.00033605 Ry
+ internal energy E=F+TS = -22.77309979 Ry
+
+ The total energy is F=E-TS. E is the sum of the following terms:
+ one-electron contribution = 6.07527042 Ry
+ hartree contribution = 0.79421342 Ry
+ xc contribution = -12.25158493 Ry
+ ewald contribution = -17.39099870 Ry
+
+ convergence has been achieved in 3 iterations
+
+ Forces acting on atoms (cartesian axes, Ry/au):
+
+ atom 1 type 1 force = -0.04558167 -0.02631659 -0.00048474
+ atom 2 type 1 force = 0.04558167 0.02631659 0.00048474
+ The non-local contrib. to forces
+ atom 1 type 1 force = -0.01552970 -0.00896607 0.00363612
+ atom 2 type 1 force = 0.01552762 0.00896487 -0.00365305
+ The ionic contribution to forces
+ atom 1 type 1 force = 0.23480609 0.13556536 0.03572962
+ atom 2 type 1 force = -0.23480609 -0.13556536 -0.03572962
+ The local contribution to forces
+ atom 1 type 1 force = -0.26665632 -0.15395410 -0.03962400
+ atom 2 type 1 force = 0.26665765 0.15395487 0.03963107
+ The core correction contribution to forces
+ atom 1 type 1 force = 0.00179591 0.00103687 -0.00023371
+ atom 2 type 1 force = -0.00179563 -0.00103671 0.00022645
+ The Hubbard contrib. to forces
+ atom 1 type 1 force = 0.00000000 0.00000000 0.00000000
+ atom 2 type 1 force = 0.00000000 0.00000000 0.00000000
+ The SCF correction term to forces
+ atom 1 type 1 force = 0.00000000 0.00000000 -0.00000000
+ atom 2 type 1 force = -0.00000000 -0.00000000 0.00000020
+
+ Total force = 0.000485 Total SCF correction = 0.000000
+
+
+ Computing stress (Cartesian axis) and pressure
+
+ total stress (Ry/bohr**3) (kbar) P= 0.02
+ -0.00000043 -0.00000267 0.00000169 -0.06 -0.39 0.25
+ -0.00000267 0.00000265 0.00000097 -0.39 0.39 0.14
+ 0.00000169 0.00000097 -0.00000189 0.25 0.14 -0.28
+
+ kinetic stress (kbar) 2334.91 98.75 35.66
+ 98.75 2220.88 20.59
+ 35.66 20.59 2276.85
+
+ local stress (kbar) 463.47 478.16 150.03
+ 478.16 -88.66 86.62
+ 150.03 86.62 338.16
+
+ nonloc. stress (kbar) 1615.68 -65.46 -31.82
+ -65.46 1691.27 -18.37
+ -31.82 -18.37 1699.50
+
+ hartree stress (kbar) 160.59 -27.00 6.94
+ -27.00 191.77 4.01
+ 6.94 4.01 99.76
+
+ exc-cor stress (kbar) 3086.82 -3.80 -1.75
+ -3.80 3091.21 -1.01
+ -1.75 -1.01 3089.13
+
+ corecor stress (kbar) -4116.91 8.24 4.15
+ 8.24 -4126.43 2.39
+ 4.15 2.39 -4127.96
+
+ ewald stress (kbar) -3544.62 -489.28 -162.97
+ -489.28 -2979.65 -94.09
+ -162.97 -94.09 -3375.71
+
+ hubbard stress (kbar) 0.00 0.00 0.00
+ 0.00 0.00 0.00
+ 0.00 0.00 0.00
+
+ DFT-D stress (kbar) 0.00 0.00 0.00
+ 0.00 0.00 0.00
+ 0.00 0.00 0.00
+
+ XDM stress (kbar) 0.00 0.00 0.00
+ 0.00 0.00 0.00
+ 0.00 0.00 0.00
+
+ dft-nl stress (kbar) 0.00 0.00 0.00
+ 0.00 0.00 0.00
+ 0.00 0.00 0.00
+
+ TS-vdW stress (kbar) 0.00 0.00 0.00
+ 0.00 0.00 0.00
+ 0.00 0.00 0.00
+
+
+ 0.00 0.00 0.00
+ 0.00 0.00 0.00
+
+
+ 0.00 0.00 0.00
+
+ Energy error = 5.7E-07 Ry
+ Gradient error = 4.8E-04 Ry/Bohr
+ Cell gradient error = 3.9E-01 kbar
+
+ bfgs converged in 2 scf cycles and 1 bfgs steps
+ (criteria: energy < 2.0E-04 Ry, force < 1.0E-03Ry/Bohr, cell < 5.0E-01kbar)
+
+ End of BFGS Geometry Optimization
+
+ Final enthalpy = -22.7727637421 Ry
+
+ File ./out/aiida.bfgs deleted, as requested
+Begin final coordinates
+ new unit-cell volume = 258.41511 a.u.^3 ( 38.29317 Ang^3 )
+ density = 2.43579 g/cm^3
+
+CELL_PARAMETERS (angstrom)
+ 3.521839323 -0.419682810 -0.031761287
+ 1.397463687 3.259843727 -0.031761287
+ 1.604536131 0.926379367 3.152623961
+
+ATOMIC_POSITIONS (angstrom)
+Si 5.3848096571 3.1089213051 2.3104737830 0 0 0
+Si 3.2627077194 1.8837251800 1.4406833026 0 0 1
+End final coordinates
+
+ Writing config-only to output data dir ./out/aiida.save/
+
+--- FINAL SCF REMOVED ---
+
+--- TIMINGS REMOVED ---
+
+=------------------------------------------------------------------------------=
+ JOB DONE.
+=------------------------------------------------------------------------------=
diff --git a/tests/parsers/fixtures/pw/fixed_coords_vcrelax/data-file.xml b/tests/parsers/fixtures/pw/fixed_coords_vcrelax/data-file.xml
new file mode 100644
index 000000000..f0a4e9d22
--- /dev/null
+++ b/tests/parsers/fixtures/pw/fixed_coords_vcrelax/data-file.xml
@@ -0,0 +1,904 @@
+
+
+
+
+ QEXSD_21.11.01
+ XML file generated by PWSCF
+ This run was terminated on: 18:36:52 9 Mar 2022
+
+
+
+ 1
+ 1
+ 1
+ 1
+ 1
+ 1
+
+
+
+
+ vc-relax
+ from_scratch
+ aiida
+ ./pseudo/
+ ./out/
+ true
+ true
+ true
+ low
+ 41040
+ 50
+ 1.000000000000000e-4
+ 5.000000000000000e-4
+ 5.000000000000000e-1
+ high
+ 100000
+
+
+
+ 2.808550000000000e1
+ Si.pbe-n-rrkjus_psl.1.0.0.UPF
+
+
+
+
+ 1.017631552162042e1 5.875298505758790e0 4.365871312102837e0
+ 6.165924526175590e0 3.559898184930171e0 2.721791989194361e0
+
+
+ 6.655283373201728e0 -7.923570102055257e-1 -6.022050315738444e-2
+ 2.641440386888126e0 6.159822975629808e0 -6.022050315738444e-2
+ 3.032133767555831e0 1.750603246914593e0 5.957661556929542e0
+ |
+
+
+ PBE
+
+
+ false
+ false
+ false
+
+
+ 8
+ mv
+ 0.000000000000000e0
+ smearing
+
+
+ false
+ 1.500000000000000e1
+ 1.200000000000000e2
+
+
+ davidson
+ plain
+ 4.000000000000000e-1
+ 4.000000000000000e-10
+ 8
+ 80
+ false
+ false
+ false
+ false
+ 0.000000000000000e0
+ false
+ 20
+ 20
+ 4
+ 16
+ false
+
+
+ Monkhorst-Pack
+
+
+ bfgs
+ 1.000000000000000e2
+ false
+ false
+
+ 1
+ 1.000000000000000e-4
+ 8.000000000000000e-1
+ 5.000000000000000e-1
+ 1.000000000000000e-2
+ 5.000000000000000e-1
+
+
+
+ bfgs
+ 0.000000000000000e0
+ 5.617100000000001e1
+ all
+
+
+ false
+ false
+ false
+ false
+ false
+ false
+
+
+ 0 0 0
+ 0 0 1
+
+
+
+
+ true
+ 8
+ 3.257492558831575e-10
+
+
+
+ 1.017631552162042e1 5.875298505758790e0 4.365871312102837e0
+ 6.165924526175590e0 3.559898184930171e0 2.721791989194361e0
+
+
+ 6.655283373201728e0 -7.923570102055257e-1 -6.022050315738444e-2
+ 2.641440386888126e0 6.159822975629808e0 -6.022050315738444e-2
+ 3.032133767555831e0 1.750603246914593e0 5.957661556929542e0
+ |
+
+
+ -1.138638158785344e1
+ 5.167083876950953e-1
+ 3.971309540094396e-1
+ -3.315324234167071e0
+ -6.125855059482870e0
+ -8.695593380543134e0
+ 1.684803451580483e-4
+
+
+ 0.000000000000000e0 0.000000000000000e0 0.000000000000000e0
+ 0.000000000000000e0 0.000000000000000e0 2.654357560035736e-4
+
+
+
+
+ true
+ 3
+ 4.505314010327503e-10
+
+
+
+ 1.017581548523406e1 5.875009809616521e0 4.366162668036491e0
+ 6.165624014322024e0 3.559724684330612e0 2.722496874236814e0
+
+
+ 6.655311776305080e0 -7.930855699488393e-1 -6.002013353348296e-2
+ 2.640823637193924e0 6.160211853310514e0 -6.002013353348518e-2
+ 3.032133845176982e0 1.750603291729185e0 5.957595860360236e0
+ |
+
+
+ -1.138638187107191e1
+ 5.165986100379558e-1
+ 3.971067113784144e-1
+ -3.315246632666682e0
+ -6.125792467185182e0
+ -8.695499349167125e0
+ 1.680233081585965e-4
+
+
+ 0.000000000000000e0 0.000000000000000e0 0.000000000000000e0
+ 0.000000000000000e0 0.000000000000000e0 2.423722381765994e-4
+
+
+
+ 0
+
+
+ 1.179566700000000e1
+ 1.254005694389343e1
+
+
+ 2.114850000000001e0
+ 2.168199062347412e0
+
+
+ 1.610409000000000e0
+ 1.631568193435669e0
+
+
+ 4.861030000000000e-1
+ 4.866418838500977e-1
+
+
+ 8.267379999999989e-1
+ 8.288862705230713e-1
+
+
+ 5.496600000001450e-2
+ 7.874608039855957e-2
+
+
+ 3.722060000000003e-1
+ 3.723609447479248e-1
+
+
+ 3.768480000000025e-1
+ 3.870387077331543e-1
+
+
+ 4.659849999999981e-1
+ 4.762563705444336e-1
+
+
+ 6.246999999998337e-3
+ 6.267547607421875e-3
+
+
+ 5.765000000002019e-3
+ 6.022214889526367e-3
+
+
+ 1.539000000006396e-3
+ 1.610040664672852e-3
+
+
+ 6.538260000000040e-1
+ 9.038984775543213e-1
+
+
+ 7.264800000000093e-2
+ 7.287192344665527e-2
+
+
+ 2.421750000000156e-1
+ 2.463529109954834e-1
+
+
+ 2.402770000000363e-1
+ 2.447347640991211e-1
+
+
+ 4.282000000001673e-3
+ 4.297971725463867e-3
+
+
+ 4.222000000002168e-3
+ 4.242181777954102e-3
+
+
+ 4.256100000000629e-2
+ 4.268217086791992e-2
+
+
+ 4.249300000000567e-2
+ 4.261136054992676e-2
+
+
+ 4.240899999999748e-2
+ 4.252433776855469e-2
+
+
+ 3.708199999999806e-2
+ 3.718543052673340e-2
+
+
+ 1.141706000000017e0
+ 1.163509130477905e0
+
+
+ 1.138801999999968e0
+ 1.160670995712280e0
+
+
+ 1.124264000000037e0
+ 1.145402193069458e0
+
+
+ 9.865760000000527e-1
+ 1.005411386489868e0
+
+
+ 8.513679999998605e-1
+ 8.679435253143311e-1
+
+
+ 7.631700000001018e-2
+ 7.771325111389160e-2
+
+
+ 1.031540000000053e-1
+ 1.051900386810303e-1
+
+
+ 5.516700000001862e-2
+ 5.629968643188477e-2
+
+
+ 3.093999999999042e-3
+ 3.105640411376953e-3
+
+
+ 6.280699999996919e-2
+ 6.387877464294434e-2
+
+
+ 5.284899999998061e-2
+ 5.387639999389648e-2
+
+
+ 1.262999999998016e-3
+ 1.262903213500977e-3
+
+
+ 1.219320000000153e-1
+ 1.249978542327881e-1
+
+
+ 7.889999999974862e-4
+ 7.884502410888672e-4
+
+
+ 3.891805000000002e0
+ 4.438810825347900e0
+
+
+ 1.917359000000001e0
+ 1.955388545989990e0
+
+
+ 1.477544000000000e0
+ 1.507004499435425e0
+
+
+ 1.786999999999317e-2
+ 1.811814308166504e-2
+
+
+ 3.018000000000320e-2
+ 3.090786933898926e-2
+
+
+ 1.902500000000629e-2
+ 1.950478553771973e-2
+
+
+ 6.036100000001987e-2
+ 6.164073944091797e-2
+
+
+ 1.236660000000001e-1
+ 1.266145706176758e-1
+
+
+ 3.921500000001288e-2
+ 4.008221626281738e-2
+
+
+ 1.061161000000002e0
+ 1.335190773010254e0
+
+
+ 4.416000000000864e-3
+ 4.416942596435547e-3
+
+
+ 3.139409999999980e-1
+ 3.187634944915771e-1
+
+
+ 4.724000000013717e-3
+ 4.851579666137695e-3
+
+
+ 1.009369999999947e-1
+ 1.023054122924805e-1
+
+
+ 1.899299999999116e-2
+ 1.927065849304199e-2
+
+
+ 2.236999999999156e-3
+ 2.283573150634766e-3
+
+
+ 7.310720000000011e-1
+ 9.886841773986816e-1
+
+
+ 2.539999999997988e-3
+ 2.542972564697266e-3
+
+
+ 1.393089999999955e-1
+ 3.700768947601318e-1
+
+
+ 4.505750000000006e-1
+ 4.517316818237305e-1
+
+
+ 9.200999999997350e-3
+ 2.070403099060059e-2
+
+
+ 7.534999999998959e-3
+ 1.613426208496094e-2
+
+
+ 4.977116000000001e0
+ 5.109489917755127e0
+
+
+ 1.251968000000002e0
+ 1.291384220123291e0
+
+
+ 1.401649999999979e-1
+ 1.767127513885498e-1
+
+
+ 4.372000000000043e-3
+ 4.493236541748047e-3
+
+
+ 5.791549999999983e-1
+ 5.803728103637695e-1
+
+
+ 5.239860000000025e-1
+ 5.255300998687744e-1
+
+
+ 3.716659000000000e0
+ 3.809593200683594e0
+
+
+ 2.180000000056026e-4
+ 2.191066741943359e-4
+
+
+ 7.097000000005238e-3
+ 7.108211517333984e-3
+
+
+ 9.908999999996837e-3
+ 9.910345077514648e-3
+
+
+ 3.673000000002702e-3
+ 3.680229187011719e-3
+
+
+ 7.055889999999998e-1
+ 7.064719200134277e-1
+
+
+
+
diff --git a/tests/parsers/test_pw.py b/tests/parsers/test_pw.py
index e97d2a58d..13d64672e 100644
--- a/tests/parsers/test_pw.py
+++ b/tests/parsers/test_pw.py
@@ -402,6 +402,27 @@ def test_pw_npools_too_high_not_error(fixture_localhost, generate_calc_job_node,
assert 'output_parameters' in results
+@pytest.mark.parametrize('calculation', ('relax', 'vc-relax'))
+def test_fixed_coords(fixture_localhost, generate_calc_job_node, generate_parser, generate_inputs, calculation):
+ """Test the parsing of a successful calculation that has specified a ``fixed_coords`` setting.
+
+ The output files of this test were generated for a calculation of a FCC Si supercell where
+ """
+ name = f"fixed_coords_{calculation.replace('-', '')}"
+ entry_point_calc_job = 'quantumespresso.pw'
+ entry_point_parser = 'quantumespresso.pw'
+
+ inputs = generate_inputs(
+ calculation_type=calculation, settings={'fixed_coords': [[True, True, True], [True, True, False]]}
+ )
+ node = generate_calc_job_node(entry_point_calc_job, fixture_localhost, name, inputs)
+ parser = generate_parser(entry_point_parser)
+ _, calcfunction = parser.parse_from_node(node, store_provenance=False)
+
+ assert calcfunction.is_finished, calcfunction.exception
+ assert calcfunction.is_finished_ok, calcfunction.exit_message
+
+
def test_tot_magnetization(
fixture_localhost, generate_calc_job_node, generate_parser, generate_inputs, data_regression
):