~pablolopez/siesta/md_formats

« back to all changes in this revision

Viewing changes to Src/Makefile

  • Committer: Alberto Garcia
  • Author(s): Ramon Cuadrado
  • Date: 2018-04-30 20:59:44 UTC
  • mfrom: (604.1.109 merge-OSSO)
  • Revision ID: albertog@icmab.es-20180430205944-lkq3re94zrbb72lu
Merge the 'offsite spin-orbit' implementation by Ramon Cuadrado.

Reference:

R. Cuadrado and J. I. Cerda,
"Fully relativistic pseudopotential formalism under an atomic orbital
basis: spin–orbit splittings and magnetic anisotropies",
J. Phys.: Condens. Matter 24, 086005, (2012)
(DOI:10.1088/0953-8984/24/8/086005)

The new 'offsite' implementation is now the default when

   Spin  { SO, SOC, S+O }
   SpinOrbit T    (deprecated)

is specified in the input fdf file.  To request the 'onsite' approximation,
use

   Spin { SO+onsite, SOC+onsite, S+O+onsite}
   
In this 'offsite' implementation the introduction of a fully
relativistic Hamiltonian is done by using fully non-local operators
for the pseudopotentials. In this way it is possible to avoid the
'onsite' approximation needed to reduce the computational effort
required when explicitly computing the LS term.

The construction of a fully relativistic Hamiltonian involves the use
of a full set of lj KB projectors. These are constructed by new code
in 'atom', and processed in the new routine 'nlefsm_SO_off', which has
roughly the same structure as 'nlefsm', but constructs at the same
time the 'ion' and 'SO' pieces from the relativistic projectors.

This routine calls 'calc_Vj_offsiteSO', where VSO and Vion and the
corresponding forces are computed using the Clebsch–Gordan
coefficients needed to change from the basis |l,m,sigma> to |j,mj>.

The conventions for structure and signs in H and the DM are the same
as in the existing 'onsite' implementation, so there are no changes in
the diagonalization routines, or in the analysis routines and tools.

Eventually, the 'offsite' qualifier might be removed, as this is a
full spin-orbit implementation which involves a similar computational
effort using less drastic approximations.

Note that this merge focuses on the core electronic-structure
functionality of full spin-orbit coupling, and does not provide any
spin-orbit enhancements to the analysis tools.

Show diffs side-by-side

added added

removed removed

Lines of Context:
635
635
compute_dm.o: normalize_dm.o ordern.o parallel.o precision.o siesta_geom.o
636
636
compute_dm.o: siesta_options.o sparse_matrices.o sys.o units.o
637
637
compute_ebs_shift.o: m_mpi_utils.o parallel.o precision.o
638
 
compute_energies.o: atomlist.o class_SpData1D.o class_SpData2D.o dhscf.o
639
 
compute_energies.o: files.o m_dipol.o m_energies.o m_mpi_utils.o m_ntm.o
640
 
compute_energies.o: m_rhog.o m_spin.o precision.o siesta_geom.o
641
 
compute_energies.o: siesta_options.o sparse_matrices.o
 
638
compute_energies.o: atomlist.o class_SpData1D.o class_SpData2D.o
 
639
compute_energies.o: class_SpData2D.o dhscf.o files.o m_dipol.o m_energies.o
 
640
compute_energies.o: m_mpi_utils.o m_ntm.o m_rhog.o m_spin.o parallel.o
 
641
compute_energies.o: precision.o siesta_geom.o siesta_options.o
 
642
compute_energies.o: sparse_matrices.o
642
643
compute_max_diff.o: m_mpi_utils.o precision.o
643
644
compute_norm.o: m_mpi_utils.o m_spin.o precision.o sparse_matrices.o
644
645
compute_pw_matrix.o: alloc.o m_planewavematrix.o m_planewavematrixvar.o
725
726
fft.o: alloc.o fft1d.o m_timer.o mesh.o parallel.o parallelsubs.o precision.o
726
727
fft.o: sys.o
727
728
fft1d.o: parallel.o precision.o sys.o
728
 
final_H_f_stress.o: alloc.o atomlist.o class_SpData2D.o compute_max_diff.o
729
 
final_H_f_stress.o: dnaefs.o files.o grdsam.o kinefsm.o ldau.o ldau_specs.o
730
 
final_H_f_stress.o: m_dipol.o m_energies.o m_forces.o m_gamma.o m_hsx.o
731
 
final_H_f_stress.o: m_mpi_utils.o m_ncdf_siesta.o m_ntm.o m_spin.o m_steps.o
732
 
final_H_f_stress.o: m_stress.o m_ts_global_vars.o m_ts_io.o m_ts_kpoints.o
733
 
final_H_f_stress.o: m_ts_options.o metaforce.o molecularmechanics.o naefs.o
734
 
final_H_f_stress.o: nlefsm.o overfsm.o parallel.o siesta_geom.o
735
 
final_H_f_stress.o: siesta_options.o sparse_matrices.o spinorbit.o sys.o
736
 
final_H_f_stress.o: units.o
 
729
final_H_f_stress.o: alloc.o atomlist.o class_SpData2D.o class_SpData2D.o
 
730
final_H_f_stress.o: compute_max_diff.o dnaefs.o files.o grdsam.o kinefsm.o
 
731
final_H_f_stress.o: ldau.o ldau_specs.o m_dipol.o m_energies.o m_forces.o
 
732
final_H_f_stress.o: m_gamma.o m_hsx.o m_mpi_utils.o m_ncdf_siesta.o m_ntm.o
 
733
final_H_f_stress.o: m_spin.o m_steps.o m_stress.o m_ts_global_vars.o m_ts_io.o
 
734
final_H_f_stress.o: m_ts_kpoints.o m_ts_options.o metaforce.o
 
735
final_H_f_stress.o: molecularmechanics.o naefs.o nlefsm.o overfsm.o parallel.o
 
736
final_H_f_stress.o: siesta_geom.o siesta_options.o sparse_matrices.o
 
737
final_H_f_stress.o: spinorbit.o sys.o units.o
737
738
find_kgrid.o: alloc.o minvec.o parallel.o precision.o units.o
738
739
fire_optim.o: alloc.o m_fire.o m_mpi_utils.o parallel.o precision.o
739
740
fire_optim.o: siesta_options.o units.o
932
933
m_sparsity_handling.o: class_SpData2D.o class_Sparsity.o geom_helper.o
933
934
m_sparsity_handling.o: intrinsic_missing.o m_interpolate.o m_region.o
934
935
m_sparsity_handling.o: precision.o
935
 
m_spin.o: alloc.o parallel.o precision.o sys.o units.o
 
936
m_spin.o: alloc.o files.o m_cite.o parallel.o precision.o sys.o units.o
936
937
m_stress.o: precision.o
937
938
m_supercell.o: atom_graph.o class_OrbitalDistribution.o class_SpData2D.o
938
939
m_supercell.o: intrinsic_missing.o parallel.o parallelsubs.o precision.o
1135
1136
new_matel.o: alloc.o errorf.o interpolation.o matel_registry.o parallel.o
1136
1137
new_matel.o: precision.o radfft.o spher_harm.o sys.o
1137
1138
nlefsm.o: alloc.o atm_types.o atmfuncs.o atomlist.o chemical.o mneighb.o
1138
 
nlefsm.o: new_matel.o parallel.o parallelsubs.o precision.o
 
1139
nlefsm.o: new_matel.o parallel.o parallelsubs.o precision.o sparse_matrices.o
1139
1140
normalize_dm.o: atomlist.o m_mpi_utils.o m_spin.o parallel.o precision.o
1140
1141
normalize_dm.o: siesta_options.o sparse_matrices.o sys.o
1141
1142
obc.o: alloc.o precision.o
1227
1228
setatomnodes.o: alloc.o parallel.o precision.o spatial.o sys.o
1228
1229
setspatial.o: alloc.o parallel.o precision.o spatial.o
1229
1230
setup_H0.o: alloc.o atmfuncs.o atomlist.o class_SpData1D.o class_SpData2D.o
1230
 
setup_H0.o: dhscf.o dnaefs.o kinefsm.o m_energies.o m_mpi_utils.o m_ntm.o
1231
 
setup_H0.o: m_spin.o metaforce.o molecularmechanics.o naefs.o nlefsm.o
1232
 
setup_H0.o: siesta_geom.o siesta_options.o sparse_matrices.o spinorbit.o
 
1231
setup_H0.o: class_SpData2D.o dhscf.o dnaefs.o kinefsm.o m_energies.o
 
1232
setup_H0.o: m_mpi_utils.o m_ntm.o m_spin.o metaforce.o molecularmechanics.o
 
1233
setup_H0.o: naefs.o nlefsm.o siesta_geom.o siesta_options.o sparse_matrices.o
 
1234
setup_H0.o: spinorbit.o
1233
1235
setup_hamiltonian.o: alloc.o atmfuncs.o atomlist.o class_SpData1D.o
1234
 
setup_hamiltonian.o: class_SpData2D.o dhscf.o files.o ldau.o ldau_specs.o
1235
 
setup_hamiltonian.o: m_dipol.o m_energies.o m_gamma.o m_hsx.o m_mpi_utils.o
1236
 
setup_hamiltonian.o: m_ntm.o m_partial_charges.o m_rhog.o m_spin.o m_steps.o
1237
 
setup_hamiltonian.o: m_stress.o metaforce.o molecularmechanics.o parallel.o
1238
 
setup_hamiltonian.o: siesta_geom.o siesta_options.o sparse_matrices.o sys.o
 
1236
setup_hamiltonian.o: class_SpData2D.o class_SpData2D.o dhscf.o files.o ldau.o
 
1237
setup_hamiltonian.o: ldau_specs.o m_dipol.o m_energies.o m_gamma.o m_hsx.o
 
1238
setup_hamiltonian.o: m_mpi_utils.o m_ntm.o m_partial_charges.o m_rhog.o
 
1239
setup_hamiltonian.o: m_spin.o m_steps.o m_stress.o metaforce.o
 
1240
setup_hamiltonian.o: molecularmechanics.o parallel.o siesta_geom.o
 
1241
setup_hamiltonian.o: siesta_options.o sparse_matrices.o sys.o
1239
1242
setup_ordern_indexes.o: alloc.o domain_decom.o parallel.o spatial.o
1240
1243
shaper.o: atmfuncs.o mneighb.o precision.o
1241
1244
show_distribution.o: atomlist.o parallel.o parallelsubs.o siesta_geom.o sys.o
1305
1308
siesta_tddft.o: wavefunctions.o
1306
1309
sparse_matrices.o: alloc.o class_Fstack_Pair_Geometry_SpData2D.o
1307
1310
sparse_matrices.o: class_OrbitalDistribution.o class_SpData1D.o
1308
 
sparse_matrices.o: class_SpData2D.o class_Sparsity.o precision.o
 
1311
sparse_matrices.o: class_SpData2D.o class_SpData2D.o class_Sparsity.o
 
1312
sparse_matrices.o: precision.o
1309
1313
spatial.o: precision.o
1310
1314
spher_harm.o: alloc.o precision.o sys.o
1311
1315
spinorbit.o: atm_types.o atmfuncs.o atmparams.o basis_types.o m_mpi_utils.o
1312
 
spinorbit.o: parallel.o parallelsubs.o precision.o pseudopotential.o sys.o
 
1316
spinorbit.o: parallel.o parallelsubs.o precision.o pseudopotential.o
1313
1317
state_analysis.o: atomlist.o born_charge.o flook_siesta.o m_energies.o
1314
1318
state_analysis.o: m_fixed.o m_forces.o m_ntm.o m_spin.o m_stress.o
1315
1319
state_analysis.o: m_wallclock.o parallel.o remove_intramol_pressure.o
1316
1320
state_analysis.o: siesta_cml.o siesta_geom.o siesta_options.o sparse_matrices.o
1317
1321
state_analysis.o: units.o write_subs.o zmatrix.o
1318
1322
state_init.o: alloc.o atomlist.o class_Data2D.o class_SpData1D.o
1319
 
state_init.o: class_SpData2D.o class_Sparsity.o create_Sparsity_SC.o
1320
 
state_init.o: domain_decom.o files.o hsparse.o iodm_netcdf.o iodmhs_netcdf.o
1321
 
state_init.o: iotdxv.o ioxv.o kpoint_grid.o ldau_specs.o m_chess.o m_energies.o
1322
 
state_init.o: m_eo.o m_gamma.o m_mixing.o m_mixing_scf.o m_mpi_utils.o
1323
 
state_init.o: m_new_dm.o m_os.o m_pivot_methods.o m_rmaxh.o m_sparse.o
1324
 
state_init.o: m_sparsity_handling.o m_spin.o m_steps.o m_supercell.o
1325
 
state_init.o: m_test_io.o m_ts_charge.o m_ts_electype.o m_ts_global_vars.o
1326
 
state_init.o: m_ts_io.o m_ts_kpoints.o m_ts_options.o m_ts_sparse.o
1327
 
state_init.o: m_ts_tri_init.o normalize_dm.o overlap.o parallel.o
 
1323
state_init.o: class_SpData2D.o class_SpData2D.o class_Sparsity.o
 
1324
state_init.o: create_Sparsity_SC.o domain_decom.o files.o hsparse.o
 
1325
state_init.o: iodm_netcdf.o iodmhs_netcdf.o iotdxv.o ioxv.o kpoint_grid.o
 
1326
state_init.o: ldau_specs.o m_chess.o m_energies.o m_eo.o m_gamma.o m_mixing.o
 
1327
state_init.o: m_mixing_scf.o m_mpi_utils.o m_new_dm.o m_os.o m_pivot_methods.o
 
1328
state_init.o: m_rmaxh.o m_sparse.o m_sparsity_handling.o m_spin.o m_steps.o
 
1329
state_init.o: m_supercell.o m_test_io.o m_ts_charge.o m_ts_electype.o
 
1330
state_init.o: m_ts_global_vars.o m_ts_io.o m_ts_kpoints.o m_ts_options.o
 
1331
state_init.o: m_ts_sparse.o m_ts_tri_init.o normalize_dm.o overlap.o parallel.o
1328
1332
state_init.o: proximity_check.o siesta_cml.o siesta_dicts.o siesta_geom.o
1329
1333
state_init.o: siesta_options.o sparse_matrices.o sys.o units.o write_subs.o
1330
1334
state_init.o: zmatrix.o