From 1feaa0591fb49fea10605eb3edd1adb0443a398d Mon Sep 17 00:00:00 2001 From: Sylvain Tricot Date: Fri, 25 Feb 2022 17:27:15 +0100 Subject: [PATCH] New file hierarchy. This allows to build python bindings with a new Makefile --- New_libraries/Makefile | 243 -- src/Makefile | 319 ++ .../DFM_library/ACCURACY_LIBRARY/accuracy.f90 | 0 .../calc_asymptotic.f90 | 0 .../gamma_asymptotic.f90 | 0 .../gr_asymptotic.f90 | 0 .../sq_asymptotic.f90 | 0 .../CALCULATORS_LIBRARY/calculators_1.f90 | 0 .../CALCULATORS_LIBRARY/calculators_2.f90 | 0 .../CALCULATORS_LIBRARY/calculators_3.f90 | 0 .../CALCULATORS_LIBRARY/calculators_4.f90 | 0 .../CALCULATORS_LIBRARY/calculators_5.f90 | 0 .../CALCULATORS_LIBRARY/calculators_6.f90 | 0 .../CALCULATORS_LIBRARY/calculators_7.f90 | 0 .../CALCULATORS_LIBRARY/calculators_8.f90 | 0 .../CALCULATORS_LIBRARY/calculators_9.f90 | 0 .../CALCULATORS_LIBRARY/calculators_p.f90 | 0 .../CALCULATORS_LIBRARY/call_calc_1.f90 | 0 .../CALCULATORS_LIBRARY/call_calc_2.f90 | 0 .../CALCULATORS_LIBRARY/call_calc_3.f90 | 0 .../CALCULATORS_LIBRARY/call_calc_4.f90 | 0 .../CALCULATORS_LIBRARY/call_calc_5.f90 | 0 .../CALCULATORS_LIBRARY/call_calc_6.f90 | 0 .../CALCULATORS_LIBRARY/call_calc_7.f90 | 0 .../CALCULATORS_LIBRARY/call_calc_8.f90 | 0 .../CALCULATORS_LIBRARY/call_calc_9.f90 | 0 .../CALCULATORS_LIBRARY/call_calc_p.f90 | 0 .../DFM_library/CONFINEMENT_LIBRARY/Note.txt | 0 .../CONFINEMENT_LIBRARY/confinement_ff.f90 | 0 .../CONFINEMENT_LIBRARY/confinement_wf.f90 | 0 .../CONFINEMENT_LIBRARY/coulomb.f90 | 0 .../DAMPING_LIBRARY/calc_damping.f90 | 0 .../DAMPING_LIBRARY/classical_fluid.f90 | 0 .../DAMPING_LIBRARY/decay_rate.f90 | 0 .../DAMPING_LIBRARY/diffusion_coefficient.f90 | 0 .../diffusion_coefficient_2.f90 | 0 .../DAMPING_LIBRARY/electron_phonon_int.f90 | 0 .../DAMPING_LIBRARY/external_damping.f90 | 0 .../DFM_library/DAMPING_LIBRARY/lifetime.f90 | 0 .../DAMPING_LIBRARY/mean_free_path.f90 | 0 .../DAMPING_LIBRARY/packing_fraction.f90 | 0 .../DAMPING_LIBRARY/plasmon_damping.f90 | 0 .../relaxation_time_dynamic.f90 | 0 .../relaxation_time_static.f90 | 0 .../DAMPING_LIBRARY/scattering_length.f90 | 0 .../DFM_library/DAMPING_LIBRARY/viscosity.f90 | 0 .../dfuncl_magn_dynamic.f90 | 0 .../dfuncl_stan_dynamic.f90 | 0 .../dfuncl_stan_dynamic.f90~ | 0 .../dfuncl_stan_dynamic_2.f90 | 0 .../dfuncl_static.f90 | 0 .../dfunct_dynamic.f90 | 0 .../DIMENSIONS_LIBRARY/dimensions.f90 | 0 .../ENERGIES_LIBRARY/PhysRevB.11.113.pdf | Bin .../ENERGIES_LIBRARY/correlation_energies.f90 | 0 .../DFM_library/ENERGIES_LIBRARY/delta_t.f90 | 0 .../ENERGIES_LIBRARY/exchange_energies.f90 | 0 .../ENERGIES_LIBRARY/kinetic_energies.f90 | 0 .../ENERGIES_LIBRARY/xc_energies.f90 | 0 .../ERROR_HANDLING_LIBRARY/error_caltech.f90 | 0 .../INPUT_OUTPUT_LIBRARY/change_filenames.f90 | 0 .../INPUT_OUTPUT_LIBRARY/close_files.f90 | 0 .../INPUT_OUTPUT_LIBRARY/diel_func.txt | 0 .../INPUT_OUTPUT_LIBRARY/filenames.f90 | 0 .../INPUT_OUTPUT_LIBRARY/input_values.f90 | 0 .../INPUT_OUTPUT_LIBRARY/missing.txt | 0 .../INPUT_OUTPUT_LIBRARY/nomenclature.txt | 0 .../INPUT_OUTPUT_LIBRARY/open_files.f90 | 0 .../INPUT_OUTPUT_LIBRARY/outfiles.f90 | 0 .../INPUT_OUTPUT_LIBRARY/read_data.f90 | 0 .../INPUT_OUTPUT_LIBRARY/store_coef.f90 | 0 .../interaction_potentials_k.f90 | 0 .../interaction_potentials_r.f90 | 0 .../LANDAU_PARAMETERS_LIBRARY/landau.f90 | 0 .../DFM_library/LOCAL_FIELD_LIBRARY/101.pdf | Bin ...ltipair_excitations_and_sum_rules_in_i.pdf | Bin .../LOCAL_FIELD_LIBRARY/PhysRevB.10.3052.pdf | Bin .../LOCAL_FIELD_LIBRARY/PhysRevB.17.4512.pdf | Bin .../LOCAL_FIELD_LIBRARY/iq_functions_1.f90 | 0 .../LOCAL_FIELD_LIBRARY/iq_functions_2.f90 | 0 .../local_field_dynamic.f90 | 0 .../local_field_static.f90 | 0 .../local_field_static_2.f90 | 0 .../memory2_functions.f90 | 0 .../memory_functions.f90 | 0 .../MOMENTS_LIBRARY/loss_moments.f90 | 0 .../DFM_library/MOMENTS_LIBRARY/moments.f90 | 0 .../MOMENTS_LIBRARY/moments_loss.f90 | 0 .../Nevanlinna_functions.f90 | 0 .../PhysRevB.64.155102.pdf | Bin .../pair_correlation.f90 | 0 .../pair_distribution.f90 | 0 .../Fermi_values.f90 | 0 .../calc_Fermi.f90 | 0 .../calc_energies.f90 | 0 .../grand_partition.f90 | 0 .../material_properties.f90 | 0 .../thermodynamic_properties.f90 | 0 .../thermodynamic_quantities.f90 | 0 .../PLASMON_LIBRARY/plasmon_dispersion.f90 | 0 .../PLASMON_LIBRARY/plasmon_dispersion_2.f90 | 0 .../PLASMON_LIBRARY/plasmon_ene.f90 | 0 .../DFM_library/PLASMON_LIBRARY/q_bounds.f90 | 0 .../re_eps_0_treatment.f90 | 0 .../DFM_library/PRINT_LIBRARY/print_Fermi.f90 | 0 .../PRINT_LIBRARY/print_asymptotic.f90 | 0 .../PRINT_LIBRARY/print_calc_type.f90 | 0 .../PRINT_LIBRARY/print_energies.f90 | 0 .../PRINT_LIBRARY/print_headers.f90 | 0 .../PRINT_LIBRARY/print_material.f90 | 0 .../PRINT_LIBRARY/print_material_lengths.f90 | 0 .../PRINT_LIBRARY/print_plasmons.f90 | 0 .../PRINT_LIBRARY/print_scale_param.f90 | 0 .../PRINT_LIBRARY/print_thermal.f90 | 0 .../PRINT_LIBRARY/print_thermodynamics.f90 | 0 .../DFM_library/PRINT_LIBRARY/printfiles.f90 | 0 .../scale_parameters.f90 | 0 .../SCREENING_LIBRARY/screening_vec1.f90 | 0 .../SCREENING_LIBRARY/screening_vec2.f90 | 0 .../specific_int_1.f90 | 0 .../specific_int_10.f90 | 0 .../specific_int_2.f90 | 0 .../specific_int_3.f90 | 0 .../specific_int_4.f90 | 0 .../specific_int_5.f90 | 0 .../specific_int_6.f90 | 0 .../specific_int_7.f90 | 0 .../specific_int_8.f90 | 0 .../specific_int_9.f90 | 0 .../spectral_function.f90 | 0 .../PhysRevA.8.990.pdf | Bin .../structure_factor_dynamic.f90 | 0 .../structure_factor_dynamic_2.f90 | 0 .../structure_factor_static.f90 | 0 .../structure_factor_static_2.f90 | 0 .../STRUCTURE_FACTOR_LIBRARY/utic_values.f90 | 0 .../SUM_RULES_LIBRARY/sum_rules.f90 | 0 .../TEST_LIBRARY/calculators_test.f90 | 0 .../TEST_LIBRARY/test_int_Hubbard.f90 | 0 .../TEST_LIBRARY/test_integrals_2.f90 | 0 .../TEST_LIBRARY/test_integrals_3.f90 | 0 .../TEST_LIBRARY/test_integrals_8.f90 | 0 .../chemical_potential.f90 | 0 .../thermal_properties.f90 | 0 .../UTILITIES_LIBRARY/atomic_properties.f90 | 0 .../UTILITIES_LIBRARY/derivation.f90 | 0 .../UTILITIES_LIBRARY/factorials.f90 | 0 .../UTILITIES_LIBRARY/find_zero.f90 | 0 .../UTILITIES_LIBRARY/integration.f90 | 0 .../UTILITIES_LIBRARY/integration2.f90 | 0 .../UTILITIES_LIBRARY/integration3.f90 | 0 .../UTILITIES_LIBRARY/integration4.f90 | 0 .../UTILITIES_LIBRARY/integration5.f90 | 0 .../UTILITIES_LIBRARY/interpolation.f90 | 0 .../mathematical_constants.f90 | 0 .../UTILITIES_LIBRARY/oxides_properties.odt | Bin .../UTILITIES_LIBRARY/physical_constants.f90 | 0 .../polynomial_equations.f90 | 0 .../UTILITIES_LIBRARY/powers_of_ten.f90 | 0 .../semiconductors_properties.odt | Bin .../UTILITIES_LIBRARY/simple_numbers.f90 | 0 .../UTILITIES_LIBRARY/smoothing.f90 | 0 .../DFM_library/UTILITIES_LIBRARY/tools.f90 | 0 .../UTILITIES_LIBRARY/transforms.f90 | 0 .../UTILITIES_LIBRARY/utic_parameters.f90 | 0 .../UTILITIES_LIBRARY/utilities_1.f90 | 0 .../UTILITIES_LIBRARY/utilities_2.f90 | 0 .../UTILITIES_LIBRARY/utilities_3.f90 | 0 .../UTILITIES_LIBRARY/utilities_4.f90 | 0 .../UTILITIES_LIBRARY/velocities.f90 | 0 .../VARIOUS_FUNCTIONS_LIBRARY/2F1_real.f90 | 0 .../Legendre_functions.f90 | 0 .../Lindhard_function.f90 | 0 .../basic_functions.f90 | 0 .../VARIOUS_FUNCTIONS_LIBRARY/bessel.f90 | 0 .../VARIOUS_FUNCTIONS_LIBRARY/coulomb_log.f90 | 0 .../VARIOUS_FUNCTIONS_LIBRARY/digamma.f90 | 0 .../external_functions.f90 | 0 .../VARIOUS_FUNCTIONS_LIBRARY/gamma.f90 | 0 .../mod_mlf_garrappa.f90 | 0 .../phi_function.f90 | 0 .../VARIOUS_FUNCTIONS_LIBRARY/sph_bessel.f90 | 0 .../fortran}/Data/epsilon.dat | 0 .../fortran}/Data/replace.sh | 0 {New_libraries => src/fortran}/epsilon.f90 | 0 src/python/MANIFEST.in | 2 + src/python/man/manpage.txt | 2611 +++++++++++++++++ src/python/msspec_dfm/__init__.py | 23 + src/python/msspec_dfm/cli.py | 50 + src/python/msspec_dfm/version.py | 54 + src/python/pip.freeze | 1 + src/python/setup.py | 65 + 192 files changed, 3125 insertions(+), 243 deletions(-) delete mode 100644 New_libraries/Makefile create mode 100644 src/Makefile rename {New_libraries => src/fortran}/DFM_library/ACCURACY_LIBRARY/accuracy.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/ASYMPTOTIC_VALUES_LIBRARY/calc_asymptotic.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/ASYMPTOTIC_VALUES_LIBRARY/gamma_asymptotic.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/ASYMPTOTIC_VALUES_LIBRARY/gr_asymptotic.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/ASYMPTOTIC_VALUES_LIBRARY/sq_asymptotic.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/CALCULATORS_LIBRARY/calculators_1.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/CALCULATORS_LIBRARY/calculators_2.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/CALCULATORS_LIBRARY/calculators_3.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/CALCULATORS_LIBRARY/calculators_4.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/CALCULATORS_LIBRARY/calculators_5.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/CALCULATORS_LIBRARY/calculators_6.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/CALCULATORS_LIBRARY/calculators_7.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/CALCULATORS_LIBRARY/calculators_8.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/CALCULATORS_LIBRARY/calculators_9.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/CALCULATORS_LIBRARY/calculators_p.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/CALCULATORS_LIBRARY/call_calc_1.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/CALCULATORS_LIBRARY/call_calc_2.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/CALCULATORS_LIBRARY/call_calc_3.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/CALCULATORS_LIBRARY/call_calc_4.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/CALCULATORS_LIBRARY/call_calc_5.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/CALCULATORS_LIBRARY/call_calc_6.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/CALCULATORS_LIBRARY/call_calc_7.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/CALCULATORS_LIBRARY/call_calc_8.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/CALCULATORS_LIBRARY/call_calc_9.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/CALCULATORS_LIBRARY/call_calc_p.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/CONFINEMENT_LIBRARY/Note.txt (100%) rename {New_libraries => src/fortran}/DFM_library/CONFINEMENT_LIBRARY/confinement_ff.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/CONFINEMENT_LIBRARY/confinement_wf.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/CONFINEMENT_LIBRARY/coulomb.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/DAMPING_LIBRARY/calc_damping.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/DAMPING_LIBRARY/classical_fluid.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/DAMPING_LIBRARY/decay_rate.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/DAMPING_LIBRARY/diffusion_coefficient.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/DAMPING_LIBRARY/diffusion_coefficient_2.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/DAMPING_LIBRARY/electron_phonon_int.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/DAMPING_LIBRARY/external_damping.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/DAMPING_LIBRARY/lifetime.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/DAMPING_LIBRARY/mean_free_path.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/DAMPING_LIBRARY/packing_fraction.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/DAMPING_LIBRARY/plasmon_damping.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/DAMPING_LIBRARY/relaxation_time_dynamic.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/DAMPING_LIBRARY/relaxation_time_static.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/DAMPING_LIBRARY/scattering_length.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/DAMPING_LIBRARY/viscosity.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfuncl_magn_dynamic.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfuncl_stan_dynamic.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfuncl_stan_dynamic.f90~ (100%) rename {New_libraries => src/fortran}/DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfuncl_stan_dynamic_2.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfuncl_static.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfunct_dynamic.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/DIMENSIONS_LIBRARY/dimensions.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/ENERGIES_LIBRARY/PhysRevB.11.113.pdf (100%) rename {New_libraries => src/fortran}/DFM_library/ENERGIES_LIBRARY/correlation_energies.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/ENERGIES_LIBRARY/delta_t.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/ENERGIES_LIBRARY/exchange_energies.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/ENERGIES_LIBRARY/kinetic_energies.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/ENERGIES_LIBRARY/xc_energies.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/ERROR_HANDLING_LIBRARY/error_caltech.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/INPUT_OUTPUT_LIBRARY/change_filenames.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/INPUT_OUTPUT_LIBRARY/close_files.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/INPUT_OUTPUT_LIBRARY/diel_func.txt (100%) rename {New_libraries => src/fortran}/DFM_library/INPUT_OUTPUT_LIBRARY/filenames.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/INPUT_OUTPUT_LIBRARY/input_values.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/INPUT_OUTPUT_LIBRARY/missing.txt (100%) rename {New_libraries => src/fortran}/DFM_library/INPUT_OUTPUT_LIBRARY/nomenclature.txt (100%) rename {New_libraries => src/fortran}/DFM_library/INPUT_OUTPUT_LIBRARY/open_files.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/INPUT_OUTPUT_LIBRARY/outfiles.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/INPUT_OUTPUT_LIBRARY/read_data.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/INPUT_OUTPUT_LIBRARY/store_coef.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/INTERACTION_POTENTIALS_LIBRARY/interaction_potentials_k.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/INTERACTION_POTENTIALS_LIBRARY/interaction_potentials_r.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/LANDAU_PARAMETERS_LIBRARY/landau.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/LOCAL_FIELD_LIBRARY/101.pdf (100%) rename {New_libraries => src/fortran}/DFM_library/LOCAL_FIELD_LIBRARY/Multipair_excitations_and_sum_rules_in_i.pdf (100%) rename {New_libraries => src/fortran}/DFM_library/LOCAL_FIELD_LIBRARY/PhysRevB.10.3052.pdf (100%) rename {New_libraries => src/fortran}/DFM_library/LOCAL_FIELD_LIBRARY/PhysRevB.17.4512.pdf (100%) rename {New_libraries => src/fortran}/DFM_library/LOCAL_FIELD_LIBRARY/iq_functions_1.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/LOCAL_FIELD_LIBRARY/iq_functions_2.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/LOCAL_FIELD_LIBRARY/local_field_dynamic.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/LOCAL_FIELD_LIBRARY/local_field_static.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/LOCAL_FIELD_LIBRARY/local_field_static_2.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/MEMORY_FUNCTIONS_LIBRARY/memory2_functions.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/MEMORY_FUNCTIONS_LIBRARY/memory_functions.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/MOMENTS_LIBRARY/loss_moments.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/MOMENTS_LIBRARY/moments.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/MOMENTS_LIBRARY/moments_loss.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/NEVANLINNA_FUNCTIONS_LIBRARY/Nevanlinna_functions.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/PAIR_CORRELATION_LIBRARY/PhysRevB.64.155102.pdf (100%) rename {New_libraries => src/fortran}/DFM_library/PAIR_CORRELATION_LIBRARY/pair_correlation.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/PAIR_DISTRIBUTION_FUNCTION/pair_distribution.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/Fermi_values.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/calc_Fermi.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/calc_energies.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/grand_partition.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/material_properties.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/thermodynamic_properties.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/thermodynamic_quantities.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/PLASMON_LIBRARY/plasmon_dispersion.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/PLASMON_LIBRARY/plasmon_dispersion_2.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/PLASMON_LIBRARY/plasmon_ene.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/PLASMON_LIBRARY/q_bounds.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/POST_PROCESSING_LIBRARY/re_eps_0_treatment.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/PRINT_LIBRARY/print_Fermi.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/PRINT_LIBRARY/print_asymptotic.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/PRINT_LIBRARY/print_calc_type.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/PRINT_LIBRARY/print_energies.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/PRINT_LIBRARY/print_headers.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/PRINT_LIBRARY/print_material.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/PRINT_LIBRARY/print_material_lengths.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/PRINT_LIBRARY/print_plasmons.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/PRINT_LIBRARY/print_scale_param.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/PRINT_LIBRARY/print_thermal.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/PRINT_LIBRARY/print_thermodynamics.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/PRINT_LIBRARY/printfiles.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/SCALE_PARAMETERS_LIBRARY/scale_parameters.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/SCREENING_LIBRARY/screening_vec1.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/SCREENING_LIBRARY/screening_vec2.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_1.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_10.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_2.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_3.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_4.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_5.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_6.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_7.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_8.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_9.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/SPECTRAL_FUNCTION_LIBRARY/spectral_function.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/STRUCTURE_FACTOR_LIBRARY/PhysRevA.8.990.pdf (100%) rename {New_libraries => src/fortran}/DFM_library/STRUCTURE_FACTOR_LIBRARY/structure_factor_dynamic.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/STRUCTURE_FACTOR_LIBRARY/structure_factor_dynamic_2.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/STRUCTURE_FACTOR_LIBRARY/structure_factor_static.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/STRUCTURE_FACTOR_LIBRARY/structure_factor_static_2.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/STRUCTURE_FACTOR_LIBRARY/utic_values.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/SUM_RULES_LIBRARY/sum_rules.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/TEST_LIBRARY/calculators_test.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/TEST_LIBRARY/test_int_Hubbard.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/TEST_LIBRARY/test_integrals_2.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/TEST_LIBRARY/test_integrals_3.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/TEST_LIBRARY/test_integrals_8.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/THERMAL_PROPERTIES_LIBRARY/chemical_potential.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/THERMAL_PROPERTIES_LIBRARY/thermal_properties.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/UTILITIES_LIBRARY/atomic_properties.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/UTILITIES_LIBRARY/derivation.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/UTILITIES_LIBRARY/factorials.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/UTILITIES_LIBRARY/find_zero.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/UTILITIES_LIBRARY/integration.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/UTILITIES_LIBRARY/integration2.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/UTILITIES_LIBRARY/integration3.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/UTILITIES_LIBRARY/integration4.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/UTILITIES_LIBRARY/integration5.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/UTILITIES_LIBRARY/interpolation.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/UTILITIES_LIBRARY/mathematical_constants.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/UTILITIES_LIBRARY/oxides_properties.odt (100%) rename {New_libraries => src/fortran}/DFM_library/UTILITIES_LIBRARY/physical_constants.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/UTILITIES_LIBRARY/polynomial_equations.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/UTILITIES_LIBRARY/powers_of_ten.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/UTILITIES_LIBRARY/semiconductors_properties.odt (100%) rename {New_libraries => src/fortran}/DFM_library/UTILITIES_LIBRARY/simple_numbers.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/UTILITIES_LIBRARY/smoothing.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/UTILITIES_LIBRARY/tools.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/UTILITIES_LIBRARY/transforms.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/UTILITIES_LIBRARY/utic_parameters.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/UTILITIES_LIBRARY/utilities_1.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/UTILITIES_LIBRARY/utilities_2.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/UTILITIES_LIBRARY/utilities_3.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/UTILITIES_LIBRARY/utilities_4.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/UTILITIES_LIBRARY/velocities.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/2F1_real.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/Legendre_functions.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/Lindhard_function.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/basic_functions.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/bessel.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/coulomb_log.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/digamma.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/external_functions.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/gamma.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/mod_mlf_garrappa.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/phi_function.f90 (100%) rename {New_libraries => src/fortran}/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/sph_bessel.f90 (100%) rename {New_libraries => src/fortran}/Data/epsilon.dat (100%) rename {New_libraries => src/fortran}/Data/replace.sh (100%) rename {New_libraries => src/fortran}/epsilon.f90 (100%) create mode 100644 src/python/MANIFEST.in create mode 100644 src/python/man/manpage.txt create mode 100644 src/python/msspec_dfm/__init__.py create mode 100644 src/python/msspec_dfm/cli.py create mode 100644 src/python/msspec_dfm/version.py create mode 100644 src/python/pip.freeze create mode 100644 src/python/setup.py diff --git a/New_libraries/Makefile b/New_libraries/Makefile deleted file mode 100644 index 79a5250..0000000 --- a/New_libraries/Makefile +++ /dev/null @@ -1,243 +0,0 @@ -# -# Makefile for the MsSpec-DFM epsilon.f90 program -# -# by S. Tricot and D. Sébilleau -# -# Last version: 21 Apr 2021 -# -# Compiler -# -FC=gfortran -# -# Compile flags -# -#FFLAGS= -FFLAGS=-g -fbounds-check -fbacktrace -ffpe-trap=zero,overflow,underflow,invalid,denormal -#FFLAGS=-ffast-math -O3 -# -# Link flags -# -LDFLAGS= -LDLIBS= -# -# Executable name -# -EXE=eps -# -# Building directory -# -BUILDDIR:=build2 - -.PHONY: clean - -cmn_DEPS:=DFM_library/ACCURACY_LIBRARY/accuracy.f90 \ - DFM_library/INPUT_OUTPUT_LIBRARY/input_values.f90 \ - DFM_library/DIMENSIONS_LIBRARY/dimensions.f90 \ - DFM_library/UTILITIES_LIBRARY/simple_numbers.f90 \ - DFM_library/UTILITIES_LIBRARY/powers_of_ten.f90 \ - DFM_library/UTILITIES_LIBRARY/mathematical_constants.f90 \ - DFM_library/UTILITIES_LIBRARY/physical_constants.f90 \ - DFM_library/UTILITIES_LIBRARY/factorials.f90 \ - DFM_library/ERROR_HANDLING_LIBRARY/error_caltech.f90 \ - DFM_library/PRINT_LIBRARY/printfiles.f90 \ - DFM_library/STRUCTURE_FACTOR_LIBRARY/utic_values.f90 \ - DFM_library/DAMPING_LIBRARY/external_damping.f90 \ - DFM_library/PHYSICAL_PROPERTIES_LIBRARY/Fermi_values.f90 -cmn_OBJS:=$(patsubst %.f90,%.o, $(cmn_DEPS)) - -tool_SRCS:=$(cmn_DEPS) \ - DFM_library/VARIOUS_FUNCTIONS_LIBRARY/external_functions.f90 \ - DFM_library/VARIOUS_FUNCTIONS_LIBRARY/Lindhard_function.f90 \ - DFM_library/VARIOUS_FUNCTIONS_LIBRARY/gamma.f90 \ - DFM_library/VARIOUS_FUNCTIONS_LIBRARY/digamma.f90 \ - DFM_library/VARIOUS_FUNCTIONS_LIBRARY/2F1_real.f90 \ - DFM_library/VARIOUS_FUNCTIONS_LIBRARY/mod_mlf_garrappa.f90 \ - DFM_library/UTILITIES_LIBRARY/derivation.f90 \ - DFM_library/UTILITIES_LIBRARY/smoothing.f90 \ - DFM_library/UTILITIES_LIBRARY/interpolation.f90 \ - DFM_library/UTILITIES_LIBRARY/integration.f90 \ - DFM_library/UTILITIES_LIBRARY/integration4.f90 \ - DFM_library/UTILITIES_LIBRARY/transforms.f90 \ - DFM_library/VARIOUS_FUNCTIONS_LIBRARY/basic_functions.f90 \ - DFM_library/VARIOUS_FUNCTIONS_LIBRARY/bessel.f90 -util_SRCS:=$(cmn_DEPS) \ - DFM_library/UTILITIES_LIBRARY/utilities_1.f90 \ - DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_1.f90 \ - DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_4.f90 \ - DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_6.f90 \ - DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_7.f90 \ - DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_8.f90 \ - DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_9.f90 \ - DFM_library/UTILITIES_LIBRARY/find_zero.f90 \ - DFM_library/UTILITIES_LIBRARY/polynomial_equations.f90 -prop_SRCS:=$(cmn_DEPS) \ - DFM_library/PHYSICAL_PROPERTIES_LIBRARY/calc_Fermi.f90 \ - DFM_library/PLASMON_LIBRARY/plasmon_ene.f90 \ - DFM_library/SCALE_PARAMETERS_LIBRARY/scale_parameters.f90 \ - DFM_library/ENERGIES_LIBRARY/correlation_energies.f90 \ - DFM_library/ENERGIES_LIBRARY/delta_t.f90 \ - DFM_library/PHYSICAL_PROPERTIES_LIBRARY/thermodynamic_properties.f90 \ - DFM_library/SCREENING_LIBRARY/screening_vec1.f90 \ - DFM_library/CONFINEMENT_LIBRARY/confinement_ff.f90 \ - DFM_library/CONFINEMENT_LIBRARY/coulomb.f90 \ - DFM_library/UTILITIES_LIBRARY/utilities_3.f90 \ - DFM_library/PHYSICAL_PROPERTIES_LIBRARY/material_properties.f90 \ - DFM_library/THERMAL_PROPERTIES_LIBRARY/thermal_properties.f90 \ - DFM_library/ENERGIES_LIBRARY/xc_energies.f90 \ - DFM_library/ENERGIES_LIBRARY/exchange_energies.f90 \ - DFM_library/ENERGIES_LIBRARY/kinetic_energies.f90 \ - DFM_library/PHYSICAL_PROPERTIES_LIBRARY/thermodynamic_quantities.f90 \ - DFM_library/THERMAL_PROPERTIES_LIBRARY/chemical_potential.f90 \ - DFM_library/UTILITIES_LIBRARY/utilities_4.f90 \ - DFM_library/PHYSICAL_PROPERTIES_LIBRARY/calc_energies.f90 -# -# Read input data file: -# -read_SRCS:=DFM_library/INPUT_OUTPUT_LIBRARY/read_data.f90 -read_OBJS:=$(patsubst %.f90,%.o, $(tool_SRCS) $(util_SRCS) $(prop_SRCS) $(read_SRCS)) - -io_SRCS:=DFM_library/INPUT_OUTPUT_LIBRARY/filenames.f90 \ - DFM_library/INPUT_OUTPUT_LIBRARY/outfiles.f90 \ - DFM_library/INPUT_OUTPUT_LIBRARY/change_filenames.f90 \ - DFM_library/INPUT_OUTPUT_LIBRARY/store_coef.f90 \ - DFM_library/INPUT_OUTPUT_LIBRARY/open_files.f90 \ - DFM_library/PRINT_LIBRARY/print_headers.f90 \ - DFM_library/PRINT_LIBRARY/print_calc_type.f90 \ - DFM_library/PRINT_LIBRARY/print_Fermi.f90 \ - DFM_library/PRINT_LIBRARY/print_plasmons.f90 \ - DFM_library/PRINT_LIBRARY/print_scale_param.f90 \ - DFM_library/PRINT_LIBRARY/print_material_lengths.f90 \ - DFM_library/PRINT_LIBRARY/print_thermal.f90 \ - DFM_library/PRINT_LIBRARY/print_thermodynamics.f90 \ - DFM_library/PRINT_LIBRARY/print_energies.f90 \ - DFM_library/INPUT_OUTPUT_LIBRARY/close_files.f90 -io_OBJS:=$(patsubst %.f90,%.o, $(io_SRCS)) - -calc_DEPS:=$(cmn_DEPS) \ - DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfuncl_static.f90 \ - DFM_library/ASYMPTOTIC_VALUES_LIBRARY/gr_asymptotic.f90 \ - DFM_library/ASYMPTOTIC_VALUES_LIBRARY/sq_asymptotic.f90 \ - DFM_library/CONFINEMENT_LIBRARY/confinement_wf.f90 \ - DFM_library/LOCAL_FIELD_LIBRARY/iq_functions_1.f90 \ - DFM_library/MOMENTS_LIBRARY/loss_moments.f90 \ - DFM_library/PAIR_DISTRIBUTION_FUNCTION/pair_distribution.f90 \ - DFM_library/PAIR_CORRELATION_LIBRARY/pair_correlation.f90 \ - DFM_library/STRUCTURE_FACTOR_LIBRARY/structure_factor_static.f90 \ - DFM_library/LOCAL_FIELD_LIBRARY/iq_functions_2.f90 \ - DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_2.f90 \ - DFM_library/ASYMPTOTIC_VALUES_LIBRARY/gamma_asymptotic.f90 \ - DFM_library/ASYMPTOTIC_VALUES_LIBRARY/calc_asymptotic.f90 \ - DFM_library/LOCAL_FIELD_LIBRARY/local_field_static.f90 \ - DFM_library/LOCAL_FIELD_LIBRARY/local_field_static_2.f90 \ - DFM_library/STRUCTURE_FACTOR_LIBRARY/structure_factor_static_2.f90 \ - DFM_library/NEVANLINNA_FUNCTIONS_LIBRARY/Nevanlinna_functions.f90 \ - DFM_library/MEMORY_FUNCTIONS_LIBRARY/memory_functions.f90 \ - DFM_library/SCREENING_LIBRARY/screening_vec2.f90 \ - DFM_library/UTILITIES_LIBRARY/velocities.f90 \ - DFM_library/SCALE_PARAMETERS_LIBRARY/scale_parameters.f90 \ - DFM_library/MOMENTS_LIBRARY/moments.f90 \ - DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_3.f90 \ - DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_10.f90 \ - DFM_library/VARIOUS_FUNCTIONS_LIBRARY/coulomb_log.f90 \ - DFM_library/DAMPING_LIBRARY/packing_fraction.f90 \ - DFM_library/DAMPING_LIBRARY/classical_fluid.f90 \ - DFM_library/DAMPING_LIBRARY/diffusion_coefficient.f90 \ - DFM_library/DAMPING_LIBRARY/electron_phonon_int.f90 \ - DFM_library/DAMPING_LIBRARY/scattering_length.f90 \ - DFM_library/DAMPING_LIBRARY/lifetime.f90 \ - DFM_library/DAMPING_LIBRARY/viscosity.f90 \ - DFM_library/DAMPING_LIBRARY/relaxation_time_static.f90 \ - DFM_library/UTILITIES_LIBRARY/utic_parameters.f90 \ - DFM_library/DAMPING_LIBRARY/decay_rate.f90 \ - DFM_library/DAMPING_LIBRARY/calc_damping.f90 \ - DFM_library/DAMPING_LIBRARY/diffusion_coefficient_2.f90 \ - DFM_library/PLASMON_LIBRARY/plasmon_dispersion.f90 \ - DFM_library/PLASMON_LIBRARY/q_bounds.f90 \ - DFM_library/DAMPING_LIBRARY/plasmon_damping.f90 \ - DFM_library/PHYSICAL_PROPERTIES_LIBRARY/calc_energies.f90 \ - DFM_library/PHYSICAL_PROPERTIES_LIBRARY/grand_partition.f90 \ - DFM_library/UTILITIES_LIBRARY/utilities_2.f90 \ - DFM_library/LANDAU_PARAMETERS_LIBRARY/landau.f90 \ - DFM_library/VARIOUS_FUNCTIONS_LIBRARY/phi_function.f90 \ - DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfuncl_stan_dynamic.f90 \ - DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfuncl_magn_dynamic.f90 \ - DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfunct_dynamic.f90 \ - DFM_library/STRUCTURE_FACTOR_LIBRARY/structure_factor_dynamic_2.f90 \ - DFM_library/INTERACTION_POTENTIALS_LIBRARY/interaction_potentials_r.f90 \ - DFM_library/INTERACTION_POTENTIALS_LIBRARY/interaction_potentials_k.f90 \ - DFM_library/DAMPING_LIBRARY/decay_rate.f90 \ - DFM_library/STRUCTURE_FACTOR_LIBRARY/structure_factor_dynamic.f90 \ - DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfuncl_stan_dynamic_2.f90 \ - DFM_library/DAMPING_LIBRARY/mean_free_path.f90 \ - DFM_library/SPECTRAL_FUNCTION_LIBRARY/spectral_function.f90 \ - DFM_library/LOCAL_FIELD_LIBRARY/local_field_dynamic.f90 \ - DFM_library/PRINT_LIBRARY/print_asymptotic.f90 \ - DFM_library/POST_PROCESSING_LIBRARY/re_eps_0_treatment.f90 \ - DFM_library/MOMENTS_LIBRARY/moments_loss.f90 \ - DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_5.f90 -# -# Calculators: -# -calc_SRCS:=DFM_library/CALCULATORS_LIBRARY/calculators_1.f90 \ - DFM_library/CALCULATORS_LIBRARY/calculators_2.f90 \ - DFM_library/CALCULATORS_LIBRARY/calculators_3.f90 \ - DFM_library/CALCULATORS_LIBRARY/calculators_5.f90 \ - DFM_library/CALCULATORS_LIBRARY/calculators_7.f90 \ - DFM_library/CALCULATORS_LIBRARY/calculators_8.f90 \ - DFM_library/CALCULATORS_LIBRARY/calculators_9.f90 \ - DFM_library/CALCULATORS_LIBRARY/call_calc_1.f90 \ - DFM_library/CALCULATORS_LIBRARY/call_calc_2.f90 \ - DFM_library/CALCULATORS_LIBRARY/call_calc_3.f90 \ - DFM_library/CALCULATORS_LIBRARY/call_calc_5.f90 \ - DFM_library/CALCULATORS_LIBRARY/call_calc_7.f90 \ - DFM_library/CALCULATORS_LIBRARY/call_calc_8.f90 \ - DFM_library/CALCULATORS_LIBRARY/call_calc_9.f90 -# -# Test_integrals: -# -calc_TEST:=DFM_library/TEST_LIBRARY/test_integrals_2.f90 \ - DFM_library/TEST_LIBRARY/test_integrals_3.f90 \ - DFM_library/TEST_LIBRARY/test_integrals_8.f90 \ - DFM_library/TEST_LIBRARY/test_int_Hubbard.f90 -# -# Post-processing: -# -calc_POST:=DFM_library/PLASMON_LIBRARY/plasmon_dispersion_2.f90 \ - DFM_library/CALCULATORS_LIBRARY/calculators_p.f90 \ - DFM_library/CALCULATORS_LIBRARY/call_calc_p.f90 - -calc_OBJS:=$(patsubst %.f90,%.o, $(calc_DEPS) $(calc_SRCS) $(calc_TEST) $(calc_POST)) - - - -SRCS:= $(patsubst %.o,%.f90,$(read_OBJS) $(io_OBJS) $(calc_OBJS)) -OBJS:= $(addprefix $(BUILDDIR)/,$(notdir $(read_OBJS) $(io_OBJS) $(calc_OBJS))) - - -all: obj $(EXE) - - -obj: src $(OBJS) - - -$(EXE): $(OBJS) $(BUILDDIR)/epsilon.f90 - @echo "building main $@..." - @$(FC) $(FFLAGS) $(LDFLAGS) $(LDLIBS) -J $(BUILDDIR) -o $@ $^ - - -%.o: %.f90 - @echo "Compiling $@..." - @$(FC) $(FFLAGS) -J $(BUILDDIR) -I. -o $@ -c $^ - - -src: $(SRCS) epsilon.f90 - @echo "updating source tree..." - @mkdir -p $(BUILDDIR) - @rsync -av $^ $(BUILDDIR) - - -clean: - @echo "Cleaning..." - @rm -rf $(BUILDDIR) - @rm -rf $(EXE) - diff --git a/src/Makefile b/src/Makefile new file mode 100644 index 0000000..9436d01 --- /dev/null +++ b/src/Makefile @@ -0,0 +1,319 @@ +# Copyright © 2022 - Rennes Physics Institute +# +# This file is part of MsSpec-DFM. +# +# MsSpec-DFM is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# MsSpec-DFM is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# You should have received a copy of the GNU General Public License +# along with MsSpec-DFM. If not, see . +# +# Source file : src/Makefile +# Last modified: Fri, 25 Feb 2022 17:27:18 +0100 +# Committed by : Sylvain Tricot 1645806435 +0100 + +# +# Type 'make help' for some help +# +############################################################################### +# OPTIONS # +############################################################################### +DEBUG = 0 +BUILDDIR = build +EXE = eps +SO = $(EXE).so +FC = gfortran +PREFIX = $(HOME)/.local +AUTHORS = Didier Sébilleau , \ + Aditi Mandal , \ + Sylvain Tricot + +################################################################################ +# /!\ DO NOT EDIT BELOW THAT LINE (unlesss you know what you're doing...) # +# CORE CONFIGURATION # +################################################################################ + +PYTHON_PKG_NAME = msspec_dfm +VERSION = $(shell cd python && python -c 'from $(PYTHON_PKG_NAME) import __version__; print(__version__)') +SRCDIR = fortran/DFM_library +PYPKG = python/$(PYTHON_PKG_NAME) + +ifeq ($(DEBUG),0) + FFLAGS = +else + FFLAGS = -g -fbounds-check -fbacktrace -ffpe-trap=zero,overflow,underflow,invalid,denormal +endif + +# Use f2py of the virtualenv if possible +ifdef VIRTUAL_ENV + F2PY = $(VIRTUAL_ENV)/bin/f2py +else + F2PY = $(shell which f2py) +endif +F2PY += --f77exec=$(FC) --f90exec=$(FC) + +# Source files +MANPAGE := man/eps.1 + +cmn_DEPS:=$(SRCDIR)/ACCURACY_LIBRARY/accuracy.f90 \ + $(SRCDIR)/INPUT_OUTPUT_LIBRARY/input_values.f90 \ + $(SRCDIR)/DIMENSIONS_LIBRARY/dimensions.f90 \ + $(SRCDIR)/UTILITIES_LIBRARY/simple_numbers.f90 \ + $(SRCDIR)/UTILITIES_LIBRARY/powers_of_ten.f90 \ + $(SRCDIR)/UTILITIES_LIBRARY/mathematical_constants.f90 \ + $(SRCDIR)/UTILITIES_LIBRARY/physical_constants.f90 \ + $(SRCDIR)/UTILITIES_LIBRARY/factorials.f90 \ + $(SRCDIR)/ERROR_HANDLING_LIBRARY/error_caltech.f90 \ + $(SRCDIR)/PRINT_LIBRARY/printfiles.f90 \ + $(SRCDIR)/STRUCTURE_FACTOR_LIBRARY/utic_values.f90 \ + $(SRCDIR)/DAMPING_LIBRARY/external_damping.f90 \ + $(SRCDIR)/PHYSICAL_PROPERTIES_LIBRARY/Fermi_values.f90 + +tool_SRCS:=$(cmn_DEPS) \ + $(SRCDIR)/VARIOUS_FUNCTIONS_LIBRARY/external_functions.f90 \ + $(SRCDIR)/VARIOUS_FUNCTIONS_LIBRARY/Lindhard_function.f90 \ + $(SRCDIR)/VARIOUS_FUNCTIONS_LIBRARY/gamma.f90 \ + $(SRCDIR)/VARIOUS_FUNCTIONS_LIBRARY/digamma.f90 \ + $(SRCDIR)/VARIOUS_FUNCTIONS_LIBRARY/2F1_real.f90 \ + $(SRCDIR)/VARIOUS_FUNCTIONS_LIBRARY/mod_mlf_garrappa.f90 \ + $(SRCDIR)/UTILITIES_LIBRARY/derivation.f90 \ + $(SRCDIR)/UTILITIES_LIBRARY/smoothing.f90 \ + $(SRCDIR)/UTILITIES_LIBRARY/interpolation.f90 \ + $(SRCDIR)/UTILITIES_LIBRARY/integration.f90 \ + $(SRCDIR)/UTILITIES_LIBRARY/integration4.f90 \ + $(SRCDIR)/UTILITIES_LIBRARY/transforms.f90 \ + $(SRCDIR)/VARIOUS_FUNCTIONS_LIBRARY/basic_functions.f90 \ + $(SRCDIR)/VARIOUS_FUNCTIONS_LIBRARY/bessel.f90 + +util_SRCS:=$(cmn_DEPS) \ + $(SRCDIR)/UTILITIES_LIBRARY/utilities_1.f90 \ + $(SRCDIR)/SPECIFIC_INTEGRALS_LIBRARY/specific_int_1.f90 \ + $(SRCDIR)/SPECIFIC_INTEGRALS_LIBRARY/specific_int_4.f90 \ + $(SRCDIR)/SPECIFIC_INTEGRALS_LIBRARY/specific_int_6.f90 \ + $(SRCDIR)/SPECIFIC_INTEGRALS_LIBRARY/specific_int_7.f90 \ + $(SRCDIR)/SPECIFIC_INTEGRALS_LIBRARY/specific_int_8.f90 \ + $(SRCDIR)/SPECIFIC_INTEGRALS_LIBRARY/specific_int_9.f90 \ + $(SRCDIR)/UTILITIES_LIBRARY/find_zero.f90 \ + $(SRCDIR)/UTILITIES_LIBRARY/polynomial_equations.f90 + +prop_SRCS:=$(cmn_DEPS) \ + $(SRCDIR)/PHYSICAL_PROPERTIES_LIBRARY/calc_Fermi.f90 \ + $(SRCDIR)/PLASMON_LIBRARY/plasmon_ene.f90 \ + $(SRCDIR)/SCALE_PARAMETERS_LIBRARY/scale_parameters.f90 \ + $(SRCDIR)/ENERGIES_LIBRARY/correlation_energies.f90 \ + $(SRCDIR)/ENERGIES_LIBRARY/delta_t.f90 \ + $(SRCDIR)/PHYSICAL_PROPERTIES_LIBRARY/thermodynamic_properties.f90 \ + $(SRCDIR)/SCREENING_LIBRARY/screening_vec1.f90 \ + $(SRCDIR)/CONFINEMENT_LIBRARY/confinement_ff.f90 \ + $(SRCDIR)/CONFINEMENT_LIBRARY/coulomb.f90 \ + $(SRCDIR)/UTILITIES_LIBRARY/utilities_3.f90 \ + $(SRCDIR)/PHYSICAL_PROPERTIES_LIBRARY/material_properties.f90 \ + $(SRCDIR)/THERMAL_PROPERTIES_LIBRARY/thermal_properties.f90 \ + $(SRCDIR)/ENERGIES_LIBRARY/xc_energies.f90 \ + $(SRCDIR)/ENERGIES_LIBRARY/exchange_energies.f90 \ + $(SRCDIR)/ENERGIES_LIBRARY/kinetic_energies.f90 \ + $(SRCDIR)/PHYSICAL_PROPERTIES_LIBRARY/thermodynamic_quantities.f90 \ + $(SRCDIR)/THERMAL_PROPERTIES_LIBRARY/chemical_potential.f90 \ + $(SRCDIR)/UTILITIES_LIBRARY/utilities_4.f90 \ + $(SRCDIR)/PHYSICAL_PROPERTIES_LIBRARY/calc_energies.f90 +# +# Read input data file: +# +read_SRCS:=$(tool_SRCS) $(util_SRCS) $(prop_SRCS) \ + $(SRCDIR)/INPUT_OUTPUT_LIBRARY/read_data.f90 + +io_SRCS:=$(SRCDIR)/INPUT_OUTPUT_LIBRARY/filenames.f90 \ + $(SRCDIR)/INPUT_OUTPUT_LIBRARY/outfiles.f90 \ + $(SRCDIR)/INPUT_OUTPUT_LIBRARY/change_filenames.f90 \ + $(SRCDIR)/INPUT_OUTPUT_LIBRARY/store_coef.f90 \ + $(SRCDIR)/INPUT_OUTPUT_LIBRARY/open_files.f90 \ + $(SRCDIR)/PRINT_LIBRARY/print_headers.f90 \ + $(SRCDIR)/PRINT_LIBRARY/print_calc_type.f90 \ + $(SRCDIR)/PRINT_LIBRARY/print_Fermi.f90 \ + $(SRCDIR)/PRINT_LIBRARY/print_plasmons.f90 \ + $(SRCDIR)/PRINT_LIBRARY/print_scale_param.f90 \ + $(SRCDIR)/PRINT_LIBRARY/print_material_lengths.f90 \ + $(SRCDIR)/PRINT_LIBRARY/print_thermal.f90 \ + $(SRCDIR)/PRINT_LIBRARY/print_thermodynamics.f90 \ + $(SRCDIR)/PRINT_LIBRARY/print_energies.f90 \ + $(SRCDIR)/INPUT_OUTPUT_LIBRARY/close_files.f90 + +calc_DEPS:=$(cmn_DEPS) \ + $(SRCDIR)/DIELECTRIC_FUNCTIONS_LIBRARY/dfuncl_static.f90 \ + $(SRCDIR)/ASYMPTOTIC_VALUES_LIBRARY/gr_asymptotic.f90 \ + $(SRCDIR)/ASYMPTOTIC_VALUES_LIBRARY/sq_asymptotic.f90 \ + $(SRCDIR)/CONFINEMENT_LIBRARY/confinement_wf.f90 \ + $(SRCDIR)/LOCAL_FIELD_LIBRARY/iq_functions_1.f90 \ + $(SRCDIR)/MOMENTS_LIBRARY/loss_moments.f90 \ + $(SRCDIR)/PAIR_DISTRIBUTION_FUNCTION/pair_distribution.f90 \ + $(SRCDIR)/PAIR_CORRELATION_LIBRARY/pair_correlation.f90 \ + $(SRCDIR)/STRUCTURE_FACTOR_LIBRARY/structure_factor_static.f90 \ + $(SRCDIR)/LOCAL_FIELD_LIBRARY/iq_functions_2.f90 \ + $(SRCDIR)/SPECIFIC_INTEGRALS_LIBRARY/specific_int_2.f90 \ + $(SRCDIR)/ASYMPTOTIC_VALUES_LIBRARY/gamma_asymptotic.f90 \ + $(SRCDIR)/ASYMPTOTIC_VALUES_LIBRARY/calc_asymptotic.f90 \ + $(SRCDIR)/LOCAL_FIELD_LIBRARY/local_field_static.f90 \ + $(SRCDIR)/LOCAL_FIELD_LIBRARY/local_field_static_2.f90 \ + $(SRCDIR)/STRUCTURE_FACTOR_LIBRARY/structure_factor_static_2.f90 \ + $(SRCDIR)/NEVANLINNA_FUNCTIONS_LIBRARY/Nevanlinna_functions.f90 \ + $(SRCDIR)/MEMORY_FUNCTIONS_LIBRARY/memory_functions.f90 \ + $(SRCDIR)/SCREENING_LIBRARY/screening_vec2.f90 \ + $(SRCDIR)/UTILITIES_LIBRARY/velocities.f90 \ + $(SRCDIR)/SCALE_PARAMETERS_LIBRARY/scale_parameters.f90 \ + $(SRCDIR)/MOMENTS_LIBRARY/moments.f90 \ + $(SRCDIR)/SPECIFIC_INTEGRALS_LIBRARY/specific_int_3.f90 \ + $(SRCDIR)/SPECIFIC_INTEGRALS_LIBRARY/specific_int_10.f90 \ + $(SRCDIR)/VARIOUS_FUNCTIONS_LIBRARY/coulomb_log.f90 \ + $(SRCDIR)/DAMPING_LIBRARY/packing_fraction.f90 \ + $(SRCDIR)/DAMPING_LIBRARY/classical_fluid.f90 \ + $(SRCDIR)/DAMPING_LIBRARY/diffusion_coefficient.f90 \ + $(SRCDIR)/DAMPING_LIBRARY/electron_phonon_int.f90 \ + $(SRCDIR)/DAMPING_LIBRARY/scattering_length.f90 \ + $(SRCDIR)/DAMPING_LIBRARY/lifetime.f90 \ + $(SRCDIR)/DAMPING_LIBRARY/viscosity.f90 \ + $(SRCDIR)/DAMPING_LIBRARY/relaxation_time_static.f90 \ + $(SRCDIR)/UTILITIES_LIBRARY/utic_parameters.f90 \ + $(SRCDIR)/DAMPING_LIBRARY/decay_rate.f90 \ + $(SRCDIR)/DAMPING_LIBRARY/calc_damping.f90 \ + $(SRCDIR)/DAMPING_LIBRARY/diffusion_coefficient_2.f90 \ + $(SRCDIR)/PLASMON_LIBRARY/plasmon_dispersion.f90 \ + $(SRCDIR)/PLASMON_LIBRARY/q_bounds.f90 \ + $(SRCDIR)/DAMPING_LIBRARY/plasmon_damping.f90 \ + $(SRCDIR)/PHYSICAL_PROPERTIES_LIBRARY/calc_energies.f90 \ + $(SRCDIR)/PHYSICAL_PROPERTIES_LIBRARY/grand_partition.f90 \ + $(SRCDIR)/UTILITIES_LIBRARY/utilities_2.f90 \ + $(SRCDIR)/LANDAU_PARAMETERS_LIBRARY/landau.f90 \ + $(SRCDIR)/VARIOUS_FUNCTIONS_LIBRARY/phi_function.f90 \ + $(SRCDIR)/DIELECTRIC_FUNCTIONS_LIBRARY/dfuncl_stan_dynamic.f90 \ + $(SRCDIR)/DIELECTRIC_FUNCTIONS_LIBRARY/dfuncl_magn_dynamic.f90 \ + $(SRCDIR)/DIELECTRIC_FUNCTIONS_LIBRARY/dfunct_dynamic.f90 \ + $(SRCDIR)/STRUCTURE_FACTOR_LIBRARY/structure_factor_dynamic_2.f90 \ + $(SRCDIR)/INTERACTION_POTENTIALS_LIBRARY/interaction_potentials_r.f90 \ + $(SRCDIR)/INTERACTION_POTENTIALS_LIBRARY/interaction_potentials_k.f90 \ + $(SRCDIR)/DAMPING_LIBRARY/decay_rate.f90 \ + $(SRCDIR)/STRUCTURE_FACTOR_LIBRARY/structure_factor_dynamic.f90 \ + $(SRCDIR)/DIELECTRIC_FUNCTIONS_LIBRARY/dfuncl_stan_dynamic_2.f90 \ + $(SRCDIR)/DAMPING_LIBRARY/mean_free_path.f90 \ + $(SRCDIR)/SPECTRAL_FUNCTION_LIBRARY/spectral_function.f90 \ + $(SRCDIR)/LOCAL_FIELD_LIBRARY/local_field_dynamic.f90 \ + $(SRCDIR)/PRINT_LIBRARY/print_asymptotic.f90 \ + $(SRCDIR)/POST_PROCESSING_LIBRARY/re_eps_0_treatment.f90 \ + $(SRCDIR)/MOMENTS_LIBRARY/moments_loss.f90 \ + $(SRCDIR)/SPECIFIC_INTEGRALS_LIBRARY/specific_int_5.f90 +# +# Calculators: +# +calc_SRCS:=$(SRCDIR)/CALCULATORS_LIBRARY/calculators_1.f90 \ + $(SRCDIR)/CALCULATORS_LIBRARY/calculators_2.f90 \ + $(SRCDIR)/CALCULATORS_LIBRARY/calculators_3.f90 \ + $(SRCDIR)/CALCULATORS_LIBRARY/calculators_5.f90 \ + $(SRCDIR)/CALCULATORS_LIBRARY/calculators_7.f90 \ + $(SRCDIR)/CALCULATORS_LIBRARY/calculators_8.f90 \ + $(SRCDIR)/CALCULATORS_LIBRARY/calculators_9.f90 \ + $(SRCDIR)/CALCULATORS_LIBRARY/call_calc_1.f90 \ + $(SRCDIR)/CALCULATORS_LIBRARY/call_calc_2.f90 \ + $(SRCDIR)/CALCULATORS_LIBRARY/call_calc_3.f90 \ + $(SRCDIR)/CALCULATORS_LIBRARY/call_calc_5.f90 \ + $(SRCDIR)/CALCULATORS_LIBRARY/call_calc_7.f90 \ + $(SRCDIR)/CALCULATORS_LIBRARY/call_calc_8.f90 \ + $(SRCDIR)/CALCULATORS_LIBRARY/call_calc_9.f90 +# +# Test_integrals: +# +calc_TEST:=$(SRCDIR)/TEST_LIBRARY/test_integrals_2.f90 \ + $(SRCDIR)/TEST_LIBRARY/test_integrals_3.f90 \ + $(SRCDIR)/TEST_LIBRARY/test_integrals_8.f90 \ + $(SRCDIR)/TEST_LIBRARY/test_int_Hubbard.f90 +# +# Post-processing: +# +calc_POST:=$(SRCDIR)/PLASMON_LIBRARY/plasmon_dispersion_2.f90 \ + $(SRCDIR)/CALCULATORS_LIBRARY/calculators_p.f90 \ + $(SRCDIR)/CALCULATORS_LIBRARY/call_calc_p.f90 + + +SRCS:= $(read_SRCS) $(io_SRCS) $(calc_DEPS) $(calc_SRCS) $(calc_TEST) $(calc_POST) +OBJS:=$(addprefix $(BUILDDIR)/,$(patsubst %.f90,%.o,$(SRCS))) + + +.PHONY: all obj exe so pypkg install uninstall clean help + + +all: so + +obj: $(OBJS) + +#exe: $(BUILDDIR)/$(EXE) + +so: python/$(PYTHON_PKG_NAME)/$(SO) + +pypkg: python/dist/$(PYTHON_PKG_NAME)-$(VERSION).tar.gz + + +python/VERSION: + @cat $(VERSION) > $@ + + +python/dist/$(PYTHON_PKG_NAME)-$(VERSION).tar.gz: python/$(PYTHON_PKG_NAME)/$(SO) +python/dist/$(PYTHON_PKG_NAME)-$(VERSION).tar.gz: python/man/$(EXE).1.gz +python/dist/$(PYTHON_PKG_NAME)-$(VERSION).tar.gz: python/MANIFEST.in python/setup.py python/pip.freeze $(shell find python/$(PYTHON_PKG_NAME) -name '*.py') + @cd python && python setup.py sdist + + +python/$(PYTHON_PKG_NAME)/$(SO): $(OBJS) $(SRCDIR)/../epsilon.f90 + @echo "Building $@ shared object..." + @mkdir -p $(BUILDDIR) + @sed -e 's/END PROGRAM.*/END SUBROUTINE/' -e 's/PROGRAM/SUBROUTINE/' $(SRCDIR)/../epsilon.f90 > $(BUILDDIR)/_dfm.f90 + @$(F2PY) -m $(BUILDDIR).$(basename $(@F)) -c $(filter-out $(lastword $^), $^) $(BUILDDIR)/_dfm.f90 && mv $(BUILDDIR)/*.so $@ + + +#$(BUILDDIR)/$(EXE): $(OBJS) $(SRCDIR)/../epsilon.f90 +# @echo "building main $@..." +# @$(FC) $(FFLAGS) $(LDFLAGS) $(LDLIBS) -J $(BUILDDIR) -o $@ $^ + + +python/man/$(EXE).1.gz: python/man/manpage.txt + @sed -e 's/^\.TH.*/\.TH man 1 \"$(shell date)\" \"$(VERSION)\" \"$(EXE) man page\"/' \ + -e 's/^$$AUTHORS$$.*/$(AUTHORS)/' $^ > $@ + @gzip $@ + + + +$(BUILDDIR)/%.o: %.f90 + @echo "Compiling $@..." + @mkdir -p $(BUILDDIR)/$(dir $^) + @$(FC) $(FFLAGS) -J $(BUILDDIR) -I $(BUILDDIR) -fPIC -o $@ -c $< + + +install: python/dist/$(PYTHON_PKG_NAME)-$(VERSION).tar.gz + @echo "Installing $^" + @pip install $^ + + +uninstall: + @pip uninstall -y $(PYTHON_PKG_NAME) + + +clean: + @rm -rf $(BUILDDIR) + @rm -f python/$(PYTHON_PKG_NAME)/*.so + @rm -rf python/dist + @rm -rf python/*.egg-info + @rm -f python/VERSION + @rm -f python/man/*.gz + + +help: + @echo "Type 'make' or 'make all' to build the executable and the Python shared library" + @echo "Type 'make install' to install the code." + @echo "By default, this installation is located in $(PREFIX)." + @echo "The installation prefix can be changed with the 'PREFIX' variable" + @echo "It is also possible to add debugging symbols with the 'DEBUG' variable." + @echo "For example, to install in another (writable) location with debugging options:" + @echo " make DEBUG=1 && make install PREFIX=/opt" + diff --git a/New_libraries/DFM_library/ACCURACY_LIBRARY/accuracy.f90 b/src/fortran/DFM_library/ACCURACY_LIBRARY/accuracy.f90 similarity index 100% rename from New_libraries/DFM_library/ACCURACY_LIBRARY/accuracy.f90 rename to src/fortran/DFM_library/ACCURACY_LIBRARY/accuracy.f90 diff --git a/New_libraries/DFM_library/ASYMPTOTIC_VALUES_LIBRARY/calc_asymptotic.f90 b/src/fortran/DFM_library/ASYMPTOTIC_VALUES_LIBRARY/calc_asymptotic.f90 similarity index 100% rename from New_libraries/DFM_library/ASYMPTOTIC_VALUES_LIBRARY/calc_asymptotic.f90 rename to src/fortran/DFM_library/ASYMPTOTIC_VALUES_LIBRARY/calc_asymptotic.f90 diff --git a/New_libraries/DFM_library/ASYMPTOTIC_VALUES_LIBRARY/gamma_asymptotic.f90 b/src/fortran/DFM_library/ASYMPTOTIC_VALUES_LIBRARY/gamma_asymptotic.f90 similarity index 100% rename from New_libraries/DFM_library/ASYMPTOTIC_VALUES_LIBRARY/gamma_asymptotic.f90 rename to src/fortran/DFM_library/ASYMPTOTIC_VALUES_LIBRARY/gamma_asymptotic.f90 diff --git a/New_libraries/DFM_library/ASYMPTOTIC_VALUES_LIBRARY/gr_asymptotic.f90 b/src/fortran/DFM_library/ASYMPTOTIC_VALUES_LIBRARY/gr_asymptotic.f90 similarity index 100% rename from New_libraries/DFM_library/ASYMPTOTIC_VALUES_LIBRARY/gr_asymptotic.f90 rename to src/fortran/DFM_library/ASYMPTOTIC_VALUES_LIBRARY/gr_asymptotic.f90 diff --git a/New_libraries/DFM_library/ASYMPTOTIC_VALUES_LIBRARY/sq_asymptotic.f90 b/src/fortran/DFM_library/ASYMPTOTIC_VALUES_LIBRARY/sq_asymptotic.f90 similarity index 100% rename from New_libraries/DFM_library/ASYMPTOTIC_VALUES_LIBRARY/sq_asymptotic.f90 rename to src/fortran/DFM_library/ASYMPTOTIC_VALUES_LIBRARY/sq_asymptotic.f90 diff --git a/New_libraries/DFM_library/CALCULATORS_LIBRARY/calculators_1.f90 b/src/fortran/DFM_library/CALCULATORS_LIBRARY/calculators_1.f90 similarity index 100% rename from New_libraries/DFM_library/CALCULATORS_LIBRARY/calculators_1.f90 rename to src/fortran/DFM_library/CALCULATORS_LIBRARY/calculators_1.f90 diff --git a/New_libraries/DFM_library/CALCULATORS_LIBRARY/calculators_2.f90 b/src/fortran/DFM_library/CALCULATORS_LIBRARY/calculators_2.f90 similarity index 100% rename from New_libraries/DFM_library/CALCULATORS_LIBRARY/calculators_2.f90 rename to src/fortran/DFM_library/CALCULATORS_LIBRARY/calculators_2.f90 diff --git a/New_libraries/DFM_library/CALCULATORS_LIBRARY/calculators_3.f90 b/src/fortran/DFM_library/CALCULATORS_LIBRARY/calculators_3.f90 similarity index 100% rename from New_libraries/DFM_library/CALCULATORS_LIBRARY/calculators_3.f90 rename to src/fortran/DFM_library/CALCULATORS_LIBRARY/calculators_3.f90 diff --git a/New_libraries/DFM_library/CALCULATORS_LIBRARY/calculators_4.f90 b/src/fortran/DFM_library/CALCULATORS_LIBRARY/calculators_4.f90 similarity index 100% rename from New_libraries/DFM_library/CALCULATORS_LIBRARY/calculators_4.f90 rename to src/fortran/DFM_library/CALCULATORS_LIBRARY/calculators_4.f90 diff --git a/New_libraries/DFM_library/CALCULATORS_LIBRARY/calculators_5.f90 b/src/fortran/DFM_library/CALCULATORS_LIBRARY/calculators_5.f90 similarity index 100% rename from New_libraries/DFM_library/CALCULATORS_LIBRARY/calculators_5.f90 rename to src/fortran/DFM_library/CALCULATORS_LIBRARY/calculators_5.f90 diff --git a/New_libraries/DFM_library/CALCULATORS_LIBRARY/calculators_6.f90 b/src/fortran/DFM_library/CALCULATORS_LIBRARY/calculators_6.f90 similarity index 100% rename from New_libraries/DFM_library/CALCULATORS_LIBRARY/calculators_6.f90 rename to src/fortran/DFM_library/CALCULATORS_LIBRARY/calculators_6.f90 diff --git a/New_libraries/DFM_library/CALCULATORS_LIBRARY/calculators_7.f90 b/src/fortran/DFM_library/CALCULATORS_LIBRARY/calculators_7.f90 similarity index 100% rename from New_libraries/DFM_library/CALCULATORS_LIBRARY/calculators_7.f90 rename to src/fortran/DFM_library/CALCULATORS_LIBRARY/calculators_7.f90 diff --git a/New_libraries/DFM_library/CALCULATORS_LIBRARY/calculators_8.f90 b/src/fortran/DFM_library/CALCULATORS_LIBRARY/calculators_8.f90 similarity index 100% rename from New_libraries/DFM_library/CALCULATORS_LIBRARY/calculators_8.f90 rename to src/fortran/DFM_library/CALCULATORS_LIBRARY/calculators_8.f90 diff --git a/New_libraries/DFM_library/CALCULATORS_LIBRARY/calculators_9.f90 b/src/fortran/DFM_library/CALCULATORS_LIBRARY/calculators_9.f90 similarity index 100% rename from New_libraries/DFM_library/CALCULATORS_LIBRARY/calculators_9.f90 rename to src/fortran/DFM_library/CALCULATORS_LIBRARY/calculators_9.f90 diff --git a/New_libraries/DFM_library/CALCULATORS_LIBRARY/calculators_p.f90 b/src/fortran/DFM_library/CALCULATORS_LIBRARY/calculators_p.f90 similarity index 100% rename from New_libraries/DFM_library/CALCULATORS_LIBRARY/calculators_p.f90 rename to src/fortran/DFM_library/CALCULATORS_LIBRARY/calculators_p.f90 diff --git a/New_libraries/DFM_library/CALCULATORS_LIBRARY/call_calc_1.f90 b/src/fortran/DFM_library/CALCULATORS_LIBRARY/call_calc_1.f90 similarity index 100% rename from New_libraries/DFM_library/CALCULATORS_LIBRARY/call_calc_1.f90 rename to src/fortran/DFM_library/CALCULATORS_LIBRARY/call_calc_1.f90 diff --git a/New_libraries/DFM_library/CALCULATORS_LIBRARY/call_calc_2.f90 b/src/fortran/DFM_library/CALCULATORS_LIBRARY/call_calc_2.f90 similarity index 100% rename from New_libraries/DFM_library/CALCULATORS_LIBRARY/call_calc_2.f90 rename to src/fortran/DFM_library/CALCULATORS_LIBRARY/call_calc_2.f90 diff --git a/New_libraries/DFM_library/CALCULATORS_LIBRARY/call_calc_3.f90 b/src/fortran/DFM_library/CALCULATORS_LIBRARY/call_calc_3.f90 similarity index 100% rename from New_libraries/DFM_library/CALCULATORS_LIBRARY/call_calc_3.f90 rename to src/fortran/DFM_library/CALCULATORS_LIBRARY/call_calc_3.f90 diff --git a/New_libraries/DFM_library/CALCULATORS_LIBRARY/call_calc_4.f90 b/src/fortran/DFM_library/CALCULATORS_LIBRARY/call_calc_4.f90 similarity index 100% rename from New_libraries/DFM_library/CALCULATORS_LIBRARY/call_calc_4.f90 rename to src/fortran/DFM_library/CALCULATORS_LIBRARY/call_calc_4.f90 diff --git a/New_libraries/DFM_library/CALCULATORS_LIBRARY/call_calc_5.f90 b/src/fortran/DFM_library/CALCULATORS_LIBRARY/call_calc_5.f90 similarity index 100% rename from New_libraries/DFM_library/CALCULATORS_LIBRARY/call_calc_5.f90 rename to src/fortran/DFM_library/CALCULATORS_LIBRARY/call_calc_5.f90 diff --git a/New_libraries/DFM_library/CALCULATORS_LIBRARY/call_calc_6.f90 b/src/fortran/DFM_library/CALCULATORS_LIBRARY/call_calc_6.f90 similarity index 100% rename from New_libraries/DFM_library/CALCULATORS_LIBRARY/call_calc_6.f90 rename to src/fortran/DFM_library/CALCULATORS_LIBRARY/call_calc_6.f90 diff --git a/New_libraries/DFM_library/CALCULATORS_LIBRARY/call_calc_7.f90 b/src/fortran/DFM_library/CALCULATORS_LIBRARY/call_calc_7.f90 similarity index 100% rename from New_libraries/DFM_library/CALCULATORS_LIBRARY/call_calc_7.f90 rename to src/fortran/DFM_library/CALCULATORS_LIBRARY/call_calc_7.f90 diff --git a/New_libraries/DFM_library/CALCULATORS_LIBRARY/call_calc_8.f90 b/src/fortran/DFM_library/CALCULATORS_LIBRARY/call_calc_8.f90 similarity index 100% rename from New_libraries/DFM_library/CALCULATORS_LIBRARY/call_calc_8.f90 rename to src/fortran/DFM_library/CALCULATORS_LIBRARY/call_calc_8.f90 diff --git a/New_libraries/DFM_library/CALCULATORS_LIBRARY/call_calc_9.f90 b/src/fortran/DFM_library/CALCULATORS_LIBRARY/call_calc_9.f90 similarity index 100% rename from New_libraries/DFM_library/CALCULATORS_LIBRARY/call_calc_9.f90 rename to src/fortran/DFM_library/CALCULATORS_LIBRARY/call_calc_9.f90 diff --git a/New_libraries/DFM_library/CALCULATORS_LIBRARY/call_calc_p.f90 b/src/fortran/DFM_library/CALCULATORS_LIBRARY/call_calc_p.f90 similarity index 100% rename from New_libraries/DFM_library/CALCULATORS_LIBRARY/call_calc_p.f90 rename to src/fortran/DFM_library/CALCULATORS_LIBRARY/call_calc_p.f90 diff --git a/New_libraries/DFM_library/CONFINEMENT_LIBRARY/Note.txt b/src/fortran/DFM_library/CONFINEMENT_LIBRARY/Note.txt similarity index 100% rename from New_libraries/DFM_library/CONFINEMENT_LIBRARY/Note.txt rename to src/fortran/DFM_library/CONFINEMENT_LIBRARY/Note.txt diff --git a/New_libraries/DFM_library/CONFINEMENT_LIBRARY/confinement_ff.f90 b/src/fortran/DFM_library/CONFINEMENT_LIBRARY/confinement_ff.f90 similarity index 100% rename from New_libraries/DFM_library/CONFINEMENT_LIBRARY/confinement_ff.f90 rename to src/fortran/DFM_library/CONFINEMENT_LIBRARY/confinement_ff.f90 diff --git a/New_libraries/DFM_library/CONFINEMENT_LIBRARY/confinement_wf.f90 b/src/fortran/DFM_library/CONFINEMENT_LIBRARY/confinement_wf.f90 similarity index 100% rename from New_libraries/DFM_library/CONFINEMENT_LIBRARY/confinement_wf.f90 rename to src/fortran/DFM_library/CONFINEMENT_LIBRARY/confinement_wf.f90 diff --git a/New_libraries/DFM_library/CONFINEMENT_LIBRARY/coulomb.f90 b/src/fortran/DFM_library/CONFINEMENT_LIBRARY/coulomb.f90 similarity index 100% rename from New_libraries/DFM_library/CONFINEMENT_LIBRARY/coulomb.f90 rename to src/fortran/DFM_library/CONFINEMENT_LIBRARY/coulomb.f90 diff --git a/New_libraries/DFM_library/DAMPING_LIBRARY/calc_damping.f90 b/src/fortran/DFM_library/DAMPING_LIBRARY/calc_damping.f90 similarity index 100% rename from New_libraries/DFM_library/DAMPING_LIBRARY/calc_damping.f90 rename to src/fortran/DFM_library/DAMPING_LIBRARY/calc_damping.f90 diff --git a/New_libraries/DFM_library/DAMPING_LIBRARY/classical_fluid.f90 b/src/fortran/DFM_library/DAMPING_LIBRARY/classical_fluid.f90 similarity index 100% rename from New_libraries/DFM_library/DAMPING_LIBRARY/classical_fluid.f90 rename to src/fortran/DFM_library/DAMPING_LIBRARY/classical_fluid.f90 diff --git a/New_libraries/DFM_library/DAMPING_LIBRARY/decay_rate.f90 b/src/fortran/DFM_library/DAMPING_LIBRARY/decay_rate.f90 similarity index 100% rename from New_libraries/DFM_library/DAMPING_LIBRARY/decay_rate.f90 rename to src/fortran/DFM_library/DAMPING_LIBRARY/decay_rate.f90 diff --git a/New_libraries/DFM_library/DAMPING_LIBRARY/diffusion_coefficient.f90 b/src/fortran/DFM_library/DAMPING_LIBRARY/diffusion_coefficient.f90 similarity index 100% rename from New_libraries/DFM_library/DAMPING_LIBRARY/diffusion_coefficient.f90 rename to src/fortran/DFM_library/DAMPING_LIBRARY/diffusion_coefficient.f90 diff --git a/New_libraries/DFM_library/DAMPING_LIBRARY/diffusion_coefficient_2.f90 b/src/fortran/DFM_library/DAMPING_LIBRARY/diffusion_coefficient_2.f90 similarity index 100% rename from New_libraries/DFM_library/DAMPING_LIBRARY/diffusion_coefficient_2.f90 rename to src/fortran/DFM_library/DAMPING_LIBRARY/diffusion_coefficient_2.f90 diff --git a/New_libraries/DFM_library/DAMPING_LIBRARY/electron_phonon_int.f90 b/src/fortran/DFM_library/DAMPING_LIBRARY/electron_phonon_int.f90 similarity index 100% rename from New_libraries/DFM_library/DAMPING_LIBRARY/electron_phonon_int.f90 rename to src/fortran/DFM_library/DAMPING_LIBRARY/electron_phonon_int.f90 diff --git a/New_libraries/DFM_library/DAMPING_LIBRARY/external_damping.f90 b/src/fortran/DFM_library/DAMPING_LIBRARY/external_damping.f90 similarity index 100% rename from New_libraries/DFM_library/DAMPING_LIBRARY/external_damping.f90 rename to src/fortran/DFM_library/DAMPING_LIBRARY/external_damping.f90 diff --git a/New_libraries/DFM_library/DAMPING_LIBRARY/lifetime.f90 b/src/fortran/DFM_library/DAMPING_LIBRARY/lifetime.f90 similarity index 100% rename from New_libraries/DFM_library/DAMPING_LIBRARY/lifetime.f90 rename to src/fortran/DFM_library/DAMPING_LIBRARY/lifetime.f90 diff --git a/New_libraries/DFM_library/DAMPING_LIBRARY/mean_free_path.f90 b/src/fortran/DFM_library/DAMPING_LIBRARY/mean_free_path.f90 similarity index 100% rename from New_libraries/DFM_library/DAMPING_LIBRARY/mean_free_path.f90 rename to src/fortran/DFM_library/DAMPING_LIBRARY/mean_free_path.f90 diff --git a/New_libraries/DFM_library/DAMPING_LIBRARY/packing_fraction.f90 b/src/fortran/DFM_library/DAMPING_LIBRARY/packing_fraction.f90 similarity index 100% rename from New_libraries/DFM_library/DAMPING_LIBRARY/packing_fraction.f90 rename to src/fortran/DFM_library/DAMPING_LIBRARY/packing_fraction.f90 diff --git a/New_libraries/DFM_library/DAMPING_LIBRARY/plasmon_damping.f90 b/src/fortran/DFM_library/DAMPING_LIBRARY/plasmon_damping.f90 similarity index 100% rename from New_libraries/DFM_library/DAMPING_LIBRARY/plasmon_damping.f90 rename to src/fortran/DFM_library/DAMPING_LIBRARY/plasmon_damping.f90 diff --git a/New_libraries/DFM_library/DAMPING_LIBRARY/relaxation_time_dynamic.f90 b/src/fortran/DFM_library/DAMPING_LIBRARY/relaxation_time_dynamic.f90 similarity index 100% rename from New_libraries/DFM_library/DAMPING_LIBRARY/relaxation_time_dynamic.f90 rename to src/fortran/DFM_library/DAMPING_LIBRARY/relaxation_time_dynamic.f90 diff --git a/New_libraries/DFM_library/DAMPING_LIBRARY/relaxation_time_static.f90 b/src/fortran/DFM_library/DAMPING_LIBRARY/relaxation_time_static.f90 similarity index 100% rename from New_libraries/DFM_library/DAMPING_LIBRARY/relaxation_time_static.f90 rename to src/fortran/DFM_library/DAMPING_LIBRARY/relaxation_time_static.f90 diff --git a/New_libraries/DFM_library/DAMPING_LIBRARY/scattering_length.f90 b/src/fortran/DFM_library/DAMPING_LIBRARY/scattering_length.f90 similarity index 100% rename from New_libraries/DFM_library/DAMPING_LIBRARY/scattering_length.f90 rename to src/fortran/DFM_library/DAMPING_LIBRARY/scattering_length.f90 diff --git a/New_libraries/DFM_library/DAMPING_LIBRARY/viscosity.f90 b/src/fortran/DFM_library/DAMPING_LIBRARY/viscosity.f90 similarity index 100% rename from New_libraries/DFM_library/DAMPING_LIBRARY/viscosity.f90 rename to src/fortran/DFM_library/DAMPING_LIBRARY/viscosity.f90 diff --git a/New_libraries/DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfuncl_magn_dynamic.f90 b/src/fortran/DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfuncl_magn_dynamic.f90 similarity index 100% rename from New_libraries/DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfuncl_magn_dynamic.f90 rename to src/fortran/DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfuncl_magn_dynamic.f90 diff --git a/New_libraries/DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfuncl_stan_dynamic.f90 b/src/fortran/DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfuncl_stan_dynamic.f90 similarity index 100% rename from New_libraries/DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfuncl_stan_dynamic.f90 rename to src/fortran/DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfuncl_stan_dynamic.f90 diff --git a/New_libraries/DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfuncl_stan_dynamic.f90~ b/src/fortran/DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfuncl_stan_dynamic.f90~ similarity index 100% rename from New_libraries/DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfuncl_stan_dynamic.f90~ rename to src/fortran/DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfuncl_stan_dynamic.f90~ diff --git a/New_libraries/DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfuncl_stan_dynamic_2.f90 b/src/fortran/DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfuncl_stan_dynamic_2.f90 similarity index 100% rename from New_libraries/DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfuncl_stan_dynamic_2.f90 rename to src/fortran/DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfuncl_stan_dynamic_2.f90 diff --git a/New_libraries/DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfuncl_static.f90 b/src/fortran/DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfuncl_static.f90 similarity index 100% rename from New_libraries/DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfuncl_static.f90 rename to src/fortran/DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfuncl_static.f90 diff --git a/New_libraries/DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfunct_dynamic.f90 b/src/fortran/DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfunct_dynamic.f90 similarity index 100% rename from New_libraries/DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfunct_dynamic.f90 rename to src/fortran/DFM_library/DIELECTRIC_FUNCTIONS_LIBRARY/dfunct_dynamic.f90 diff --git a/New_libraries/DFM_library/DIMENSIONS_LIBRARY/dimensions.f90 b/src/fortran/DFM_library/DIMENSIONS_LIBRARY/dimensions.f90 similarity index 100% rename from New_libraries/DFM_library/DIMENSIONS_LIBRARY/dimensions.f90 rename to src/fortran/DFM_library/DIMENSIONS_LIBRARY/dimensions.f90 diff --git a/New_libraries/DFM_library/ENERGIES_LIBRARY/PhysRevB.11.113.pdf b/src/fortran/DFM_library/ENERGIES_LIBRARY/PhysRevB.11.113.pdf similarity index 100% rename from New_libraries/DFM_library/ENERGIES_LIBRARY/PhysRevB.11.113.pdf rename to src/fortran/DFM_library/ENERGIES_LIBRARY/PhysRevB.11.113.pdf diff --git a/New_libraries/DFM_library/ENERGIES_LIBRARY/correlation_energies.f90 b/src/fortran/DFM_library/ENERGIES_LIBRARY/correlation_energies.f90 similarity index 100% rename from New_libraries/DFM_library/ENERGIES_LIBRARY/correlation_energies.f90 rename to src/fortran/DFM_library/ENERGIES_LIBRARY/correlation_energies.f90 diff --git a/New_libraries/DFM_library/ENERGIES_LIBRARY/delta_t.f90 b/src/fortran/DFM_library/ENERGIES_LIBRARY/delta_t.f90 similarity index 100% rename from New_libraries/DFM_library/ENERGIES_LIBRARY/delta_t.f90 rename to src/fortran/DFM_library/ENERGIES_LIBRARY/delta_t.f90 diff --git a/New_libraries/DFM_library/ENERGIES_LIBRARY/exchange_energies.f90 b/src/fortran/DFM_library/ENERGIES_LIBRARY/exchange_energies.f90 similarity index 100% rename from New_libraries/DFM_library/ENERGIES_LIBRARY/exchange_energies.f90 rename to src/fortran/DFM_library/ENERGIES_LIBRARY/exchange_energies.f90 diff --git a/New_libraries/DFM_library/ENERGIES_LIBRARY/kinetic_energies.f90 b/src/fortran/DFM_library/ENERGIES_LIBRARY/kinetic_energies.f90 similarity index 100% rename from New_libraries/DFM_library/ENERGIES_LIBRARY/kinetic_energies.f90 rename to src/fortran/DFM_library/ENERGIES_LIBRARY/kinetic_energies.f90 diff --git a/New_libraries/DFM_library/ENERGIES_LIBRARY/xc_energies.f90 b/src/fortran/DFM_library/ENERGIES_LIBRARY/xc_energies.f90 similarity index 100% rename from New_libraries/DFM_library/ENERGIES_LIBRARY/xc_energies.f90 rename to src/fortran/DFM_library/ENERGIES_LIBRARY/xc_energies.f90 diff --git a/New_libraries/DFM_library/ERROR_HANDLING_LIBRARY/error_caltech.f90 b/src/fortran/DFM_library/ERROR_HANDLING_LIBRARY/error_caltech.f90 similarity index 100% rename from New_libraries/DFM_library/ERROR_HANDLING_LIBRARY/error_caltech.f90 rename to src/fortran/DFM_library/ERROR_HANDLING_LIBRARY/error_caltech.f90 diff --git a/New_libraries/DFM_library/INPUT_OUTPUT_LIBRARY/change_filenames.f90 b/src/fortran/DFM_library/INPUT_OUTPUT_LIBRARY/change_filenames.f90 similarity index 100% rename from New_libraries/DFM_library/INPUT_OUTPUT_LIBRARY/change_filenames.f90 rename to src/fortran/DFM_library/INPUT_OUTPUT_LIBRARY/change_filenames.f90 diff --git a/New_libraries/DFM_library/INPUT_OUTPUT_LIBRARY/close_files.f90 b/src/fortran/DFM_library/INPUT_OUTPUT_LIBRARY/close_files.f90 similarity index 100% rename from New_libraries/DFM_library/INPUT_OUTPUT_LIBRARY/close_files.f90 rename to src/fortran/DFM_library/INPUT_OUTPUT_LIBRARY/close_files.f90 diff --git a/New_libraries/DFM_library/INPUT_OUTPUT_LIBRARY/diel_func.txt b/src/fortran/DFM_library/INPUT_OUTPUT_LIBRARY/diel_func.txt similarity index 100% rename from New_libraries/DFM_library/INPUT_OUTPUT_LIBRARY/diel_func.txt rename to src/fortran/DFM_library/INPUT_OUTPUT_LIBRARY/diel_func.txt diff --git a/New_libraries/DFM_library/INPUT_OUTPUT_LIBRARY/filenames.f90 b/src/fortran/DFM_library/INPUT_OUTPUT_LIBRARY/filenames.f90 similarity index 100% rename from New_libraries/DFM_library/INPUT_OUTPUT_LIBRARY/filenames.f90 rename to src/fortran/DFM_library/INPUT_OUTPUT_LIBRARY/filenames.f90 diff --git a/New_libraries/DFM_library/INPUT_OUTPUT_LIBRARY/input_values.f90 b/src/fortran/DFM_library/INPUT_OUTPUT_LIBRARY/input_values.f90 similarity index 100% rename from New_libraries/DFM_library/INPUT_OUTPUT_LIBRARY/input_values.f90 rename to src/fortran/DFM_library/INPUT_OUTPUT_LIBRARY/input_values.f90 diff --git a/New_libraries/DFM_library/INPUT_OUTPUT_LIBRARY/missing.txt b/src/fortran/DFM_library/INPUT_OUTPUT_LIBRARY/missing.txt similarity index 100% rename from New_libraries/DFM_library/INPUT_OUTPUT_LIBRARY/missing.txt rename to src/fortran/DFM_library/INPUT_OUTPUT_LIBRARY/missing.txt diff --git a/New_libraries/DFM_library/INPUT_OUTPUT_LIBRARY/nomenclature.txt b/src/fortran/DFM_library/INPUT_OUTPUT_LIBRARY/nomenclature.txt similarity index 100% rename from New_libraries/DFM_library/INPUT_OUTPUT_LIBRARY/nomenclature.txt rename to src/fortran/DFM_library/INPUT_OUTPUT_LIBRARY/nomenclature.txt diff --git a/New_libraries/DFM_library/INPUT_OUTPUT_LIBRARY/open_files.f90 b/src/fortran/DFM_library/INPUT_OUTPUT_LIBRARY/open_files.f90 similarity index 100% rename from New_libraries/DFM_library/INPUT_OUTPUT_LIBRARY/open_files.f90 rename to src/fortran/DFM_library/INPUT_OUTPUT_LIBRARY/open_files.f90 diff --git a/New_libraries/DFM_library/INPUT_OUTPUT_LIBRARY/outfiles.f90 b/src/fortran/DFM_library/INPUT_OUTPUT_LIBRARY/outfiles.f90 similarity index 100% rename from New_libraries/DFM_library/INPUT_OUTPUT_LIBRARY/outfiles.f90 rename to src/fortran/DFM_library/INPUT_OUTPUT_LIBRARY/outfiles.f90 diff --git a/New_libraries/DFM_library/INPUT_OUTPUT_LIBRARY/read_data.f90 b/src/fortran/DFM_library/INPUT_OUTPUT_LIBRARY/read_data.f90 similarity index 100% rename from New_libraries/DFM_library/INPUT_OUTPUT_LIBRARY/read_data.f90 rename to src/fortran/DFM_library/INPUT_OUTPUT_LIBRARY/read_data.f90 diff --git a/New_libraries/DFM_library/INPUT_OUTPUT_LIBRARY/store_coef.f90 b/src/fortran/DFM_library/INPUT_OUTPUT_LIBRARY/store_coef.f90 similarity index 100% rename from New_libraries/DFM_library/INPUT_OUTPUT_LIBRARY/store_coef.f90 rename to src/fortran/DFM_library/INPUT_OUTPUT_LIBRARY/store_coef.f90 diff --git a/New_libraries/DFM_library/INTERACTION_POTENTIALS_LIBRARY/interaction_potentials_k.f90 b/src/fortran/DFM_library/INTERACTION_POTENTIALS_LIBRARY/interaction_potentials_k.f90 similarity index 100% rename from New_libraries/DFM_library/INTERACTION_POTENTIALS_LIBRARY/interaction_potentials_k.f90 rename to src/fortran/DFM_library/INTERACTION_POTENTIALS_LIBRARY/interaction_potentials_k.f90 diff --git a/New_libraries/DFM_library/INTERACTION_POTENTIALS_LIBRARY/interaction_potentials_r.f90 b/src/fortran/DFM_library/INTERACTION_POTENTIALS_LIBRARY/interaction_potentials_r.f90 similarity index 100% rename from New_libraries/DFM_library/INTERACTION_POTENTIALS_LIBRARY/interaction_potentials_r.f90 rename to src/fortran/DFM_library/INTERACTION_POTENTIALS_LIBRARY/interaction_potentials_r.f90 diff --git a/New_libraries/DFM_library/LANDAU_PARAMETERS_LIBRARY/landau.f90 b/src/fortran/DFM_library/LANDAU_PARAMETERS_LIBRARY/landau.f90 similarity index 100% rename from New_libraries/DFM_library/LANDAU_PARAMETERS_LIBRARY/landau.f90 rename to src/fortran/DFM_library/LANDAU_PARAMETERS_LIBRARY/landau.f90 diff --git a/New_libraries/DFM_library/LOCAL_FIELD_LIBRARY/101.pdf b/src/fortran/DFM_library/LOCAL_FIELD_LIBRARY/101.pdf similarity index 100% rename from New_libraries/DFM_library/LOCAL_FIELD_LIBRARY/101.pdf rename to src/fortran/DFM_library/LOCAL_FIELD_LIBRARY/101.pdf diff --git a/New_libraries/DFM_library/LOCAL_FIELD_LIBRARY/Multipair_excitations_and_sum_rules_in_i.pdf b/src/fortran/DFM_library/LOCAL_FIELD_LIBRARY/Multipair_excitations_and_sum_rules_in_i.pdf similarity index 100% rename from New_libraries/DFM_library/LOCAL_FIELD_LIBRARY/Multipair_excitations_and_sum_rules_in_i.pdf rename to src/fortran/DFM_library/LOCAL_FIELD_LIBRARY/Multipair_excitations_and_sum_rules_in_i.pdf diff --git a/New_libraries/DFM_library/LOCAL_FIELD_LIBRARY/PhysRevB.10.3052.pdf b/src/fortran/DFM_library/LOCAL_FIELD_LIBRARY/PhysRevB.10.3052.pdf similarity index 100% rename from New_libraries/DFM_library/LOCAL_FIELD_LIBRARY/PhysRevB.10.3052.pdf rename to src/fortran/DFM_library/LOCAL_FIELD_LIBRARY/PhysRevB.10.3052.pdf diff --git a/New_libraries/DFM_library/LOCAL_FIELD_LIBRARY/PhysRevB.17.4512.pdf b/src/fortran/DFM_library/LOCAL_FIELD_LIBRARY/PhysRevB.17.4512.pdf similarity index 100% rename from New_libraries/DFM_library/LOCAL_FIELD_LIBRARY/PhysRevB.17.4512.pdf rename to src/fortran/DFM_library/LOCAL_FIELD_LIBRARY/PhysRevB.17.4512.pdf diff --git a/New_libraries/DFM_library/LOCAL_FIELD_LIBRARY/iq_functions_1.f90 b/src/fortran/DFM_library/LOCAL_FIELD_LIBRARY/iq_functions_1.f90 similarity index 100% rename from New_libraries/DFM_library/LOCAL_FIELD_LIBRARY/iq_functions_1.f90 rename to src/fortran/DFM_library/LOCAL_FIELD_LIBRARY/iq_functions_1.f90 diff --git a/New_libraries/DFM_library/LOCAL_FIELD_LIBRARY/iq_functions_2.f90 b/src/fortran/DFM_library/LOCAL_FIELD_LIBRARY/iq_functions_2.f90 similarity index 100% rename from New_libraries/DFM_library/LOCAL_FIELD_LIBRARY/iq_functions_2.f90 rename to src/fortran/DFM_library/LOCAL_FIELD_LIBRARY/iq_functions_2.f90 diff --git a/New_libraries/DFM_library/LOCAL_FIELD_LIBRARY/local_field_dynamic.f90 b/src/fortran/DFM_library/LOCAL_FIELD_LIBRARY/local_field_dynamic.f90 similarity index 100% rename from New_libraries/DFM_library/LOCAL_FIELD_LIBRARY/local_field_dynamic.f90 rename to src/fortran/DFM_library/LOCAL_FIELD_LIBRARY/local_field_dynamic.f90 diff --git a/New_libraries/DFM_library/LOCAL_FIELD_LIBRARY/local_field_static.f90 b/src/fortran/DFM_library/LOCAL_FIELD_LIBRARY/local_field_static.f90 similarity index 100% rename from New_libraries/DFM_library/LOCAL_FIELD_LIBRARY/local_field_static.f90 rename to src/fortran/DFM_library/LOCAL_FIELD_LIBRARY/local_field_static.f90 diff --git a/New_libraries/DFM_library/LOCAL_FIELD_LIBRARY/local_field_static_2.f90 b/src/fortran/DFM_library/LOCAL_FIELD_LIBRARY/local_field_static_2.f90 similarity index 100% rename from New_libraries/DFM_library/LOCAL_FIELD_LIBRARY/local_field_static_2.f90 rename to src/fortran/DFM_library/LOCAL_FIELD_LIBRARY/local_field_static_2.f90 diff --git a/New_libraries/DFM_library/MEMORY_FUNCTIONS_LIBRARY/memory2_functions.f90 b/src/fortran/DFM_library/MEMORY_FUNCTIONS_LIBRARY/memory2_functions.f90 similarity index 100% rename from New_libraries/DFM_library/MEMORY_FUNCTIONS_LIBRARY/memory2_functions.f90 rename to src/fortran/DFM_library/MEMORY_FUNCTIONS_LIBRARY/memory2_functions.f90 diff --git a/New_libraries/DFM_library/MEMORY_FUNCTIONS_LIBRARY/memory_functions.f90 b/src/fortran/DFM_library/MEMORY_FUNCTIONS_LIBRARY/memory_functions.f90 similarity index 100% rename from New_libraries/DFM_library/MEMORY_FUNCTIONS_LIBRARY/memory_functions.f90 rename to src/fortran/DFM_library/MEMORY_FUNCTIONS_LIBRARY/memory_functions.f90 diff --git a/New_libraries/DFM_library/MOMENTS_LIBRARY/loss_moments.f90 b/src/fortran/DFM_library/MOMENTS_LIBRARY/loss_moments.f90 similarity index 100% rename from New_libraries/DFM_library/MOMENTS_LIBRARY/loss_moments.f90 rename to src/fortran/DFM_library/MOMENTS_LIBRARY/loss_moments.f90 diff --git a/New_libraries/DFM_library/MOMENTS_LIBRARY/moments.f90 b/src/fortran/DFM_library/MOMENTS_LIBRARY/moments.f90 similarity index 100% rename from New_libraries/DFM_library/MOMENTS_LIBRARY/moments.f90 rename to src/fortran/DFM_library/MOMENTS_LIBRARY/moments.f90 diff --git a/New_libraries/DFM_library/MOMENTS_LIBRARY/moments_loss.f90 b/src/fortran/DFM_library/MOMENTS_LIBRARY/moments_loss.f90 similarity index 100% rename from New_libraries/DFM_library/MOMENTS_LIBRARY/moments_loss.f90 rename to src/fortran/DFM_library/MOMENTS_LIBRARY/moments_loss.f90 diff --git a/New_libraries/DFM_library/NEVANLINNA_FUNCTIONS_LIBRARY/Nevanlinna_functions.f90 b/src/fortran/DFM_library/NEVANLINNA_FUNCTIONS_LIBRARY/Nevanlinna_functions.f90 similarity index 100% rename from New_libraries/DFM_library/NEVANLINNA_FUNCTIONS_LIBRARY/Nevanlinna_functions.f90 rename to src/fortran/DFM_library/NEVANLINNA_FUNCTIONS_LIBRARY/Nevanlinna_functions.f90 diff --git a/New_libraries/DFM_library/PAIR_CORRELATION_LIBRARY/PhysRevB.64.155102.pdf b/src/fortran/DFM_library/PAIR_CORRELATION_LIBRARY/PhysRevB.64.155102.pdf similarity index 100% rename from New_libraries/DFM_library/PAIR_CORRELATION_LIBRARY/PhysRevB.64.155102.pdf rename to src/fortran/DFM_library/PAIR_CORRELATION_LIBRARY/PhysRevB.64.155102.pdf diff --git a/New_libraries/DFM_library/PAIR_CORRELATION_LIBRARY/pair_correlation.f90 b/src/fortran/DFM_library/PAIR_CORRELATION_LIBRARY/pair_correlation.f90 similarity index 100% rename from New_libraries/DFM_library/PAIR_CORRELATION_LIBRARY/pair_correlation.f90 rename to src/fortran/DFM_library/PAIR_CORRELATION_LIBRARY/pair_correlation.f90 diff --git a/New_libraries/DFM_library/PAIR_DISTRIBUTION_FUNCTION/pair_distribution.f90 b/src/fortran/DFM_library/PAIR_DISTRIBUTION_FUNCTION/pair_distribution.f90 similarity index 100% rename from New_libraries/DFM_library/PAIR_DISTRIBUTION_FUNCTION/pair_distribution.f90 rename to src/fortran/DFM_library/PAIR_DISTRIBUTION_FUNCTION/pair_distribution.f90 diff --git a/New_libraries/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/Fermi_values.f90 b/src/fortran/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/Fermi_values.f90 similarity index 100% rename from New_libraries/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/Fermi_values.f90 rename to src/fortran/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/Fermi_values.f90 diff --git a/New_libraries/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/calc_Fermi.f90 b/src/fortran/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/calc_Fermi.f90 similarity index 100% rename from New_libraries/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/calc_Fermi.f90 rename to src/fortran/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/calc_Fermi.f90 diff --git a/New_libraries/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/calc_energies.f90 b/src/fortran/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/calc_energies.f90 similarity index 100% rename from New_libraries/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/calc_energies.f90 rename to src/fortran/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/calc_energies.f90 diff --git a/New_libraries/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/grand_partition.f90 b/src/fortran/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/grand_partition.f90 similarity index 100% rename from New_libraries/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/grand_partition.f90 rename to src/fortran/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/grand_partition.f90 diff --git a/New_libraries/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/material_properties.f90 b/src/fortran/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/material_properties.f90 similarity index 100% rename from New_libraries/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/material_properties.f90 rename to src/fortran/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/material_properties.f90 diff --git a/New_libraries/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/thermodynamic_properties.f90 b/src/fortran/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/thermodynamic_properties.f90 similarity index 100% rename from New_libraries/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/thermodynamic_properties.f90 rename to src/fortran/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/thermodynamic_properties.f90 diff --git a/New_libraries/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/thermodynamic_quantities.f90 b/src/fortran/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/thermodynamic_quantities.f90 similarity index 100% rename from New_libraries/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/thermodynamic_quantities.f90 rename to src/fortran/DFM_library/PHYSICAL_PROPERTIES_LIBRARY/thermodynamic_quantities.f90 diff --git a/New_libraries/DFM_library/PLASMON_LIBRARY/plasmon_dispersion.f90 b/src/fortran/DFM_library/PLASMON_LIBRARY/plasmon_dispersion.f90 similarity index 100% rename from New_libraries/DFM_library/PLASMON_LIBRARY/plasmon_dispersion.f90 rename to src/fortran/DFM_library/PLASMON_LIBRARY/plasmon_dispersion.f90 diff --git a/New_libraries/DFM_library/PLASMON_LIBRARY/plasmon_dispersion_2.f90 b/src/fortran/DFM_library/PLASMON_LIBRARY/plasmon_dispersion_2.f90 similarity index 100% rename from New_libraries/DFM_library/PLASMON_LIBRARY/plasmon_dispersion_2.f90 rename to src/fortran/DFM_library/PLASMON_LIBRARY/plasmon_dispersion_2.f90 diff --git a/New_libraries/DFM_library/PLASMON_LIBRARY/plasmon_ene.f90 b/src/fortran/DFM_library/PLASMON_LIBRARY/plasmon_ene.f90 similarity index 100% rename from New_libraries/DFM_library/PLASMON_LIBRARY/plasmon_ene.f90 rename to src/fortran/DFM_library/PLASMON_LIBRARY/plasmon_ene.f90 diff --git a/New_libraries/DFM_library/PLASMON_LIBRARY/q_bounds.f90 b/src/fortran/DFM_library/PLASMON_LIBRARY/q_bounds.f90 similarity index 100% rename from New_libraries/DFM_library/PLASMON_LIBRARY/q_bounds.f90 rename to src/fortran/DFM_library/PLASMON_LIBRARY/q_bounds.f90 diff --git a/New_libraries/DFM_library/POST_PROCESSING_LIBRARY/re_eps_0_treatment.f90 b/src/fortran/DFM_library/POST_PROCESSING_LIBRARY/re_eps_0_treatment.f90 similarity index 100% rename from New_libraries/DFM_library/POST_PROCESSING_LIBRARY/re_eps_0_treatment.f90 rename to src/fortran/DFM_library/POST_PROCESSING_LIBRARY/re_eps_0_treatment.f90 diff --git a/New_libraries/DFM_library/PRINT_LIBRARY/print_Fermi.f90 b/src/fortran/DFM_library/PRINT_LIBRARY/print_Fermi.f90 similarity index 100% rename from New_libraries/DFM_library/PRINT_LIBRARY/print_Fermi.f90 rename to src/fortran/DFM_library/PRINT_LIBRARY/print_Fermi.f90 diff --git a/New_libraries/DFM_library/PRINT_LIBRARY/print_asymptotic.f90 b/src/fortran/DFM_library/PRINT_LIBRARY/print_asymptotic.f90 similarity index 100% rename from New_libraries/DFM_library/PRINT_LIBRARY/print_asymptotic.f90 rename to src/fortran/DFM_library/PRINT_LIBRARY/print_asymptotic.f90 diff --git a/New_libraries/DFM_library/PRINT_LIBRARY/print_calc_type.f90 b/src/fortran/DFM_library/PRINT_LIBRARY/print_calc_type.f90 similarity index 100% rename from New_libraries/DFM_library/PRINT_LIBRARY/print_calc_type.f90 rename to src/fortran/DFM_library/PRINT_LIBRARY/print_calc_type.f90 diff --git a/New_libraries/DFM_library/PRINT_LIBRARY/print_energies.f90 b/src/fortran/DFM_library/PRINT_LIBRARY/print_energies.f90 similarity index 100% rename from New_libraries/DFM_library/PRINT_LIBRARY/print_energies.f90 rename to src/fortran/DFM_library/PRINT_LIBRARY/print_energies.f90 diff --git a/New_libraries/DFM_library/PRINT_LIBRARY/print_headers.f90 b/src/fortran/DFM_library/PRINT_LIBRARY/print_headers.f90 similarity index 100% rename from New_libraries/DFM_library/PRINT_LIBRARY/print_headers.f90 rename to src/fortran/DFM_library/PRINT_LIBRARY/print_headers.f90 diff --git a/New_libraries/DFM_library/PRINT_LIBRARY/print_material.f90 b/src/fortran/DFM_library/PRINT_LIBRARY/print_material.f90 similarity index 100% rename from New_libraries/DFM_library/PRINT_LIBRARY/print_material.f90 rename to src/fortran/DFM_library/PRINT_LIBRARY/print_material.f90 diff --git a/New_libraries/DFM_library/PRINT_LIBRARY/print_material_lengths.f90 b/src/fortran/DFM_library/PRINT_LIBRARY/print_material_lengths.f90 similarity index 100% rename from New_libraries/DFM_library/PRINT_LIBRARY/print_material_lengths.f90 rename to src/fortran/DFM_library/PRINT_LIBRARY/print_material_lengths.f90 diff --git a/New_libraries/DFM_library/PRINT_LIBRARY/print_plasmons.f90 b/src/fortran/DFM_library/PRINT_LIBRARY/print_plasmons.f90 similarity index 100% rename from New_libraries/DFM_library/PRINT_LIBRARY/print_plasmons.f90 rename to src/fortran/DFM_library/PRINT_LIBRARY/print_plasmons.f90 diff --git a/New_libraries/DFM_library/PRINT_LIBRARY/print_scale_param.f90 b/src/fortran/DFM_library/PRINT_LIBRARY/print_scale_param.f90 similarity index 100% rename from New_libraries/DFM_library/PRINT_LIBRARY/print_scale_param.f90 rename to src/fortran/DFM_library/PRINT_LIBRARY/print_scale_param.f90 diff --git a/New_libraries/DFM_library/PRINT_LIBRARY/print_thermal.f90 b/src/fortran/DFM_library/PRINT_LIBRARY/print_thermal.f90 similarity index 100% rename from New_libraries/DFM_library/PRINT_LIBRARY/print_thermal.f90 rename to src/fortran/DFM_library/PRINT_LIBRARY/print_thermal.f90 diff --git a/New_libraries/DFM_library/PRINT_LIBRARY/print_thermodynamics.f90 b/src/fortran/DFM_library/PRINT_LIBRARY/print_thermodynamics.f90 similarity index 100% rename from New_libraries/DFM_library/PRINT_LIBRARY/print_thermodynamics.f90 rename to src/fortran/DFM_library/PRINT_LIBRARY/print_thermodynamics.f90 diff --git a/New_libraries/DFM_library/PRINT_LIBRARY/printfiles.f90 b/src/fortran/DFM_library/PRINT_LIBRARY/printfiles.f90 similarity index 100% rename from New_libraries/DFM_library/PRINT_LIBRARY/printfiles.f90 rename to src/fortran/DFM_library/PRINT_LIBRARY/printfiles.f90 diff --git a/New_libraries/DFM_library/SCALE_PARAMETERS_LIBRARY/scale_parameters.f90 b/src/fortran/DFM_library/SCALE_PARAMETERS_LIBRARY/scale_parameters.f90 similarity index 100% rename from New_libraries/DFM_library/SCALE_PARAMETERS_LIBRARY/scale_parameters.f90 rename to src/fortran/DFM_library/SCALE_PARAMETERS_LIBRARY/scale_parameters.f90 diff --git a/New_libraries/DFM_library/SCREENING_LIBRARY/screening_vec1.f90 b/src/fortran/DFM_library/SCREENING_LIBRARY/screening_vec1.f90 similarity index 100% rename from New_libraries/DFM_library/SCREENING_LIBRARY/screening_vec1.f90 rename to src/fortran/DFM_library/SCREENING_LIBRARY/screening_vec1.f90 diff --git a/New_libraries/DFM_library/SCREENING_LIBRARY/screening_vec2.f90 b/src/fortran/DFM_library/SCREENING_LIBRARY/screening_vec2.f90 similarity index 100% rename from New_libraries/DFM_library/SCREENING_LIBRARY/screening_vec2.f90 rename to src/fortran/DFM_library/SCREENING_LIBRARY/screening_vec2.f90 diff --git a/New_libraries/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_1.f90 b/src/fortran/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_1.f90 similarity index 100% rename from New_libraries/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_1.f90 rename to src/fortran/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_1.f90 diff --git a/New_libraries/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_10.f90 b/src/fortran/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_10.f90 similarity index 100% rename from New_libraries/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_10.f90 rename to src/fortran/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_10.f90 diff --git a/New_libraries/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_2.f90 b/src/fortran/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_2.f90 similarity index 100% rename from New_libraries/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_2.f90 rename to src/fortran/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_2.f90 diff --git a/New_libraries/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_3.f90 b/src/fortran/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_3.f90 similarity index 100% rename from New_libraries/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_3.f90 rename to src/fortran/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_3.f90 diff --git a/New_libraries/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_4.f90 b/src/fortran/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_4.f90 similarity index 100% rename from New_libraries/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_4.f90 rename to src/fortran/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_4.f90 diff --git a/New_libraries/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_5.f90 b/src/fortran/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_5.f90 similarity index 100% rename from New_libraries/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_5.f90 rename to src/fortran/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_5.f90 diff --git a/New_libraries/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_6.f90 b/src/fortran/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_6.f90 similarity index 100% rename from New_libraries/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_6.f90 rename to src/fortran/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_6.f90 diff --git a/New_libraries/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_7.f90 b/src/fortran/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_7.f90 similarity index 100% rename from New_libraries/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_7.f90 rename to src/fortran/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_7.f90 diff --git a/New_libraries/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_8.f90 b/src/fortran/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_8.f90 similarity index 100% rename from New_libraries/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_8.f90 rename to src/fortran/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_8.f90 diff --git a/New_libraries/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_9.f90 b/src/fortran/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_9.f90 similarity index 100% rename from New_libraries/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_9.f90 rename to src/fortran/DFM_library/SPECIFIC_INTEGRALS_LIBRARY/specific_int_9.f90 diff --git a/New_libraries/DFM_library/SPECTRAL_FUNCTION_LIBRARY/spectral_function.f90 b/src/fortran/DFM_library/SPECTRAL_FUNCTION_LIBRARY/spectral_function.f90 similarity index 100% rename from New_libraries/DFM_library/SPECTRAL_FUNCTION_LIBRARY/spectral_function.f90 rename to src/fortran/DFM_library/SPECTRAL_FUNCTION_LIBRARY/spectral_function.f90 diff --git a/New_libraries/DFM_library/STRUCTURE_FACTOR_LIBRARY/PhysRevA.8.990.pdf b/src/fortran/DFM_library/STRUCTURE_FACTOR_LIBRARY/PhysRevA.8.990.pdf similarity index 100% rename from New_libraries/DFM_library/STRUCTURE_FACTOR_LIBRARY/PhysRevA.8.990.pdf rename to src/fortran/DFM_library/STRUCTURE_FACTOR_LIBRARY/PhysRevA.8.990.pdf diff --git a/New_libraries/DFM_library/STRUCTURE_FACTOR_LIBRARY/structure_factor_dynamic.f90 b/src/fortran/DFM_library/STRUCTURE_FACTOR_LIBRARY/structure_factor_dynamic.f90 similarity index 100% rename from New_libraries/DFM_library/STRUCTURE_FACTOR_LIBRARY/structure_factor_dynamic.f90 rename to src/fortran/DFM_library/STRUCTURE_FACTOR_LIBRARY/structure_factor_dynamic.f90 diff --git a/New_libraries/DFM_library/STRUCTURE_FACTOR_LIBRARY/structure_factor_dynamic_2.f90 b/src/fortran/DFM_library/STRUCTURE_FACTOR_LIBRARY/structure_factor_dynamic_2.f90 similarity index 100% rename from New_libraries/DFM_library/STRUCTURE_FACTOR_LIBRARY/structure_factor_dynamic_2.f90 rename to src/fortran/DFM_library/STRUCTURE_FACTOR_LIBRARY/structure_factor_dynamic_2.f90 diff --git a/New_libraries/DFM_library/STRUCTURE_FACTOR_LIBRARY/structure_factor_static.f90 b/src/fortran/DFM_library/STRUCTURE_FACTOR_LIBRARY/structure_factor_static.f90 similarity index 100% rename from New_libraries/DFM_library/STRUCTURE_FACTOR_LIBRARY/structure_factor_static.f90 rename to src/fortran/DFM_library/STRUCTURE_FACTOR_LIBRARY/structure_factor_static.f90 diff --git a/New_libraries/DFM_library/STRUCTURE_FACTOR_LIBRARY/structure_factor_static_2.f90 b/src/fortran/DFM_library/STRUCTURE_FACTOR_LIBRARY/structure_factor_static_2.f90 similarity index 100% rename from New_libraries/DFM_library/STRUCTURE_FACTOR_LIBRARY/structure_factor_static_2.f90 rename to src/fortran/DFM_library/STRUCTURE_FACTOR_LIBRARY/structure_factor_static_2.f90 diff --git a/New_libraries/DFM_library/STRUCTURE_FACTOR_LIBRARY/utic_values.f90 b/src/fortran/DFM_library/STRUCTURE_FACTOR_LIBRARY/utic_values.f90 similarity index 100% rename from New_libraries/DFM_library/STRUCTURE_FACTOR_LIBRARY/utic_values.f90 rename to src/fortran/DFM_library/STRUCTURE_FACTOR_LIBRARY/utic_values.f90 diff --git a/New_libraries/DFM_library/SUM_RULES_LIBRARY/sum_rules.f90 b/src/fortran/DFM_library/SUM_RULES_LIBRARY/sum_rules.f90 similarity index 100% rename from New_libraries/DFM_library/SUM_RULES_LIBRARY/sum_rules.f90 rename to src/fortran/DFM_library/SUM_RULES_LIBRARY/sum_rules.f90 diff --git a/New_libraries/DFM_library/TEST_LIBRARY/calculators_test.f90 b/src/fortran/DFM_library/TEST_LIBRARY/calculators_test.f90 similarity index 100% rename from New_libraries/DFM_library/TEST_LIBRARY/calculators_test.f90 rename to src/fortran/DFM_library/TEST_LIBRARY/calculators_test.f90 diff --git a/New_libraries/DFM_library/TEST_LIBRARY/test_int_Hubbard.f90 b/src/fortran/DFM_library/TEST_LIBRARY/test_int_Hubbard.f90 similarity index 100% rename from New_libraries/DFM_library/TEST_LIBRARY/test_int_Hubbard.f90 rename to src/fortran/DFM_library/TEST_LIBRARY/test_int_Hubbard.f90 diff --git a/New_libraries/DFM_library/TEST_LIBRARY/test_integrals_2.f90 b/src/fortran/DFM_library/TEST_LIBRARY/test_integrals_2.f90 similarity index 100% rename from New_libraries/DFM_library/TEST_LIBRARY/test_integrals_2.f90 rename to src/fortran/DFM_library/TEST_LIBRARY/test_integrals_2.f90 diff --git a/New_libraries/DFM_library/TEST_LIBRARY/test_integrals_3.f90 b/src/fortran/DFM_library/TEST_LIBRARY/test_integrals_3.f90 similarity index 100% rename from New_libraries/DFM_library/TEST_LIBRARY/test_integrals_3.f90 rename to src/fortran/DFM_library/TEST_LIBRARY/test_integrals_3.f90 diff --git a/New_libraries/DFM_library/TEST_LIBRARY/test_integrals_8.f90 b/src/fortran/DFM_library/TEST_LIBRARY/test_integrals_8.f90 similarity index 100% rename from New_libraries/DFM_library/TEST_LIBRARY/test_integrals_8.f90 rename to src/fortran/DFM_library/TEST_LIBRARY/test_integrals_8.f90 diff --git a/New_libraries/DFM_library/THERMAL_PROPERTIES_LIBRARY/chemical_potential.f90 b/src/fortran/DFM_library/THERMAL_PROPERTIES_LIBRARY/chemical_potential.f90 similarity index 100% rename from New_libraries/DFM_library/THERMAL_PROPERTIES_LIBRARY/chemical_potential.f90 rename to src/fortran/DFM_library/THERMAL_PROPERTIES_LIBRARY/chemical_potential.f90 diff --git a/New_libraries/DFM_library/THERMAL_PROPERTIES_LIBRARY/thermal_properties.f90 b/src/fortran/DFM_library/THERMAL_PROPERTIES_LIBRARY/thermal_properties.f90 similarity index 100% rename from New_libraries/DFM_library/THERMAL_PROPERTIES_LIBRARY/thermal_properties.f90 rename to src/fortran/DFM_library/THERMAL_PROPERTIES_LIBRARY/thermal_properties.f90 diff --git a/New_libraries/DFM_library/UTILITIES_LIBRARY/atomic_properties.f90 b/src/fortran/DFM_library/UTILITIES_LIBRARY/atomic_properties.f90 similarity index 100% rename from New_libraries/DFM_library/UTILITIES_LIBRARY/atomic_properties.f90 rename to src/fortran/DFM_library/UTILITIES_LIBRARY/atomic_properties.f90 diff --git a/New_libraries/DFM_library/UTILITIES_LIBRARY/derivation.f90 b/src/fortran/DFM_library/UTILITIES_LIBRARY/derivation.f90 similarity index 100% rename from New_libraries/DFM_library/UTILITIES_LIBRARY/derivation.f90 rename to src/fortran/DFM_library/UTILITIES_LIBRARY/derivation.f90 diff --git a/New_libraries/DFM_library/UTILITIES_LIBRARY/factorials.f90 b/src/fortran/DFM_library/UTILITIES_LIBRARY/factorials.f90 similarity index 100% rename from New_libraries/DFM_library/UTILITIES_LIBRARY/factorials.f90 rename to src/fortran/DFM_library/UTILITIES_LIBRARY/factorials.f90 diff --git a/New_libraries/DFM_library/UTILITIES_LIBRARY/find_zero.f90 b/src/fortran/DFM_library/UTILITIES_LIBRARY/find_zero.f90 similarity index 100% rename from New_libraries/DFM_library/UTILITIES_LIBRARY/find_zero.f90 rename to src/fortran/DFM_library/UTILITIES_LIBRARY/find_zero.f90 diff --git a/New_libraries/DFM_library/UTILITIES_LIBRARY/integration.f90 b/src/fortran/DFM_library/UTILITIES_LIBRARY/integration.f90 similarity index 100% rename from New_libraries/DFM_library/UTILITIES_LIBRARY/integration.f90 rename to src/fortran/DFM_library/UTILITIES_LIBRARY/integration.f90 diff --git a/New_libraries/DFM_library/UTILITIES_LIBRARY/integration2.f90 b/src/fortran/DFM_library/UTILITIES_LIBRARY/integration2.f90 similarity index 100% rename from New_libraries/DFM_library/UTILITIES_LIBRARY/integration2.f90 rename to src/fortran/DFM_library/UTILITIES_LIBRARY/integration2.f90 diff --git a/New_libraries/DFM_library/UTILITIES_LIBRARY/integration3.f90 b/src/fortran/DFM_library/UTILITIES_LIBRARY/integration3.f90 similarity index 100% rename from New_libraries/DFM_library/UTILITIES_LIBRARY/integration3.f90 rename to src/fortran/DFM_library/UTILITIES_LIBRARY/integration3.f90 diff --git a/New_libraries/DFM_library/UTILITIES_LIBRARY/integration4.f90 b/src/fortran/DFM_library/UTILITIES_LIBRARY/integration4.f90 similarity index 100% rename from New_libraries/DFM_library/UTILITIES_LIBRARY/integration4.f90 rename to src/fortran/DFM_library/UTILITIES_LIBRARY/integration4.f90 diff --git a/New_libraries/DFM_library/UTILITIES_LIBRARY/integration5.f90 b/src/fortran/DFM_library/UTILITIES_LIBRARY/integration5.f90 similarity index 100% rename from New_libraries/DFM_library/UTILITIES_LIBRARY/integration5.f90 rename to src/fortran/DFM_library/UTILITIES_LIBRARY/integration5.f90 diff --git a/New_libraries/DFM_library/UTILITIES_LIBRARY/interpolation.f90 b/src/fortran/DFM_library/UTILITIES_LIBRARY/interpolation.f90 similarity index 100% rename from New_libraries/DFM_library/UTILITIES_LIBRARY/interpolation.f90 rename to src/fortran/DFM_library/UTILITIES_LIBRARY/interpolation.f90 diff --git a/New_libraries/DFM_library/UTILITIES_LIBRARY/mathematical_constants.f90 b/src/fortran/DFM_library/UTILITIES_LIBRARY/mathematical_constants.f90 similarity index 100% rename from New_libraries/DFM_library/UTILITIES_LIBRARY/mathematical_constants.f90 rename to src/fortran/DFM_library/UTILITIES_LIBRARY/mathematical_constants.f90 diff --git a/New_libraries/DFM_library/UTILITIES_LIBRARY/oxides_properties.odt b/src/fortran/DFM_library/UTILITIES_LIBRARY/oxides_properties.odt similarity index 100% rename from New_libraries/DFM_library/UTILITIES_LIBRARY/oxides_properties.odt rename to src/fortran/DFM_library/UTILITIES_LIBRARY/oxides_properties.odt diff --git a/New_libraries/DFM_library/UTILITIES_LIBRARY/physical_constants.f90 b/src/fortran/DFM_library/UTILITIES_LIBRARY/physical_constants.f90 similarity index 100% rename from New_libraries/DFM_library/UTILITIES_LIBRARY/physical_constants.f90 rename to src/fortran/DFM_library/UTILITIES_LIBRARY/physical_constants.f90 diff --git a/New_libraries/DFM_library/UTILITIES_LIBRARY/polynomial_equations.f90 b/src/fortran/DFM_library/UTILITIES_LIBRARY/polynomial_equations.f90 similarity index 100% rename from New_libraries/DFM_library/UTILITIES_LIBRARY/polynomial_equations.f90 rename to src/fortran/DFM_library/UTILITIES_LIBRARY/polynomial_equations.f90 diff --git a/New_libraries/DFM_library/UTILITIES_LIBRARY/powers_of_ten.f90 b/src/fortran/DFM_library/UTILITIES_LIBRARY/powers_of_ten.f90 similarity index 100% rename from New_libraries/DFM_library/UTILITIES_LIBRARY/powers_of_ten.f90 rename to src/fortran/DFM_library/UTILITIES_LIBRARY/powers_of_ten.f90 diff --git a/New_libraries/DFM_library/UTILITIES_LIBRARY/semiconductors_properties.odt b/src/fortran/DFM_library/UTILITIES_LIBRARY/semiconductors_properties.odt similarity index 100% rename from New_libraries/DFM_library/UTILITIES_LIBRARY/semiconductors_properties.odt rename to src/fortran/DFM_library/UTILITIES_LIBRARY/semiconductors_properties.odt diff --git a/New_libraries/DFM_library/UTILITIES_LIBRARY/simple_numbers.f90 b/src/fortran/DFM_library/UTILITIES_LIBRARY/simple_numbers.f90 similarity index 100% rename from New_libraries/DFM_library/UTILITIES_LIBRARY/simple_numbers.f90 rename to src/fortran/DFM_library/UTILITIES_LIBRARY/simple_numbers.f90 diff --git a/New_libraries/DFM_library/UTILITIES_LIBRARY/smoothing.f90 b/src/fortran/DFM_library/UTILITIES_LIBRARY/smoothing.f90 similarity index 100% rename from New_libraries/DFM_library/UTILITIES_LIBRARY/smoothing.f90 rename to src/fortran/DFM_library/UTILITIES_LIBRARY/smoothing.f90 diff --git a/New_libraries/DFM_library/UTILITIES_LIBRARY/tools.f90 b/src/fortran/DFM_library/UTILITIES_LIBRARY/tools.f90 similarity index 100% rename from New_libraries/DFM_library/UTILITIES_LIBRARY/tools.f90 rename to src/fortran/DFM_library/UTILITIES_LIBRARY/tools.f90 diff --git a/New_libraries/DFM_library/UTILITIES_LIBRARY/transforms.f90 b/src/fortran/DFM_library/UTILITIES_LIBRARY/transforms.f90 similarity index 100% rename from New_libraries/DFM_library/UTILITIES_LIBRARY/transforms.f90 rename to src/fortran/DFM_library/UTILITIES_LIBRARY/transforms.f90 diff --git a/New_libraries/DFM_library/UTILITIES_LIBRARY/utic_parameters.f90 b/src/fortran/DFM_library/UTILITIES_LIBRARY/utic_parameters.f90 similarity index 100% rename from New_libraries/DFM_library/UTILITIES_LIBRARY/utic_parameters.f90 rename to src/fortran/DFM_library/UTILITIES_LIBRARY/utic_parameters.f90 diff --git a/New_libraries/DFM_library/UTILITIES_LIBRARY/utilities_1.f90 b/src/fortran/DFM_library/UTILITIES_LIBRARY/utilities_1.f90 similarity index 100% rename from New_libraries/DFM_library/UTILITIES_LIBRARY/utilities_1.f90 rename to src/fortran/DFM_library/UTILITIES_LIBRARY/utilities_1.f90 diff --git a/New_libraries/DFM_library/UTILITIES_LIBRARY/utilities_2.f90 b/src/fortran/DFM_library/UTILITIES_LIBRARY/utilities_2.f90 similarity index 100% rename from New_libraries/DFM_library/UTILITIES_LIBRARY/utilities_2.f90 rename to src/fortran/DFM_library/UTILITIES_LIBRARY/utilities_2.f90 diff --git a/New_libraries/DFM_library/UTILITIES_LIBRARY/utilities_3.f90 b/src/fortran/DFM_library/UTILITIES_LIBRARY/utilities_3.f90 similarity index 100% rename from New_libraries/DFM_library/UTILITIES_LIBRARY/utilities_3.f90 rename to src/fortran/DFM_library/UTILITIES_LIBRARY/utilities_3.f90 diff --git a/New_libraries/DFM_library/UTILITIES_LIBRARY/utilities_4.f90 b/src/fortran/DFM_library/UTILITIES_LIBRARY/utilities_4.f90 similarity index 100% rename from New_libraries/DFM_library/UTILITIES_LIBRARY/utilities_4.f90 rename to src/fortran/DFM_library/UTILITIES_LIBRARY/utilities_4.f90 diff --git a/New_libraries/DFM_library/UTILITIES_LIBRARY/velocities.f90 b/src/fortran/DFM_library/UTILITIES_LIBRARY/velocities.f90 similarity index 100% rename from New_libraries/DFM_library/UTILITIES_LIBRARY/velocities.f90 rename to src/fortran/DFM_library/UTILITIES_LIBRARY/velocities.f90 diff --git a/New_libraries/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/2F1_real.f90 b/src/fortran/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/2F1_real.f90 similarity index 100% rename from New_libraries/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/2F1_real.f90 rename to src/fortran/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/2F1_real.f90 diff --git a/New_libraries/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/Legendre_functions.f90 b/src/fortran/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/Legendre_functions.f90 similarity index 100% rename from New_libraries/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/Legendre_functions.f90 rename to src/fortran/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/Legendre_functions.f90 diff --git a/New_libraries/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/Lindhard_function.f90 b/src/fortran/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/Lindhard_function.f90 similarity index 100% rename from New_libraries/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/Lindhard_function.f90 rename to src/fortran/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/Lindhard_function.f90 diff --git a/New_libraries/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/basic_functions.f90 b/src/fortran/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/basic_functions.f90 similarity index 100% rename from New_libraries/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/basic_functions.f90 rename to src/fortran/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/basic_functions.f90 diff --git a/New_libraries/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/bessel.f90 b/src/fortran/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/bessel.f90 similarity index 100% rename from New_libraries/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/bessel.f90 rename to src/fortran/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/bessel.f90 diff --git a/New_libraries/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/coulomb_log.f90 b/src/fortran/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/coulomb_log.f90 similarity index 100% rename from New_libraries/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/coulomb_log.f90 rename to src/fortran/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/coulomb_log.f90 diff --git a/New_libraries/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/digamma.f90 b/src/fortran/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/digamma.f90 similarity index 100% rename from New_libraries/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/digamma.f90 rename to src/fortran/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/digamma.f90 diff --git a/New_libraries/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/external_functions.f90 b/src/fortran/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/external_functions.f90 similarity index 100% rename from New_libraries/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/external_functions.f90 rename to src/fortran/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/external_functions.f90 diff --git a/New_libraries/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/gamma.f90 b/src/fortran/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/gamma.f90 similarity index 100% rename from New_libraries/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/gamma.f90 rename to src/fortran/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/gamma.f90 diff --git a/New_libraries/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/mod_mlf_garrappa.f90 b/src/fortran/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/mod_mlf_garrappa.f90 similarity index 100% rename from New_libraries/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/mod_mlf_garrappa.f90 rename to src/fortran/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/mod_mlf_garrappa.f90 diff --git a/New_libraries/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/phi_function.f90 b/src/fortran/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/phi_function.f90 similarity index 100% rename from New_libraries/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/phi_function.f90 rename to src/fortran/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/phi_function.f90 diff --git a/New_libraries/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/sph_bessel.f90 b/src/fortran/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/sph_bessel.f90 similarity index 100% rename from New_libraries/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/sph_bessel.f90 rename to src/fortran/DFM_library/VARIOUS_FUNCTIONS_LIBRARY/sph_bessel.f90 diff --git a/New_libraries/Data/epsilon.dat b/src/fortran/Data/epsilon.dat similarity index 100% rename from New_libraries/Data/epsilon.dat rename to src/fortran/Data/epsilon.dat diff --git a/New_libraries/Data/replace.sh b/src/fortran/Data/replace.sh similarity index 100% rename from New_libraries/Data/replace.sh rename to src/fortran/Data/replace.sh diff --git a/New_libraries/epsilon.f90 b/src/fortran/epsilon.f90 similarity index 100% rename from New_libraries/epsilon.f90 rename to src/fortran/epsilon.f90 diff --git a/src/python/MANIFEST.in b/src/python/MANIFEST.in new file mode 100644 index 0000000..0192b89 --- /dev/null +++ b/src/python/MANIFEST.in @@ -0,0 +1,2 @@ +recursive-include msspec_dfm *.so +include pip.freeze diff --git a/src/python/man/manpage.txt b/src/python/man/manpage.txt new file mode 100644 index 0000000..08df566 --- /dev/null +++ b/src/python/man/manpage.txt @@ -0,0 +1,2611 @@ +.\" Manpage for eps. +.TH man 1 "22 February 2022" "1.0" "eps man page" +.SH NAME +eps \- compute the dielectric function +.SH SYNOPSIS +eps INPUT_FILE +.SH DESCRIPTION +eps is a program to compute the dielectric function in the (q,omega) space according to various models and approximations. +.SH OPTIONS +The INPUT_FILE is formatted as follows + + ****************************************************************************** + * MsSpec DIELECTRIC FUNCTION MODULE * + ****************************************************************************** + *=======+=========+=========+=========+=========+============================* + * GENERAL PARAMETERS : * + *=======+=========+=========+=========+=========+============================* + * (q,omega,r) : * + *-------+---------+---------+---------+---------+----------------------------* + * 0.010 4.000 1000 Q_MIN,Q_MAX,N_Q * in units of k_F + * 0.010 4.000 2000 E_MIN,E_MAX,N_E * in units of E_F + * 0.010 4.000 2000 R_MIN,R_MAX,N_R * in units of 1/k_F + *-------+---------+---------+---------+---------+----------------------------* + * Material's properties : * + *-------+---------+---------+---------+---------+----------------------------* + * 2.079 1.000 SCHRO 1.000 RS,MSOM,MAT_TYP,EPS_B * + *-------+---------+---------+---------+---------+----------------------------* + * External fields : * + *-------+---------+---------+---------+---------+----------------------------* + * 1.00 0.000 0.000 NO T,E,H,FLD * + *-------+---------+---------+---------+---------+----------------------------* + * System's dimension : * + *-------+---------+---------+---------+---------+----------------------------* + * 3D DIM * + *-------+---------+---------+---------+---------+----------------------------* + * Confinement : * + *-------+---------+---------+---------+---------+----------------------------* + * 0.000 0.000 0.00 NO-CONF R0,L,OM0,CONFIN * + *-------+---------+---------+---------+---------+----------------------------* + * Multilayer structure : * + *-------+---------+---------+---------+---------+----------------------------* + * 0.000 0.000 0.00 0.00 DL,D1,N_DEP,N_INV * --- EPS_1 --- + * NONE 12.000 12.000 H_TYPE,EPS_1,EPS_2 * EPS_2 + *-------+---------+---------+---------+---------+----------------------------* --- EPS_1 --- + * Units : * + *-------+---------+---------+---------+---------+----------------------------* + * SIU SI UNIT,UNIK * + *-------+---------+---------+---------+---------+----------------------------* + * Screening : * + *-------+---------+---------+---------+---------+----------------------------* + * NO SC_TYPE * + *-------+---------+---------+---------+---------+----------------------------* + * Plasma type : * + *-------+---------+---------+---------+---------+----------------------------* + * OCP 1.000 0.000 PL_TYPE,ZION,ZION2 * + *-------+---------+---------+---------+---------+----------------------------* + * Calculation type : * + *-------+---------+---------+---------+---------+----------------------------* + * QUANTUM CAL_TYPE * + *=======+=========+=========+=========+=========+============================* + * DIELECTRIC FUNCTION : * + *=======+=========+=========+=========+=========+============================* + * DYNAMIC LONG NEV3 0 ESTDY,EPS_T,D_FUNC,I_T * + * STA2 COCO 0.500 0.600 NEV_TYPE,MEM_TYPE,ALPHA,BETA * + *-------+---------+---------+---------+---------+----------------------------* + * Analytical plasmon dispersion : * + *-------+---------+---------+---------+---------+----------------------------* + * RP2_MOD PL_DISP * + *-------+---------+---------+---------+---------+----------------------------* + * Local-field corrections * + *-------+---------+---------+---------+---------+----------------------------* + * STATIC ICUT IKP GSTDY,GQ_TYPE,IQ_TYPE * + * NONE NONE EC EC LANDAU,GQO_TYPE,G0_TYPE,GI_TYPE* + *-------+---------+---------+---------+---------+----------------------------* + * Damping : * + *-------+---------+---------+---------+---------+----------------------------* + * RELA NONE EX1 DAMPING,LT_TYPE,RT_TYPE * + * NONE EXTE NONE DR_TYPE,DC_TYPE,VI_TYPE * + * NONE NONE NONE EE_TYPE,EP_TYPE,EI_TYPE * + * NONE NONE LORE 1.250 IP_TYPE,PD_TYPE,QD_TYPE,ZETA * + * 0.500 FEMTO 50.00 D_VALUE_1,POWER_1,EK * + * 5.000 FEMTO 0.80 D_VALUE_2,POWER_2,PCT * + *-------+---------+---------+---------+---------+----------------------------* + * Electron-electron interaction : * + *-------+---------+---------+---------+---------+----------------------------* + * COULO 2.590 470.000 1.500 INT_POT,S,EPS,DELTA * + * 1.500 5.000 7 28 RC,ALF,M,N * + * 1.000 1.000 1.000 1.000 A1,A2,A3,A4 * + *-------+---------+---------+---------+---------+----------------------------* + * Electron-phonon interaction : * + *-------+---------+---------+---------+---------+----------------------------* + * 1500.000 1500.000 EP_C,DEBYE_T * + * 12.000 0.000 0.000 NA,MA,RA * + *-------+---------+---------+---------+---------+----------------------------* + * Electron-impurity interaction : * + *-------+---------+---------+---------+---------+----------------------------* + * 0.000 0.000 NI,EI_C * + *-------+---------+---------+---------+---------+----------------------------* + * Classical fluid parameters : * + *-------+---------+---------+---------+---------+----------------------------* + * SHS HSM HSP CF_TYPE,PF_TYPE,SL_TYPE * + *=======+=========+=========+=========+=========+============================* + * STRUCTURE FACTOR : * + *=======+=========+=========+=========+=========+============================* + * DYNAMIC PKA EPS SSTDY,SQ_TYPE,SQO_TYPE * + *=======+=========+=========+=========+=========+============================* + * PAIR CORRELATION FUNCTION : * + *=======+=========+=========+=========+=========+============================* + * SHA KIMB GR_TYPE,GR0_MODE * + *=======+=========+=========+=========+=========+============================* + * PAIR DISTRIBUTION FUNCTION : * + *=======+=========+=========+=========+=========+============================* + * CEG RH_TYPE * + *=======+=========+=========+=========+=========+============================* + * SPECTRAL FUNCTION : * + *=======+=========+=========+=========+=========+============================* + * NAIC SPF_TYPE * + *=======+=========+=========+=========+=========+============================* + * ENERGY CALCULATIONS : * + *=======+=========+=========+=========+=========+============================* + * GGSB_G NO NO EC_TYPE,FXC_TYPE,EXC_TYPE * + * HEG HEG EX_TYPE,EK_TYPE * + *=======+=========+=========+=========+=========+============================* + * SPIN POLARIZATION : * + *=======+=========+=========+=========+=========+============================* + * 1 0.000 IMODE,XI * + *=======+=========+=========+=========+=========+============================* + * THERMODYNAMIC PROPERTIES : * + *=======+=========+=========+=========+=========+============================* + * QUAN IK0 TH_PROP,GP_TYPE * + *=======+=========+=========+=========+=========+============================* + * ELECTRON MEAN FREE PATH : * + *=======+=========+=========+=========+=========+============================* + * 150.00 200.00 EK_INI,EK_FIN * + *=======+=========+=========+=========+=========+============================* + * CALCULATION OF MOMENTS : * + *=======+=========+=========+=========+=========+============================* + * 1 SQO N_M,M_TYPE * + *=======+=========+=========+=========+=========+============================* + * INCOMING ION BEAM : * + *=======+=========+=========+=========+=========+============================* + * 1.00 15000.00 Z_BEAM,EK_BEAM * + *=======+=========+=========+=========+=========+============================* + * OUTPUT CALCULATIONS/PRINTING : * + *=======+=========+=========+=========+=========+============================* + * 1 0 0 0 I_DF,I_PZ,I_SU,I_CD * + *-------+---------+---------+---------+---------+----------------------------* + * 1 1 0 0 I_PD,I_EH,I_E2,I_CK * + * 0 0 I_CR,I_PK * + *-------+---------+---------+---------+---------+----------------------------* + * 0 0 0 0 I_LF,I_IQ,I_SF,I_PC * + * 0 0 0 0 I_P2,I_VX,I_DC,I_MD * + * 0 0 0 0 I_LD,I_DP,I_LT,I_BR * + * 0 0 0 0 I_PE,I_QC,I_RL,I_KS * + * 0 0 0 0 I_OQ,I_ME,I_MS,I_ML * + * 0 0 0 0 I_MC,I_DE,I_ZE,I_SR * + * 0 0 0 0 I_CW,I_CF,I_EM,I_MF * + * 0 0 0 0 I_SP,I_SE,I_SB,I_ES * + * 0 0 0 0 I_GR,I_FD,I_BE,I_MX * + * 0 0 0 0 I_SC,I_DS,I_NV,I_MT * + *-------+---------+---------+---------+---------+----------------------------* + * 0 0 0 0 I_GP,I_PR,I_CO,I_CP * + * 0 0 0 0 I_BM,I_SH,I_S0,I_S1 * + * 0 0 0 0 I_DT,I_PS,I_IE,I_EI * + * 0 0 I_FH,I_EY * + *-------+---------+---------+---------+---------+----------------------------* + * 1 1 1 1 I_EF,I_KF,I_VF,I_TE * + * 1 I_DL * + *-------+---------+---------+---------+---------+----------------------------* + * 0 0 0 I_TW,I_VT,I_TC * + *-------+---------+---------+---------+---------+----------------------------* + * 0 0 0 0 I_EG,I_EX,I_XC,I_EC * + * 0 0 0 I_HF,I_EK,I_EP * + *-------+---------+---------+---------+---------+----------------------------* + * 0 0 I_VI,I_DI * + *-------+---------+---------+---------+---------+----------------------------* + * 0 0 0 0 I_FP,I_EL,I_PO,I_RF * + * 0 I_VC * + *-------+---------+---------+---------+---------+----------------------------* + * 0 2 0 I_FN,I_WR,I_TI * + *=======+=========+=========+=========+=========+============================* + * INPUT FILES : * + *----------------------------------------------------------------------------* + * NAME UNIT TYPE * + *=======+======================+======+=========+============================* + * epsilon.dat 5 INPUT DATA FILE * + *=======+======================+======+=========+============================* + * OUTPUT FILES : * + *----------------------------------------------------------------------------* + * NAME UNIT TYPE * + *=======+======================+======+=========+============================* + * epsilon.lis 6 CHECK FILE * + *=======+======================+======+=========+============================* + * END OF THE DATA FILE * + *============================================================================* + ****************************************************************************** + + +.SH DESCRIPTION OF THE CALCULATION PARAMETERS + + *=======+=========+=========+=========+=========+===========================* + * GENERAL PARAMETERS : * + *=======+=========+=========+=========+=========+===========================* + + * Q_MIN : minimum value of q (in units of k_F) + * Q_MAX : maximum value of q (in units of k_F) + * N_Q : number of q-points + + * E_MIN : minimum value of energy (in units of E_F) + * E_MAX : maximum value of energy (in units of E_F) + * N_E : number of E-points + + * R_MIN : minimum value of distance r (in units of 1/k_F) + * R_MAX : maximum value of distance r (in units of 1/k_F)) + * N_R : number of r-points + + *-------+---------+---------+---------+---------+---------------------------* + + * RS : average distance between 2 electrons (in units of a0) + ~ + * MSOM : m*/m (for semiconductors) + ~ + * MAT_TYP : type of material + MAT_TYPE = 'SCHRO' standard solid + MAT_TYPE = 'DIRAC' massless Fermions + MAT_TYPE = 'NEUTR' neutral classical liquid + MAT_TYPE = 'POLAR' polar classical liquid + ~ + * EPS_B : material's dielectric constant + + *-------+---------+---------+---------+---------+---------------------------* + + * T : temperature (in SI) + ~ + * E : external electric field (in SI) + ~ + * H : external magnetic field (in SI) + ~ + * FLD : strength of the magnetic field + FLD = 'NO' no field + FLD = 'WF' weak field + FLD = 'IF' intermediate field + FLD = 'LF' large field + + *-------+---------+---------+---------+---------+---------------------------* + + * DIM : dimension of the system + DIM = '3D' + DIM = '2D' + DIM = '1D' + DIM = 'Q0' quasi-0D + DIM = 'Q1' quasi-1D + DIM = 'Q2' quasi-2D + DIM = 'BL' bilayer + DIM = 'ML' multilayer + DIM = 'ML' multilayer + + ~ + + * R0 : wire radius + ~ + * L : length of quantum well + ~ + * OM0 : frequency of the confinement potential (SI) + ~ + * CONFIN : type of confinement + CONFIN = 'NO-CONF' no confinement + CONFIN = 'DSEPLAY' layer within a stacking of layers + CONFIN = 'CC-1111' cylindrical within subband 1 + CONFIN = 'CC-1122' cylindrical between subbands 1 and 2 + CONFIN = 'CC-1221' cylindrical between subbands 1 and 2 + CONFIN = 'CC-2222' cylindrical within subband 2 + CONFIN = 'HC-1111' harmonic within subband 1 + CONFIN = 'HC-1122' harmonic between subbands 1 and 2 + CONFIN = 'HC-1221' harmonic between subbands 1 and 2 + CONFIN = 'HC-2222' harmonic within subband 2 + CONFIN = 'INVLAYE' inversion layer in semiconductor + CONFIN = 'IQWE_LB' square well with an infinite barrier + CONFIN = 'PC1_QWI' parabolic + CONFIN = 'PC2_QWI' parabolic + CONFIN = 'SOFTCOR' soft-core potential + CONFIN = 'SWC_QWI' square well with an infinite barrier + + ~ + + * DL : interlayer distance + ~ + * D1 : distance between the two layers in the unit cell + ~ + * N_DEP : electron concentration in depletion layer (SI) + ~ + * N_INV : electron concentration in inversion layer (SI) + + ~ + + * H_TYPE : heterostructure type + H_TYPE = 'SSL1' semiconductor superlattice of type I + H_TYPE = 'SSL2' semiconductor superlattice of type II + H_TYPE = 'BILA' bilayer + H_TYPE = 'MLA1' multilayer with with one layer / unit cell + H_TYPE = 'MLA2' multilayer with with two layers / unit cell + ~ + * EPS_1 : background/layer dielectric constant + ~ + * EPS_2 : interlayer dielectric constant + + *-------+---------+---------+---------+---------+---------------------------* + + * UNIT : system unit + UNIT = 'SIU' international system + UNIT = 'CGS' CGS system + UNIT = 'ATU' atomic units + + * UNIK : K unit + UNIK = 'SI' international system + UNIK = 'AU' atomic units + + *-------+---------+---------+---------+---------+---------------------------* + + * SC_TYPE : type of screeening + SC_TYPE = 'NO' no screening + SC_TYPE = 'DH' Debye-Hückel + SC_TYPE = 'IS' Tago-Utsumi-Ichimaru + SC_TYPE = 'KL' Kleinman + SC_TYPE = 'OC' one-component plasma + SC_TYPE = 'RP' RPA + SC_TYPE = 'ST' Streitenberger + SC_TYPE = 'TF' Thomas-Fermi + SC_TYPE = 'UI' Utsumi-Ichimaru + SC_TYPE = 'YT' Yasuhara-Takada + + *-------+---------+---------+---------+---------+---------------------------* + + * PL_TYPE : type of plasma considered + PL_TYPE = 'OCP' --> one-component plasma (~ electron gas) + PL_TYPE = 'DCP' --> two-component plasma + + * ZION : atomic number of (first) ion + + * ZION2 : atomic number of second ion + + *-------+---------+---------+---------+---------+---------------------------* + + * CAL_TYPE : type of calculation + CAL_TYPE = 'QUANTUM' --> quantum fluid + CAL_TYPE = 'CLASSIC' --> classical fluid + + *=======+=========+=========+=========+=========+===========================* + * DIELECTRIC FUNCTION : * + *=======+=========+=========+=========+=========+===========================* + + + * ESTDY : static vs dynamic dielectric function + STDY = ' STATIC' + STDY = 'DYNAMIC' + + * EPS_T : type of dielcectric function + EPS_T = 'LONG' longitudinal --> D_FUNCL + EPS_T = 'TRAN' transverse --> D_FUNCT + + * D_FUNC : model of dielectric function : + + 1) Static: + + ---> longitudinal: + + D_FUNCL = 'LRPA' random phase approximation (3D,2D,1D) + D_FUNCL = 'THFE' Thomas-Fermi approximation (3D,2D,1D) + + 2) Dynamic: + + ---> transverse: + + D_FUNCT = 'RPA1' random phase approximation (3D,2D) + D_FUNCT = 'RPA2' random phase approximation (3D) + D_FUNCT = 'LVLA' linearized Vlasov (3D) + D_FUNCT = 'MER1' Mermin (3D) + D_FUNCT = 'BLTZ' Boltzmann (3D) + + ---> longitudinal: + + D_FUNCL = 'ARBR' Arista-Brandt 1 <-- T-dependent + D_FUNCL = 'ATAS' Atwal-Ashcroft <-- T-dependent + D_FUNCL = 'BLZ1' Boltzmann + D_FUNCL = 'BLZ2' damped Boltzmann + D_FUNCL = 'DACA' Arista-Brandt 2 <-- T-dependent + D_FUNCL = 'GOTZ' Götze memory function + D_FUNCL = 'HEAP' Hertel-Appel + D_FUNCL = 'HAFO' Hartree-Fock + D_FUNCL = 'HUCO' Hu-O'Connell <-- damping (3D,2D,Q1) + D_FUNCL = 'HYDR' hydrodynamic <-- damping + D_FUNCL = 'KLEI' Kleinman <-- T-dependent + D_FUNCL = 'KLKD' Klimontovich-Kraeft <-- T-dependent + D_FUNCL = 'KLKN' Klimontovich-Kraeft <-- T-dependent + D_FUNCL = 'LAND' Landau parameters-based + D_FUNCL = 'LVL1' linearized Vlasov (weak coupling) <-- T-dependent + D_FUNCL = 'LVL2' linearized Vlasov (strong coupling) <-- T-dependent + D_FUNCL = 'MEM2' Two-moment memory function <-- T-dependent + D_FUNCL = 'MEM3' Three-moment memory function <-- T-dependent + D_FUNCL = 'MEM4' Four-moment memory function <-- T-dependent + D_FUNCL = 'MER1' Mermin 1 <-- damping (3D,2D) + D_FUNCL = 'MER2' Lindhard-Mermin <-- T-dependent + D_FUNCL = 'MER+' Mermin with Local Field Corrections <-- damping + D_FUNCL = 'MSAP' mean spherical approximation + D_FUNCL = 'NEV2' Two-moment Nevanlinna <-- T-dependent + D_FUNCL = 'NEV3' Three-moment Nevanlinna <-- T-dependent + D_FUNCL = 'NEV4' Four-moment Nevanlinna <-- T-dependent + D_FUNCL = 'PLPO' plasmon pole + D_FUNCL = 'RDF1' Altshuler et al <-- damping + D_FUNCL = 'RDF2' Altshuler et al <-- damping + D_FUNCL = 'RPA1' RPA + D_FUNCL = 'RPA2' RPA <-- T-dependent + D_FUNCL = 'RPA+' RPA + static local field corrections + D_FUNCL = 'RPA3' random phase approximation <-- magnetic field (2D) + D_FUNCL = 'SO2E' computed from S(q,omega) + D_FUNCL = 'UTIC' Utsumi-Ichimaru <-- T-dependent + D_FUNCL = 'VLFP' Vlasov-Fokker-Planck <-- damping + + * I_T : way to incorporate temperature dependence + I_T = 0 --> no temperature (T = 0) + I_T = 1 --> analytical models used + I_T = 2 --> temperature convolution + + ~ + + * NEV_TYPE : type of Nevalinna function used (only for D_FUNCL = 'NEVn') + NEV_TYPE = 'NONE' --> no function + NEV_TYPE = 'RELA' --> static value h(q) = i / tau + NEV_TYPE = 'STA1' --> static value h(q) + NEV_TYPE = 'STA2' --> static value h(q) + NEV_TYPE = 'STA3' --> static value h(q) + NEV_TYPE = 'STA4' --> static value h(q) + NEV_TYPE = 'PEEL' --> Perel'-Eliashberg function + NEV_TYPE = 'PE76' --> Perel'-Eliashberg by Arkhipov et al + NEV_TYPE = 'CCP1' --> + NEV_TYPE = 'CCP2' --> + NEV_TYPE = 'CCP3' --> + NEV_TYPE = 'CCP4' --> + NEV_TYPE = 'PST1' --> + + * MEM_TYPE : type of memory function used (only for D_FUNCL = 'MEMn') + MEM_TYPE = 'NONE' --> no function + MEM_TYPE = 'DELT' --> delta function + MEM_TYPE = 'DGAU' --> double Gaussian functions + MEM_TYPE = 'EXPO' --> exponential function + MEM_TYPE = 'GAUS' --> Gaussian function + MEM_TYPE = 'LORE' --> Lorentzian function + MEM_TYPE = 'SINC' --> sinc function + MEM_TYPE = 'BES0' --> J_0(t) function + MEM_TYPE = 'BES1' --> J_1(t)/t function + MEM_TYPE = 'SEC2' --> sech^2(t) function + MEM_TYPE = 'COCO' --> Cole-Cole function + MEM_TYPE = 'CODA' --> Cole-Davidson function + MEM_TYPE = 'HANE' --> Habriliak-Negami function + MEM_TYPE = 'RAYI' --> Raganathan-Yip function + MEM_TYPE = 'LIHY' --> linearized hydrodynamic function + + * ALPHA : value of the Habriliak-Negami first parameter (in ]0,1]) + + * BETA : value of the Habriliak-Negami second parameter (in ]0,1]) + + *-------+---------+---------+---------+---------+---------------------------* + + * PL_DISP : method used to compute the plasmon dispersion (3D real case) + PL_DISP = 'HYDRODY' hydrodynamic model + PL_DISP = 'RP1_MOD' RPA model up to q^2 + PL_DISP = 'RP2_MOD' RPA model up to q^4 + PL_DISP = 'GOA_MOD' Gorobchenko model + PL_DISP = 'HER_APP' Hertel-Appel model <-- T-dependent + PL_DISP = 'HUBBARD' Hubbard model + PL_DISP = 'ELASTIC' elastic model + PL_DISP = ' EXACT' computed from the dielectric function + PL_DISP = 'SGBBN_M' SGBBN model + PL_DISP = 'AL0_MOD' gamma_0 limit + PL_DISP = 'ALI_MOD' gamma_inf limit + PL_DISP = 'NOP_MOD' Nozières-Pines model + PL_DISP = 'UTI_MOD' Utsumi-Ichimaru model + PL_DISP = 'TWA_MOD' Toigo-Woodruff model + PL_DISP = 'SUM_RU2' f-sum_rule + PL_DISP = 'SUM_RU3' 3rd-frequency sum_rule + * PL_DISP : method used to compute the plasmon dispersion (2D real case) + PL_DISP = 'HYDRODY' hydrodynamic model + PL_DISP = 'RPA_MOD' RPA model + PL_DISP = 'RAJAGOP' Rajagopal formula + * PL_DISP : method used to compute the plasmon dispersion (1D real case) + PL_DISP = 'HYDRODY' hydrodynamic model + PL_DISP = 'RPA_MOD' RPA model + + *-------+---------+---------+---------+---------+---------------------------* + + * GSTDY : static vs dynamic local-field corrections + GSTDY = ' STATIC' --> GQ_TYPE + GSTDY = 'DYNAMIC' --> GQO_TYPE + + * GQ_TYPE : local-field correction type (3D) static + GQ_TYPE = 'NONE' no local field correction + GQ_TYPE = 'ALDA' adiabatic local density + GQ_TYPE = 'ALFL' Alvarellos-Flores + GQ_TYPE = 'BEBR' Bedell-Brown + GQ_TYPE = 'CDOP' TDDFT Corradini et al correction + GQ_TYPE = 'GEV2' Geldart-Vosko 2 + GQ_TYPE = 'GEVO' Geldart-Vosko correction + GQ_TYPE = 'GOCA' Gold-Calmels + temperature-dep. --> GQ_TYPE = 'HNCA' hypernetted chain + GQ_TYPE = 'HORA' Holas-Rahman + GQ_TYPE = 'HUBB' Hubbard correction (only exchange) + GQ_TYPE = 'ICUT' Ichimaru-Utsumi correction + GQ_TYPE = 'IKPA' Iwamoto-Krotscheck-Pines + GQ_TYPE = 'IWA1' Iwamoto G_{-1} + GQ_TYPE = 'IWA2' Iwamoto G_{3} approx. + temperature-dep. --> GQ_TYPE = 'IWA3' Iwamoto G_{-1} + GQ_TYPE = 'IWA4' Iwamoto G_{3} exact + GQ_TYPE = 'JGDG' Jung-Garcia-Gonzalez-Dobson-Godby + GQ_TYPE = 'KLLA' Kleinman-Langreth correction + GQ_TYPE = 'LDAC' LDA correction + GQ_TYPE = 'MCSC' Moroni-Ceperley-Senatore correction + GQ_TYPE = 'NAGY' Nagy correction + GQ_TYPE = 'NEV1' Nevalinna two-moment approximation + GQ_TYPE = 'PGGA' Petersilka-Gossmann-Gross + GQ_TYPE = 'PVHF' Pavas-Vashishta Hartree-Fock correction + GQ_TYPE = 'RICE' Rice correction + GQ_TYPE = 'SHAW' Shaw correction + GQ_TYPE = 'SLAT' Slater correction + GQ_TYPE = 'STLS' Singwi et al correction + temperature-dep. --> GQ_TYPE = 'TKAC' Tkachenko correction + GQ_TYPE = 'TOUL' Toulouse parametrization of CDOP + GQ_TYPE = 'TRMA' Tripathy-Mandal + GQ_TYPE = 'VASI' Vashishta-Singwi correction + GQ_TYPE = 'UTI1' Utsumi-Ichimaru correction (only exchange) + + * GQ_TYPE : local-field correction type (2D) static + GQ_TYPE = 'NONE' no local field correction + GQ_TYPE = 'BUTO' Bulutay-Tomak + GQ_TYPE = 'DPGT' Davoudi-Giuliani-Giuliani-Tosi + GQ_TYPE = 'GOCA' Gold-Calmels + GQ_TYPE = 'HUBB' Hubbard correction (only exchange) + GQ_TYPE = 'IWA1' Iwamoto G_{-1} + GQ_TYPE = 'IWA2' Iwamoto G_{3} + GQ_TYPE = 'SAIC' Sato-Ichimaru correction + + * GQ_TYPE : local-field correction type (1D) static + GQ_TYPE = 'NONE' no local field correction + GQ_TYPE = 'GOCA' Gold-Calmels + GQ_TYPE = 'HUBB' Hubbard correction (only exchange) + + * IQ_TYPE : type of approximation for I(q) + IQ_TYPE = 'NON' I(q) = 0 + IQ_TYPE = 'GKM' Gorobchenko-Kohn-Maksimov + IQ_TYPE = 'HKA' Hong-Kim + IQ_TYPE = 'IKP' Iwamoto-Krotscheck-Pines parametrization + IQ_TYPE = 'KU1' Kugler 1 + IQ_TYPE = 'KU2' Kugler 1 + + ~ + + * LANDAU : model chosen for the calculation of the Landau parameters (3D) + LANDAU = 'NONE' Landau's theory not used + LANDAU = 'CHEN' Chen's approach + LANDAU = 'RASC' Rayleigh-Schrödinger expansion + LANDAU = 'ANBR' Anderson-Brinkman model + LANDAU = 'GUTZ' Gutzwiller model + LANDAU = 'IWPI' Iwamoto-Pines model (hard-sphere) + LANDAU = 'GCYO' Giuliani-Vignale parametrization of + Yasuhara-Ousaka approach + LANDAU = 'SBOH' slave-boson one-band Hubbard model + + * LANDAU : model chosen for the calculation of the Landau parameters (2D) + LANDAU = 'NONE' Landau's theory not used + LANDAU = 'ERZA' Engelbrecht-Randeria-Zhang approach + LANDAU = 'GVYO' Giuliani-Vignale parametrization of + Yasuhara-Ousaka approach + LANDAU = 'KCMP' Kwoon-Ceperley-Martin parametrization + * GQO_TYPE : local-field correction type (3D) + GQO_TYPE = 'NONE' no local field correction + GQO_TYPE = 'ALFL' Alvarellos-Flores correction + GQO_TYPE = 'BACA' Barriga-Carrasco correction + GQO_TYPE = 'BBSA' Bachlechner-Böhm-Schinner + GQO_TYPE = 'COPI' Constantin-Pitarke + GQO_TYPE = 'DABR' Dabrowski + GQO_TYPE = 'FWRA' Forstmann-Wierling-Röpke + GQO_TYPE = 'HOK1' Hong-Kim correction + GQO_TYPE = 'HOK2' Hong-Kim correction + GQO_TYPE = 'JEWS' Jewsbury approximation + GQO_TYPE = 'KUG1' Kugler q --> 0 approximation + GQO_TYPE = 'KUG2' Kugler approximation + GQO_TYPE = 'MDGA' Mithen-Daligault-Gregori + GQO_TYPE = 'NEV2' Nevalinna three-moment approximation + GQO_TYPE = 'NLGA' Nagy-Laszlo-Giber approximation + GQO_TYPE = 'RIA1' Richardson-Ashcroft G_s + GQO_TYPE = 'RIA2' Richardson-Ashcroft G_n + GQO_TYPE = 'RIA3' Richardson-Ashcroft G_a + GQO_TYPE = 'SHMU' Shah-Mukhopadhyay + GQO_TYPE = 'STGU' Sturm-Gusarov + GQO_TYPE = 'TOWO' Toigo-Woodruff + GQO_TYPE = 'UTI2' Utsumi-Ichimaru approximation + GQO_TYPE = 'VISC' viscosity approximation + + * G0_TYPE : type of calculation of gamma_0 + G0_TYPE = 'SQ' from the static structure factor S(q) + G0_TYPE = 'EC' from the correlation energy E_c + + * GI_TYPE : type of calculation of gamma_inf + GI_TYPE = 'SQ' from the static strcuture factor S(q) + GI_TYPE = 'EC' from the correlation energy E_c + + + *-------+---------+---------+---------+---------+---------------------------* + + * DAMPING : type of damping used + DAMPING = 'NONE' no damping + DAMPING = 'LFTM' lifetime + DAMPING = 'RELA' relaxation time + DAMPING = 'DECA' decay rate + DAMPING = 'DIFF' diffusion coefficient + DAMPING = 'VISC' viscosity + + * LT_TYPE : approximation used for lifetime (3D) + LT_TYPE = 'EXTE' given externally (D_VALUE,POWER) + LT_TYPE = 'DAVI' Davies formula + LT_TYPE = 'GALI' Galitskii formula + LT_TYPE = 'GIQU' Giuliani-Quinn formula + LT_TYPE = 'GIVI' Giuliani-Vignale formula + LT_TYPE = 'INPE' Inogamov-Petrov formula + LT_TYPE = 'LUBR' Lugovskoy-Bray formula + LT_TYPE = 'NAEC' Nagy-Echenique formula + LT_TYPE = 'QIVI' Qian-Vignale formula + LT_TYPE = 'EXTE' given externally (D_VALUE,POWER) + LT_TYPE = 'QUFE' Quinn-Ferrell formula + + * LT_TYPE : approximation used for lifetime (2D) + LT_TYPE = 'GIQ1' Giuliani-Quinn formula for e-h loss + LT_TYPE = 'GIQ2' Giuliani-Quinn formula for plasmon loss + LT_TYPE = 'GIVI' Giuliani-Vignale formula + LT_TYPE = 'HAWR' Hawrylak formula + LT_TYPE = 'MELA' Menashe-Laikhtman formula + LT_TYPE = 'QIVI' Qian-Vignale formula + + * RT_TYPE : relaxation time + RT_TYPE = ' NO' --> no relaxation time + RT_TYPE = 'EX1' --> given externally (D_VALUE_1,POWER_1) + RT_TYPE = 'EX2' --> given externally (D_VALUE_1,POWER_1,D_VALUE_2,POWER_2) + RT_TYPE = 'E-E' --> electron-electron interaction + RT_TYPE = 'E-P' --> electron-phonon interaction + RT_TYPE = 'E-I' --> electron-phonon impurity + RT_TYPE = 'ALL' --> all three taken into account + + ~ + + * DR_TYPE : decay rate in 3D + DR_TYPE = 'EXTE' given externally (D_VALUE,POWER) + DR_TYPE = 'UTIC' --> Utsumi-Ichimaru approximation + DR_TYPE = 'VLAS' --> Vlasov approximation + + * DC_TYPE : diffusion coefficient in 3D + DC_TYPE = 'EXTE' given externally (D_VALUE,POWER) + DC_TYPE = 'ASHO' --> Ashurst-Hoover + + * VI_TYPE : viscosity in 3D + VI_TYPE = 'EXTE' given externally (D_VALUE,POWER) + VI_TYPE = 'AMPP' Angilella et al hard-sphere fluid --> T-dependent + VI_TYPE = 'DRBA' Daligault-Rasmussen-Baalrud (plasmas) --> T-dependent + VI_TYPE = 'KHRA' Khrapak for Yukawa fluid --> T-dependent + VI_TYPE = 'LHPO' Longuet-Higgins-Pope --> T-dependent + VI_TYPE = 'LLPA' Landau-Lifshitz-Pitaevskii--> T-dependent + VI_TYPE = 'SCHA' Schäfer --> T-dependent + VI_TYPE = 'SCHD' Schäfer (dynamic) --> T-dependent + VI_TYPE = 'SHTE' Shternin --> T-dependent + VI_TYPE = 'STEI' Steinberg low-temperature --> T-dependent + + * VI_TYPE : viscosity in 2D + VI_TYPE = 'EXTE' given externally (D_VALUE,POWER) + VI_TYPE = 'SCHA' Schäfer --> T-dependent + graphene <-- VI_TYPE = 'KISC' Kiselev-Schmalian (dynamic) --> T-dependent + graphene <-- VI_TYPE = 'MSFA' Müller-Schmalian-Fritz --> T-dependent + + ~ + + * EE_TYPE : e-e relaxation time in 3D + EE_TYPE = 'ALAR' --> Al'tshuler-Aronov (e-e + impurities) + EE_TYPE = 'ALA2' --> Al'tshuler-Aronov (e-e + impurities) + EE_TYPE = 'BACA' --> Barriga-Carrasco approximation (e-e) + EE_TYPE = 'FSTB' --> Fann et al approximation (e-e) + EE_TYPE = 'PIN1' --> Pines-Nozières 1st approx. (e-e) + EE_TYPE = 'PIN2' --> Pines-Nozières 2nd approx. (e-e) + EE_TYPE = 'QIV2' --> Qian-Vignale high-density limit(e-e) + EE_TYPE = 'QIVI' --> Qian-Vignale (e-e) + EE_TYPE = 'RASM' --> Rammer-Smith (e-e) + EE_TYPE = 'TAI0' --> Tanaka-Ichimaru approximation (e-e) --> q = 0 + EE_TYPE = 'TAIQ' --> Tanaka-Ichimaru approximation (e-e) --> q-dependent + EE_TYPE = 'UTIC' --> Utsumi-Ichimaru approximation (e-e) + + + * EE_TYPE : relaxation time in 2D + EE_TYPE = 'ALA2' --> Al'tshuler-Aronov (e-e + impurities) + EE_TYPE = 'FUAB' --> Fukuyama-Abrahams (disordered metals) + graphene <-- EE_TYPE = 'LUFO' --> Lucas-Fong (e-e) + EE_TYPE = 'QIVI' --> Qian-Vignale (e-e) + EE_TYPE = 'RASM' --> Rammer-Smith (e-e) + heterostructures <-- EE_TYPE = 'REWI' --> Reizer-Wilkins (e-e) + EI_TYPE = 'SHAS' --> Sharma-Ashraf (e-e + impurities) + EE_TYPE = 'ZHDA' --> Zhang-Das Sarma (e-e) + + * EE_TYPE : relaxation time in 1D + EE_TYPE = 'ALA2' --> Al'tshuler-Aronov (e-e + impurities) + EE_TYPE = 'SHAS' --> Sharma-Ashraf (e-e + impurities) + + * EP_TYPE : e-phonon relaxation time in 3D + EP_TYPE = 'STEL' --> Steinberg low-temperature + EP_TYPE = 'STEH' --> Steinberg High-temperature + + * EI_TYPE : e-impurit relaxation time in 3D + EI_TYPE = 'HEAP' --> Hertel-Appel approximation + + ~ + + * IP_TYPE : ion plasma relaxation time in 3D + IP_TYPE = 'SEMO' --> Selchow-Morawetz approximation + IP_TYPE = 'SPIT' --> Spitzer approximation + + * PD_TYPE : method used to compute the plasmon damping (3D) + PD_TYPE = 'NONE' --> no plasmon damping + PD_TYPE = 'CALL' --> Callen approximation + PD_TYPE = 'DGKA' --> DuBois-Gilinsky-Kivelson approximation + PD_TYPE = 'FEWA' --> Fetter and Walecka approximation + PD_TYPE = 'JEWS' --> Jewsbury approximation + PD_TYPE = 'LITI' --> Giuliani-Quinn lifetime approximation + PD_TYPE = 'MOPE' --> Molinari-Peerani approximation + PD_TYPE = 'NPSA' --> Ninham-Powel-Swanson approximation + PD_TYPE = 'SGAA' --> Segui-Gervasoni-Arista approximation + + * QD_TYPE : method used to compute q-dependent relaxation time + QD_TYPE = 'NONE' --> no q-dependence + QD_TYPE = 'GAUS' --> Gaussian + QD_TYPE = 'LORE' --> Lorentzian + + * ZETA : Value of Tanaka-Ichimaru parameter + + ~ + + * D_VALUE_1: Value of the 1st damping coefficient (between 0 and 999.999) + + * POWER_1 : power of ten to multiply D_VALUE_1 by + POWER = ' KILO' + POWER = ' MEGA' + POWER = ' GIGA' + POWER = ' TERA' + POWER = ' PETA' + POWER = ' EXA' + POWER = 'ZETTA' + POWER = 'MILLI' + POWER = 'MICRO' + POWER = ' NANO' + POWER = ' PICO' + POWER = 'FEMTO' + POWER = ' ATTO' + POWER = 'ZEPTO' + POWER = 'YOCTO' + + * EK : kinetic energy of electron considered (in eV) + with respect to vacuum level + + ~ + + * D_VALUE_2: Value of the 2nd damping coefficient (between 0 and 999.999) + + * POWER_2 : power of ten to multiply D_VALUE_2 by + POWER = ' KILO' + POWER = ' MEGA' + POWER = ' GIGA' + POWER = ' TERA' + POWER = ' PETA' + POWER = ' EXA' + POWER = 'ZETTA' + POWER = 'MILLI' + POWER = 'MICRO' + POWER = ' NANO' + POWER = ' PICO' + POWER = 'FEMTO' + POWER = ' ATTO' + POWER = 'ZEPTO' + POWER = 'YOCTO' + + * PCT : weight of first memory function (relaxation time D_VALUE_1) + 0.00 <= PCT <= 1.00 + + *-------+---------+---------+---------+---------+---------------------------* + + * INT_POT : type of interaction potential (3D) + INT_POT = 'COULO' Coulomb interaction + INT_POT= 'YUKAW' Yukawa interaction + INT_POT= 'SOFTS' soft sphere + INT_POT= 'LNJNS' Lennard-Jones + INT_POT= 'HCLNJ' hard-core Lennard-Jones + INT_POT= 'KIHAR' Kihara + INT_POT= 'MIE_P' Mie + INT_POT= 'VANDW' Van der Waals + INT_POT= 'MORSE' Morse + INT_POT= 'G_EXP' generalised exponential + INT_POT= 'EXP_6' exp-6 + INT_POT= 'MBUCK' modified Buckingham + INT_POT= 'N_COU' neutralised Coulomb + INT_POT= 'H_COR' hard-core + INT_POT= 'P_SPH' penetrable sphere + INT_POT= 'ST-JO' Starkloff-Joannopoulos soft-core + INT_POT= 'LR_OS' long-range oscillatory + INT_POT= 'STOCK' Stockmayer + INT_POT= 'RPAPO' RPA interaction + INT_POT = 'OVER1' Overhauser interaction + INT_POT = 'OVER2' modified Overhauser interaction + INT_POT = 'DEUTS' Deutsch interaction + INT_POT = 'PHOLE' particle-hole interaction + INT_POT = 'KELBG' Kelbg interaction + + * S : length scale parameter of the potential (in Angström) + + * EPS : depth of the potential (in units of k_B, i.e. in Kelvin) + + * DELTA : polarisation of the fluid (dimensionless) + + ~ + + * RC : potential core radius (in Angström) + * ALF : potential stiffness + * M : \ exponents for Kihara + * N : / and Mie potentials + + ~ + + * A1 : \ + * A2 : \ parameters for + * A3 : / long-range oscillatory potentials + * A4 : / + + *-------+---------+---------+---------+---------+---------------------------* + + * EP_C : electron-phonon coupling + * DEBYE_T : material Debye temperature + + ~ + + * NA : number of atoms per unit volume + * MA : mass of the atoms + * RA : radius of the atoms + + *-------+---------+---------+---------+---------+---------------------------* + + * NI : impurity concentration + * EI_C : strength of impurity scattering + + *-------+---------+---------+---------+---------+---------------------------* + + + * CF_TYPE : type of classical fluid calculation --> 3D + CF_TYPE = 'SHS' smooth hard spheres + CF_TYPE = 'RH1' rough hard spheres (Pidduck) + CF_TYPE = 'RH2' rough hard spheres (Condiff-Lu-Dahler) + CF_TYPE = 'RH3' rough hard spheres (McCoy-Sandler-Dahler) + CF_TYPE = 'DCE' dilute Chapman-Enskog + CF_TYPE = 'HCE' heavy (i.e. dense) Chapman-Enskog + CF_TYPE = 'LJF' Lennard-Jones fluid + + CF_TYPE = 'DHD' dense hard disks --> 2D + + * PF_TYPE : type of packing fraction --> 2D + PF_TYPE = 'HDM' --> hard disk model + + --> 3D + PF_TYPE = 'HSM' --> hard sphere model + PF_TYPE = 'RCP' --> random closed-packed + PF_TYPE = 'FCC' --> FCC closed-packed + PF_TYPE = 'FRE' --> freezing + PF_TYPE = 'MEL' --> melting + + * SL_TYPE : type of scattering length calculation + SL_TYPE = 'HSP' --> hard sphere potential + SL_TYPE = 'ASW' --> attractive square well (without bound state) + SL_TYPE = 'RSW' --> repulsive square well + SL_TYPE = 'DSP' --> delta-shell potential + SL_TYPE = 'AYP' --> attractive Yukawa potential + SL_TYPE = 'CCO' --> Coulomb cut-off potential + SL_TYPE = 'HUL' --> Hulthén potential + + *=======+=========+=========+=========+=========+===========================* + * STRUCTURE FACTOR : * + *=======+=========+=========+=========+=========+===========================* + + + * SSTDY : static vs dynamic local-field corrections + SSTDY = ' STATIC' --> SQ_TYPE + SSTDY = 'DYNAMIC' --> SQO_TYPE + + * SQ_TYPE : structure factor approximation (3D) --> static + SQ_TYPE = 'DEH' Debye-Hückel approximation + SQ_TYPE = 'GEA' generalized approximation + SQ_TYPE = 'GOR' Gorobchenko approximation + SQ_TYPE = 'GR2' computed from g(r) (GR_TO_SQ.f90 code) + SQ_TYPE = 'GSB' Gori-Giorgi-Sacchetti-Bachelet approximation + SQ_TYPE = 'HFA' Hartree-Fock approximation (only exchange) + SQ_TYPE = 'HUB' Hubbard approximation + SQ_TYPE = 'ICH' Ichimaru approximation + SQ_TYPE = 'LEE' Lee ideal Fermi gas + SQ_TYPE = 'MSA' mean spherical approximation + SQ_TYPE = 'PKA' Pietiläinen-Kallio + SQ_TYPE = 'RPA' RPA approximation + SQ_TYPE = 'SHA' Shaw approximation + SQ_TYPE = 'SIN' Singh + SQ_TYPE = 'SPA' Singh-Pathak + SQ_TYPE = 'TWA' Toigo-Woodruff approximation +! + * SQO_TYPE : structure factor approximation (3D) --> dynamic + SQO_TYPE = 'ABA' Arista-Brandt approximation + SQO_TYPE = 'EPS' computed from dielectric function + SQO_TYPE = 'HFA' Hartree-Fock approximation + SQO_TYPE = 'HYD' hydrodynamic approximation + SQO_TYPE = 'IGA' ideal gas approximation + SQO_TYPE = 'ITA' Ichimaru-Tanaka approximation + SQO_TYPE = 'MFA' Hansen-McDonald-Pollock approximation + SQO_TYPE = 'MFD' memory function model + SQO_TYPE = 'NIC' Nakano-Ichimaru approximation + SQO_TYPE = 'UTI' Utsumi-Ichimaru approximation (3D) + SQO_TYPE = 'VLA' linearized Vlasov approximation + + *=======+=========+=========+=========+=========+===========================* + * PAIR CORRELATION FUNCTION : * + *=======+=========+=========+=========+=========+===========================* + + * GR_TYPE : pair correlation function approximation g(r) (3D) + GR_TYPE = 'CDF' from chain diagram formula of PDF (long distance) + GR_TYPE = 'DHA' Debye-Hückel approximation + GR_TYPE = 'DWA' DeWitt approximation + GR_TYPE = 'FBA' Frieman-Book approximation + GR_TYPE = 'HFA' Hartree-Fock approximation (only exchange) + GR_TYPE = 'HUB' Hubbard approximation + GR_TYPE = 'LLA' Lee-Long approximation + GR_TYPE = 'ORB' Ortiz-Ballone approximation + GR_TYPE = 'PDF' from pair distribution function + GR_TYPE = 'SHA' Shaw approximation + GR_TYPE = 'SQ2' computed from S(q) (SQ_TO_GR.f90 code) + GR_TYPE = 'WIG' Wigner approximation + + * GR0_MODE : g(0) (3D) + GR0_MODE = 'CAGO' --> Calmels-Gold + GR0_MODE = 'DPGT' --> Davoudi-Polini-Giuliani-Tosi + GR0_MODE = 'HASA' --> Holas-Aravind-Singwi (small r_s) + GR0_MODE = 'ICHI' --> Ichimaru + GR0_MODE = 'KIMB' --> Kimball + GR0_MODE = 'OVE1' --> Overhauser 1 + GR0_MODE = 'OVE2' --> Overhauser 2 + GR0_MODE = 'QIAN' --> Qian + * GR0_MODE : g(0) (2D) + GR0_MODE = 'CAGO' --> Calmels-Gold + GR0_MODE = 'HAFO' --> Hartree-Fock + GR0_MODE = 'MOMA' --> Moreno-Marinescu + GR0_MODE = 'NSOA' --> Nagano-Singwi-Ohnishi + GR0_MODE = 'QIAN' --> Qian + + *=======+=========+=========+=========+=========+===========================* + * PAIR DISTRIBUTION FUNCTION : * + *=======+=========+=========+=========+=========+===========================* + + * RH_TYPE : pair distribution function approximation (3D) + RH_TYPE = 'CDI' chain diagram improved + RH_TYPE = 'CEG' classical electron gas + RH_TYPE = 'DEB' Debye electron gas + RH_TYPE = 'FUA' correct to order 2 in epsilon + RH_TYPE = 'SDC' short-distance correlations + RH_TYPE = 'WDA' watermelon diagrams summed + + *=======+=========+=========+=========+=========+===========================* + * SPECTRAL FUNCTION : * + *=======+=========+=========+=========+=========+===========================* + + SPF_TYPE = 'NAIC' Nakano-Ichimaru approximation + + *=======+=========+=========+=========+=========+===========================* + * ENERGY CALCULATIONS : * + *=======+=========+=========+=========+=========+===========================* + + * EC_TYPE : type of correlation energy functional (3D) + EC_TYPE = 'GEBR_W' --> Gell-Mann and Brueckner + EC_TYPE = 'CAMA_W' --> Carr and Maradudin + EC_TYPE = 'EHTY_G' --> Endo-Horiuchi-Takada-Yasuhara + EC_TYPE = 'HELU_G' --> Hedin and Lundqvist + EC_TYPE = 'VBHE_G' --> von Barth and Hedin + EC_TYPE = 'PEZU_G' --> Perdew and Zunger + EC_TYPE = 'WIGN_G' --> Wigner + EC_TYPE = 'NOPI_G' --> Nozières and Pines + EC_TYPE = 'LIRO_G' --> Lindgren and Rosen + EC_TYPE = 'PEZU_G' --> Perdew and Zunger + EC_TYPE = 'REHI_G' --> Rebei and Hitchon + EC_TYPE = 'GGSB_G' --> Gori-Giorgi-Sacchetti-Bachelet + EC_TYPE = 'PRKO_G' --> Proynov and Kong + EC_TYPE = 'GGSB_G' --> Vosko, Wilk and Nusair + EC_TYPE = 'VWNU_G' --> Perdew and Wang + EC_TYPE = 'HUBB_G' --> Hubbard + EC_TYPE = 'CHAC_G' --> Chachiyo + EC_TYPE = 'ISKO_T' --> Isihara and Kojima + * EC_TYPE : type of correlation energy functional (2D) + EC_TYPE = 'TACE_G' --> Tanatar-Ceperley + EC_TYPE = 'CPPA_G' --> Seidl-Perdew_Levy + EC_TYPE = 'AMGB_G' --> Attaccalite-Moroni-Gori-Giorgi-Bachelet + EC_TYPE = 'SEID_G' --> Seidl + EC_TYPE = 'LOOS_W' --> Loos + EC_TYPE = 'WIGN_G' --> Wigner + EC_TYPE = 'ISTO_T' --> Isihara-Toyoda + * EC_TYPE : type of correlation energy functional (1D) + EC_TYPE = 'LOOS_W' --> Loos + EC_TYPE = 'WIGN_G' --> Wigner + + + * FXC_TYPE : type of XC free energy functional --> 3D + FXC_TYPE = 'NO' --> None + FXC_TYPE = 'EB' --> Ebeling et al + FXC_TYPE = 'IC' --> Ichimaru et al + FXC_TYPE = 'KS' --> Karasiev et al + FXC_TYPE = 'VS' --> Vashishta and Singwi + FXC_TYPE = 'PD' --> Perrot and Dharma-Wardana + FXC_TYPE = 'EK' --> Ebeling-Kraeft-Kremp-Röpke + + * EXC_TYPE : type of exchange-correlation energy functional --> 3D + EXC_TYPE = 'NO' --> None + EXC_TYPE = 'GT' --> Goedeker-Tetter-Hutter + EXC_TYPE = 'ST' --> + EXC_TYPE = 'BD' --> Brown-DuBois-Holzmann-Ceperley + + ~ + + + *=======+=========+=========+=========+=========+===========================* + * SPIN POLARIZATION : * + *=======+=========+=========+=========+=========+===========================* + + * IMODE : choice of spin parameters + IMODE = 1 : no spin polarization + IMODE = 2 : fully spin-polarized + + * XI : spin polarization : (n+ - n-) / n + + *=======+=========+=========+=========+=========+===========================* + * THERMODYNAMIC PROPERTIES : * + *=======+=========+=========+=========+=========+===========================* + + * TH_PROP : type of calculation --> thermodynamic properties + TH_PROP = 'CLAS' : classical approximation + TH_PROP = 'QUAN' : quantum approximation + + * GP_TYPE : grand partition function type (3D) + GP_TYPE = 'IK0' Isihara-Kojima formulation + GP_TYPE = 'RH0' Rebei-Hitchon formulation + GP_TYPE = 'IKM' Isihara-Kojima with magnetic field + + * GP_TYPE : grand partition function type (2D) + GP_TYPE = 'I20' Isihara-Kojima formulation + GP_TYPE = 'I2M' Isihara-Kojima with magnetic field + + *=======+=========+=========+=========+=========+===========================* + * ELECTRON MEAN FREE PATH : * + *=======+=========+=========+=========+=========+===========================* + + * EK_INI : starting kinetic energy of electron in eV + * EK_FIN : final kinetic energy of electron in eV + + *=======+=========+=========+=========+=========+===========================* + * CALCULATION OF MOMENTS : * + *=======+=========+=========+=========+=========+===========================* + + * N : order of moment + * M_TYPE : way S(q,omega) is computed + M_TYPE = 'EPS' from epsilon(q,omega) + M_TYPE = 'SQO' from S(q,omega) + + *=======+=========+=========+=========+=========+===========================* + * INCOMING ION BEAM : * + *=======+=========+=========+=========+=========+===========================* + + * Z_BEAM : charge of ions in incoming beam + * EK_BEAM : kinetic energy of incoming beam ions (eV) + + *=======+=========+=========+=========+=========+===========================* + * OUTPUT CALCULATIONS : * + *=======+=========+=========+=========+=========+===========================* + + * I_DF : switch for dielectric function printing + I_DF = 0 : dielectric function not printed + I_DF = 1 : dielectric function printed in file 'diel_func.dat' + + * I_PZ : switch for polarization function printing + I_PZ = 0 : polarization function not printed + I_PZ = 1 : polarization function printed in file 'pola_func.dat' + + * I_SU : switch for susceptibility function printing + I_SU = 0 : susceptibility function not printed + I_SU = 1 : susceptibility function printed in file 'susc_func.dat' + + * I_CD : switch for electrical conductivity printing + I_CD = 0 : electrical conductivity not printed + I_CD = 1 : electrical conductivity printed in file 'cond_func.dat' + + *-------+---------+---------+---------+---------+---------------------------* + + * I_PD : switch for plasmon dispersion printing + I_PD = 0 : plasmon dispersion not calculated + I_PD = 1 : plasmon dispersion printed in file 'plas_disp.dat' + + * I_EH : switch for electron-hole dispersion printing + I_EH = 0 : electron-hole dispersion not calculated + I_EH = 1 : electron-hole dispersion printed in file 'elec_hole.dat' + + * I_E2 : switch for two-electron-hole dispersion printing + I_E2 = 0 : two-electron-hole dispersion not calculated + I_E2 = 1 : two-electron-hole dispersion printed in file 'elec_hol2.dat' + + * I_CK : switch for k-space e-e interaction potential printing + I_CK = 0 : potential not calculated + I_CK = 1 : potential printed in file 'int_pot_k.dat' + + * I_CR : switch for real-space e-e interaction potential printing + I_CR = 0 : potential not calculated + I_CR = 1 : potential printed in file 'int_pot_r.dat' + + * I_PK : switch for plasmon kinetic energy printing + I_PK = 0 : plasmon kinetic energy not calculated + I_PK = 1 : plasmon kinetic energy printed in file 'plas_kine.dat' + + *-------+---------+---------+---------+---------+---------------------------* + + * I_LF : switch for local-field corrections G(q,omega) printing + I_LF = 0 : local-field corrections not calculated + I_LF = 1 : local-field corrections printed in file 'loca_fiel.dat' + + * I_IQ : switch for G(q,inf) printing + I_IQ = 0 : G(q,inf) not calculated + I_IQ = 1 : G(q,inf) printed in file 'ginf_fiel.dat' + + * I_SF : switch for structure factor S(q,omega) printing + I_SF = 0 : structure factor not calculated + I_SF = 1 : structure factor printed in file 'stru_fact.dat' + + * I_PC : switch for pair correlation function g(r) printing + I_PC = 0 : pair correlation function not calculated + I_PC = 1 : pair correlation function printed in file 'pair_corr.dat' + + ~ + + * I_P2 : switch for pair distribution rho2(r) printing + I_P2 = 0 : pair distribution function not calculated + I_P2 = 1 : pair distribution function printed in file 'pair_dist.dat' + + * I_VX : switch for vertex function Gamma(q,omega) printing + I_VX = 0 : vertex function not calculated + I_VX = 1 : vertex function printed in file 'vertex_fu.dat' + + * I_DC : switch for plasmon damping coefficient Im[eps]/q^2 printing + I_DC = 0 : plasmon damping not calculated + I_DC = 1 : plasmon damping printed in file 'plas_damp.dat' + + * I_MD : switch for momentum distribution printing + I_MD = 0 : momentum distribution not calculated + I_MD = 1 : momentum distribution printed in file 'mome_dist.dat' + + ~ + + * I_LD : switch for Landau parameters printing + I_LD = 0 : Landau parameters not calculated + I_LD = 1 : Landau parameters printed in file 'landau_pa.dat' + + * I_DP : switch for damping printing + I_DP = 0 : damping not calculated + I_DP = 1 : damping printed in file 'damp_file.dat' + + * I_LT : switch for plasmon lifetime printing + I_LT = 0 : plasmon lifetime not calculated + I_LT = 1 : plasmon lifetime printed in file 'life_time.dat' + + * I_BR : switch for plasmon broadening printing + I_BR = 0 : plasmon broadening not calculated + I_BR = 1 : plasmon broadening printed in file 'broadenin.dat' + + ~ + + * I_PE : switch for plasmon energy printing + I_PE = 0 : plasmon energy not calculated + I_PE = 1 : plasmon energy printed in file 'plas_ener.dat' + + * I_QC : switch for plasmon q-bounds printing + I_QC = 0 : plasmon q-bounds not calculated + I_QC = 1 : plasmon q-bounds printed in file 'qc_bounds.dat' + + * I_RL : switch for relaxation time printing + I_RL = 0 : relaxation time not calculated + I_RL = 1 : relaxation time printed in file 'rela_time.dat' + + * I_KS : switch for screening wave vector printing + I_KS = 0 : screening wave vector not calculated + I_KS = 1 : screening wave vector printed in file 'screen_wv.dat' + + ~ + + * I_OQ : switch for omega = q * v_F printing + I_DY = 0 : omega = q * v_F not calculated + I_DY = 1 : omega = q * v_F printed in file 'omega_qvf.dat' + + * I_ME : switch for moments of epsilon(q,omega) printing + I_ME = 0 : moments of epsilon not calculated + I_ME = 1 : moments of epsilon printed in file 'moments_e.dat' + + * I_MS : switch for moments of S(q,omega) printing + I_MS = 0 : moments of structure factor not calculated + I_MS = 1 : moments of structure factor printed in file 'moments_s.dat' + + * I_ML : switch for moments of loss function printing + I_ML = 0 : moments of loss function not calculated + I_ML = 1 : moments of loss function printed in file 'moments_l.dat' + + ~ + + * I_MC : switch for moments of conductivity printing + I_MC = 0 : moments of conductivity not calculated + I_MC = 1 : moments of conductivity printed in file 'moments_c.dat' + + * I_DE : switch for derivative of Re[ dielectric function ] printing + I_DE = 0 : derivative not calculated + I_DE = 1 : derivative printed in file 'deri_epsi.dat' + + * I_ZE : switch for Re[ dielectric function ] = 0 printing + I_ZE = 0 : function not calculated + I_ZE = 1 : function printed in file 'ree0_file.dat' + + * I_SR : switch for sum rules for epsilon printing + I_SR = 0 : sum rules not calculated + I_SR = 1 : sum rules printed in file 'sum_rules.dat' + + ~ + + * I_CW : switch for confinement wave function printing + I_CW = 0 : confinement wave function not calculated + I_CW = 1 : confinement wave function printed in file 'confin_wf.dat' + + * I_CF : switch for confinement potential printing + I_CF = 0 : confinement potential not calculated + I_CF = 1 : confinement potential printed in file 'confin_pt.dat' + + * I_EM : switch for effective mass printing + I_EM = 0 : effective mass not calculated + I_EM = 1 : effective mass printed in file 'effe_mass.dat' + + * I_MF : switch for mean free path printing + I_MF = 0 : mean free path not calculated + I_MF = 1 : mean free path printed in file 'mean_path.dat' + + ~ + + * I_SP : switch for spectral function printing + I_SP = 0 : spectral function not calculated + I_SP = 1 : spectral function printed in file 'spec_func.dat' + + * I_SE : switch for self-energy printing + I_SE = 0 : self-energy not calculated + I_SE = 1 : self-energy printed in file 'self_ener.dat' + + * I_SB : switch for subband energies printing + I_SB = 0 : subband energies not calculated + I_SB = 1 : subband energies printed in file 'subb_ener.dat' + + * I_ES : switch for Eliashberg function printing + I_ES = 0 : Eliashberg function not calculated + I_ES = 1 : Eliashberg function printed in file 'elia_func.dat' + + ~ + + * I_GR : switch for Grüneisen parameter printing + I_GR = 0 : Grüneisen parameter not calculated + I_GR = 1 : Grüneisen parameter printed in file 'grune_par.dat' + + * I_FD : switch for Fermi-Dirac distribution printing + I_FD = 0 : Fermi-Dirac distribution not calculated + I_FD = 1 : Fermi-Dirac distribution printed in file 'fermi_dir.dat' + + * I_BE : switch for Bose-Einstein distribution printing + I_BE = 0 : Bose-Einstein distribution not calculated + I_BE = 1 : Bose-Einstein distribution printed in file 'bose_eins.dat' + + * I_MX : switch for Maxwell distribution printing + I_MX = 0 : Maxwell distribution not calculated + I_MX = 1 : Maxwell distribution printed in file 'maxwell_d.dat' + + ~ + + * I_SC : switch for scale parameters printing + I_SC = 0 : scale parameters not calculated + I_SC = 1 : scale parameters printed in file 'scale_par.dat' + + * I_DS : switch for density of states printing + I_DS = 0 : density of states not calculated + I_DS = 1 : density of states printed in file 'dens_stat.dat' + + * I_NV : switch for Fourier domain Nevanlinaa/memory function printing + I_NV = 0 : Nevanlinaa function not calculated + I_NV = 1 : Nevanlinaa function printed in file 'neva_four.dat' + + * I_MT : switch for time domain memory function printing + I_MT = 0 : memory function not calculated + I_MT = 1 : memory function printed in file 'memo_time.dat' + + *-------+---------+---------+---------+---------+---------------------------* + + * I_GP : switch for grand partition function printing + I_GP = 0 : grand partition function not calculated + I_GP = 1 : grand partition function printed in file 'gran_part.dat' + + * I_PR : switch for electronic pressure printing + I_PR = 0 : electronic pressure not calculated + I_PR = 1 : electronic pressure printed in file 'epressure.dat' + + * I_CO : switch for compressibility printing + I_CO = 0 : compressibility not calculated + I_CO = 1 : compressibility printed in file 'comp_file.dat' + + * I_CP : switch for chemical potential printing + I_CP = 0 : chemical potential not calculated + I_CP = 1 : chemical potential printed in file 'chem_pote.dat' + + ~ + + * I_BM : switch for bulk modulus printing + I_BM = 0 : bulk modulus not calculated + I_BM = 1 : bulk modulus printed in file 'bulk_modu.dat' + + * I_SH : switch for shear modulus printing + I_SH = 0 : shear modulus not calculated + I_SH = 1 : shear modulus printed in file 'shear_mod.dat' + + * I_S0 : switch for zero sound velocity printing + I_S0 = 0 : zero sound velocity not calculated + I_S0 = 1 : zero sound velocity printed in file 'zero_soun.dat' + + * I_S1 : switch for first sound velocity printing + I_S1 = 0 : first sound velocity not calculated + I_S1 = 1 : first sound velocity printed in file 'firs_soun.dat' + + ~ + + * I_DT : switch for Debye temperature printing + I_DT = 0 : Debye temperature not calculated + I_DT = 1 : Debye temperature printed in file 'Debye_tmp.dat' + + * I_PS : switch for Pauli paramagnetic susceptibility printing + I_PS = 0 : Pauli paramagnetic susceptibility not calculated + I_PS = 1 : Pauli paramagnetic susceptibility printed in file 'para_susc.dat' + + * I_IE : switch for internal energy printing + I_IE = 0 : internal energy not calculated + I_IE = 1 : internal energy printed in file 'inter_ene.dat' + + * I_EI : switch for excess internal energy printing + I_EI = 0 : excess internal energy not calculated + I_EI = 1 : excess internal energy printed in file 'exces_ene.dat' + + ~ + + * I_FH : switch for Helmholtz free energy printing + I_FH = 0 : Helmholtz free energy not calculated + I_FH = 1 : Helmholtz free energy printed in file 'helm_free.dat' + + * I_EY : switch for entropy printing + I_EY = 0 : entropy not calculated + I_EY = 1 : entropy printed in file 'entropy_f.dat' + + *-------+---------+---------+---------+---------+---------------------------* + + * I_EF : switch for Fermi energy printing + I_EF = 0 : Fermi energy not calculated + I_EF = 1 : Fermi energy printed in file 'fermi_ene.dat' + + * I_KF : switch for Fermi momentum printing + I_KF = 0 : Fermi momentum not calculated + I_KF = 1 : Fermi momentum printed in file 'fermi_vec.dat' + + * I_VF : switch for Fermi velocity printing + I_VF = 0 : Fermi velocity not calculated + I_VF = 1 : Fermi velocity printed in file 'fermi_vel.dat' + + * I_TE : switch for Fermi temperature printing + I_TE = 0 : Fermi temperature not calculated + I_TE = 1 : Fermi temperature printed in file 'fermi_tmp.dat' + + ~ + + * I_DL : switch for density of states at Fermi level printing + I_DL = 0 : density of states at Fermi level not calculated + I_DL = 1 : density of states at Fermi level printed in file 'fermi_dos.dat' + + *-------+---------+---------+---------+---------+---------------------------* + + * I_TW : switch for thermal De Broglie wavelength printing + I_TW = 0 : thermal De Broglie wavelength not calculated + I_TW = 1 : thermal De Broglie wavelength printed in file 'thermal_w.dat' + + * I_VT : switch for thermal velocity printing + I_VT = 0 : thermal velocity not calculated + I_VT = 1 : thermal velocity printed in file 'thermal_v.dat' + + * I_TC : switch for thermal conductivity printing + I_TC = 0 : thermal conductivity not calculated + I_TC = 1 : thermal conductivity printed in file 'thermal_c.dat' + + *-------+---------+---------+---------+---------+---------------------------* + + * I_EG : switch for ground state energy printing + I_EG = 0 : ground state energy not calculated + I_EG = 1 : ground state energy printed in file 'ground_st.dat' + + * I_EX : switch for exchange energy printing + I_EX = 0 : exchange energy not calculated + I_EX = 1 : exchange energy printed in file 'ex_energy.dat' + + * I_XC : switch for exchange correlation energy printing + I_XC = 0 : exchange correlation energy not calculated + I_XC = 1 : exchange correlation energy printed in file 'xc_energy.dat' + + * I_EC : switch for correlation energy printing + I_EC = 0 : correlation energy not calculated + I_EC = 1 : correlation energy printed in file 'corr_ener.dat' + + ~ + + * I_HF : switch for Hartree-Fock energy printing + I_HF = 0 : Hartree-Fock energy not calculated + I_HF = 1 : Hartree-Fock energy printed in file 'hf_energy.dat' + + * I_EK : switch for kinetic energy printing + I_EK = 0 : kinetic energy not calculated + I_EK = 1 : kinetic energy printed in file 'kine_ener.dat' + + * I_EP : switch for potential energy printing + I_EP = 0 : potential energy not calculated + I_EP = 1 : potential energy printed in file 'pote_ener.dat + + *-------+---------+---------+---------+---------+---------------------------* + + * I_VI : switch for shear viscosity printing + I_VI = 0 : shear viscosity not calculated + I_VI = 1 : shear viscosity printed in file 'visc_coef.dat' + + * I_DI : switch for diffusion coefficient printing + I_DI = 0 : diffusion coefficient not calculated + I_DI = 1 : diffusion coefficient printed in file 'diff_coef.dat' + + *-------+---------+---------+---------+---------+---------------------------* + + * I_FP : switch for fluctuation potential calculation + I_FP = 0 : fluctuation potential not calculated + + I_FP = 1 : fluctuation potential printed in file 'fluct_pot.dat' (function of q) \ exact + I_FP = 2 : fluctuation potential printed in file 'fluct_pot.dat' (function of q and r) / dispersion + + I_FP = 3 : fluctuation potential printed in file 'fluct_pot.dat' (function of q) \ PL_DISP + I_FP = 4 : fluctuation potential printed in file 'fluct_pot.dat' (function of q and r) / dispersion + + * I_EL : switch for loss function calculation + I_EL = 0 : loss function not calculated + I_EL = 1 : loss function printed in file 'ener_loss.dat' + + * I_PO : switch for stopping power calculation + I_PO = 0 : stopping power not calculated + I_PO = 1 : stopping power printed in file 'stop_powe.dat' + + * I_RF : switch for refractive index calculation + I_RF = 0 : refractive index not calculated + I_RF = 1 : refractive index printed in file 'refrac_in.dat' + + ~ + + * I_VC : switch for dynamic screened Coulomb potential V(q,omega) calculation + I_VC = 0 : dynamic screened Coulomb potential not calculated + I_VC = 1 : dynamic screened Coulomb potential printed in file 'dyna_coul.dat' + + *-------+---------+---------+---------+---------+---------------------------* + + * I_FN : switch for appending the calculation type string + to the output filename + I_FN = 0 : standard output filename + I_FN = 1 : parameter added to filename + + * I_WR : switch for writing physical properties into the log file + I_WR = 0 : does not write + I_WR = 1 : writes + I_WR = 2 : writes only for first q-index + + * I_TI : switch for writing integration tests into the log file + I_TI = -1 : writes all the tests + I_TI = 0 : does not write + I_TI = 1 : writes test for MODULE SPECIFIC_INT_1 + I_TI = 2 : writes test for MODULE SPECIFIC_INT_2 + I_TI = 3 : writes test for MODULE SPECIFIC_INT_3 + I_TI = 4 : writes test for MODULE SPECIFIC_INT_4 + I_TI = 5 : writes test for MODULE SPECIFIC_INT_5 + I_TI = 6 : writes test for MODULE SPECIFIC_INT_6 + I_TI = 7 : writes test for MODULE SPECIFIC_INT_7 + I_TI = 8 : writes test for MODULE SPECIFIC_INT_8 + I_TI = 9 : writes test for MODULE SPECIFIC_INT_9 + I_TI = 10 : writes test for MODULE TEST_INT_HUBBARD + + + + Description of the calculation parameters: + + *=======+=========+=========+=========+=========+===========================* + * GENERAL PARAMETERS : * + *=======+=========+=========+=========+=========+===========================* + + * Q_MIN : minimum value of q (in units of k_F) + * Q_MAX : maximum value of q (in units of k_F) + * N_Q : number of q-points + + * E_MIN : minimum value of energy (in units of E_F) + * E_MAX : maximum value of energy (in units of E_F) + * N_E : number of E-points + + * R_MIN : minimum value of distance r (in units of 1/k_F) + * R_MAX : maximum value of distance r (in units of 1/k_F)) + * N_R : number of r-points + + *-------+---------+---------+---------+---------+---------------------------* + + * RS : average distance between 2 electrons (in units of a0) + ~ + * MSOM : m*/m (for semiconductors) + ~ + * MAT_TYP : type of material + MAT_TYPE = 'SCHRO' standard solid + MAT_TYPE = 'DIRAC' massless Fermions + MAT_TYPE = 'WATER' liquid water + ~ + * EPS_B : material's dielectric constant + + *-------+---------+---------+---------+---------+---------------------------* + + * T : temperature (in SI) + ~ + * E : external electric field (in SI) + ~ + * H : external magnetic field (in SI) + ~ + * FLD : strength of the magnetic field + FLD = 'NO' no field + FLD = 'WF' weak field + FLD = 'IF' intermediate field + FLD = 'LF' large field + + *-------+---------+---------+---------+---------+---------------------------* + + * DIM : dimension of the system + DIM = '3D' + DIM = '2D' + DIM = '1D' + DIM = 'Q0' quasi-0D + DIM = 'Q1' quasi-1D + DIM = 'Q2' quasi-2D + DIM = 'BL' bilayer + DIM = 'ML' multilayer + DIM = 'ML' multilayer + + ~ + + * R0 : wire radius + ~ + * L : length of quantum well + ~ + * OM0 : frequency of the confinement potential (SI) + ~ + * CONFIN : type of confinement + CONFIN = 'NO-CONF' no confinement + CONFIN = 'DSEPLAY' layer within a stacking of layers + CONFIN = 'CC-1111' cylindrical within subband 1 + CONFIN = 'CC-1122' cylindrical between subbands 1 and 2 + CONFIN = 'CC-1221' cylindrical between subbands 1 and 2 + CONFIN = 'CC-2222' cylindrical within subband 2 + CONFIN = 'HC-1111' harmonic within subband 1 + CONFIN = 'HC-1122' harmonic between subbands 1 and 2 + CONFIN = 'HC-1221' harmonic between subbands 1 and 2 + CONFIN = 'HC-2222' harmonic within subband 2 + CONFIN = 'INVLAYE' inversion layer in semiconductor + CONFIN = 'IQWE_LB' square well with an infinite barrier + CONFIN = 'PC1_QWI' parabolic + CONFIN = 'PC2_QWI' parabolic + CONFIN = 'SOFTCOR' soft-core potential + CONFIN = 'SWC_QWI' square well with an infinite barrier + + ~ + + * DL : interlayer distance + ~ + * D1 : distance between the two layers in the unit cell + ~ + * N_DEP : electron concentration in depletion layer (SI) + ~ + * N_INV : electron concentration in inversion layer (SI) + + ~ + + * H_TYPE : heterostructure type + H_TYPE = 'SSL1' semiconductor superlattice of type I + H_TYPE = 'SSL2' semiconductor superlattice of type II + H_TYPE = 'BILA' bilayer + H_TYPE = 'MLA1' multilayer with with one layer / unit cell + H_TYPE = 'MLA2' multilayer with with two layers / unit cell + ~ + * EPS_1 : background/layer dielectric constant + ~ + * EPS_2 : interlayer dielectric constant + + *-------+---------+---------+---------+---------+---------------------------* + + * UNIT : system unit + UNIT = 'SIU' international system + UNIT = 'CGS' CGS system + UNIT = 'ATU' atomic units + + * UNIK : K unit + UNIK = 'SI' international system + UNIK = 'AU' atomic units + + *-------+---------+---------+---------+---------+---------------------------* + + * SC_TYPE : type of screeening + SC_TYPE = 'NO' no screening + SC_TYPE = 'DH' Debye-Hückel + SC_TYPE = 'KL' Kleinman + SC_TYPE = 'ST' Streitenberger + SC_TYPE = 'TF' Thomas-Fermi + SC_TYPE = 'UI' Utsumi-Ichimaru + SC_TYPE = 'YT' Yasuhara-Takada + + *-------+---------+---------+---------+---------+---------------------------* + + * PL_TYPE : type of plasma considered + PL_TYPE = 'OCP' --> one-component plasma (~ electron gas) + PL_TYPE = 'DCP' --> two-component plasma + + * ZION : atomic number of (first) ion + + * ZION2 : atomic number of second ion + + *=======+=========+=========+=========+=========+===========================* + * DIELECTRIC FUNCTION : * + *=======+=========+=========+=========+=========+===========================* + + + * ESTDY : static vs dynamic dielectric function + STDY = ' STATIC' + STDY = 'DYNAMIC' + + * EPS_T : type of dielcectric function + EPS_T = 'LONG' longitudinal --> D_FUNCL + EPS_T = 'TRAN' transverse --> D_FUNCT + + * D_FUNC : model of dielectric function : + + 1) Static: + + ---> longitudinal: + + D_FUNCL = 'LRPA' random phase approximation (3D,2D,1D) + D_FUNCL = 'THFE' Thomas-Fermi approximation (3D,2D,1D) + + 2) Dynamic: + + ---> transverse: + + D_FUNCT = 'RPA1' random phase approximation (3D,2D) + D_FUNCT = 'RPA2' random phase approximation (3D) + D_FUNCT = 'LVLA' linearized Vlasov (3D) + D_FUNCT = 'MER1' Mermin (3D) + D_FUNCT = 'BLTZ' Boltzmann (3D) + + ---> longitudinal: + + D_FUNCL = 'ATAS' Atwal-Ashcroft <-- T-dependent + D_FUNCL = 'BLZ1' Boltzmann + D_FUNCL = 'BLZ2' damped Boltzmann + D_FUNCL = 'DACA' Arista-Brandt <-- T-dependent + D_FUNCL = 'HEAP' Hertel-Appel + D_FUNCL = 'HAFO' Hartree-Fock + D_FUNCL = 'HUCO' Hu-O'Connell <-- damping (3D,2D,Q1) + D_FUNCL = 'HYDR' hydrodynamic <-- damping + D_FUNCL = 'KLEI' Kleinman <-- T-dependent + D_FUNCL = 'KLKD' Klimontovich-Kraeft <-- T-dependent + D_FUNCL = 'KLKN' Klimontovich-Kraeft <-- T-dependent + D_FUNCL = 'LAND' Landau parameters-based + D_FUNCL = 'LVL1' linearized Vlasov (weak coupling) <-- T-dependent + D_FUNCL = 'LVL2' linearized Vlasov (strong coupling) <-- T-dependent + D_FUNCL = 'MER1' Mermin 1 <-- damping + D_FUNCL = 'MER2' Mermin 2 <-- T-dependent + D_FUNCL = 'MSAP' mean spherical approximation + D_FUNCL = 'NEVA' Nevanlinna <-- T-dependent + D_FUNCL = 'PLPO' plasmon pole + D_FUNCL = 'RDF1' Altshuler et al <-- damping + D_FUNCL = 'RDF2' Altshuler et al <-- damping + D_FUNCL = 'RPA1' RPA + D_FUNCL = 'RPA2' RPA <-- T-dependent + D_FUNCL = 'RPA3' random phase approximation <-- magnetic field (2D) + D_FUNCL = 'UTIC' Utsumi-Ichimaru <-- T-dependent + D_FUNCL = 'VLFP' Vlasov-Fokker-Planck <-- damping + + * NEV_TYPE : type of Nevalinna function used (only for D_FUNCL = 'NEVA') + NEV_TYPE = 'NONE' --> no function + NEV_TYPE = 'STA1' --> static value h(q) + NEV_TYPE = 'STA2' --> static value h(q) + NEV_TYPE = 'CLCO' --> Classical Coulomb OCP + NEV_TYPE = 'AMTA' --> Adamjan-Meyer-Tkachenko + NEV_TYPE = 'PEEL' --> Perel'-Eliashberg function + NEV_TYPE = 'PE76' --> Perel'-Eliashberg by Arkhipov et al + + ~ + + * I_T : way to incorporate temperature dependence + I_T = 0 --> no temperature (T = 0) + I_T = 1 --> analytical models used + I_T = 2 --> temperature convolution + + *-------+---------+---------+---------+---------+---------------------------* + + * PL_DISP : method used to compute the plasmon dispersion (3D real case) + PL_DISP = 'HYDRODY' hydrodynamic model + PL_DISP = 'RPA_MOD' RPA model + PL_DISP = 'TWA_MOD' Toigo-Woodruff model + PL_DISP = 'GOA_MOD' Gorobchenko model + PL_DISP = 'HUBBARD' Hubbard model + PL_DISP = 'ELASTIC' elastic model + PL_DISP = 'SGBBN_M' SGBBN model + PL_DISP = 'UTI_MOD' Utsumi-Ichimaru model + * PL_DISP : method used to compute the plasmon dispersion (2D real case) + PL_DISP = 'HYDRODY' hydrodynamic model + PL_DISP = 'RPA_MOD' RPA model + * PL_DISP : method used to compute the plasmon dispersion (1D real case) + PL_DISP = 'HYDRODY' hydrodynamic model + PL_DISP = 'RPA_MOD' RPA model + + *-------+---------+---------+---------+---------+---------------------------* + + * GSTDY : static vs dynamic local-field corrections + GSTDY = ' STATIC' --> GQ_TYPE + GSTDY = 'DYNAMIC' --> GQO_TYPE + + * GQ_TYPE : local-field correction type (3D) static + GQ_TYPE = 'NONE' no local field correction + GQ_TYPE = 'ALDA' adiabatic local density + GQ_TYPE = 'ALFL' Alvarellos-Flores + GQ_TYPE = 'BEBR' Bedell-Brown + GQ_TYPE = 'CDOP' TDDFT Corradini et al correction + GQ_TYPE = 'GEV2' Geldart-Vosko 2 + GQ_TYPE = 'GEVO' Geldart-Vosko correction + GQ_TYPE = 'GOCA' Gold-Calmels + temperature-dep. --> GQ_TYPE = 'HNCA' hypernetted chain + GQ_TYPE = 'HORA' Holas-Rahman + GQ_TYPE = 'HUBB' Hubbard correction (only exchange) + GQ_TYPE = 'ICUT' Ichimaru-Utsumi correction + GQ_TYPE = 'IKPA' Iwamoto-Krotscheck-Pines + GQ_TYPE = 'IWA1' Iwamoto G_{-1} + GQ_TYPE = 'IWA2' Iwamoto G_{3} approx. + temperature-dep. --> GQ_TYPE = 'IWA3' Iwamoto G_{-1} + GQ_TYPE = 'IWA4' Iwamoto G_{3} exact + GQ_TYPE = 'JGDG' Jung-Garcia-Gonzalez-Dobson-Godby + GQ_TYPE = 'KLLA' Kleinman-Langreth correction + GQ_TYPE = 'LDAC' LDA correction + GQ_TYPE = 'MCSC' Moroni-Ceperley-Senatore correction + GQ_TYPE = 'NAGY' Nagy correction + GQ_TYPE = 'PAVA' Pavas-Vashishta correction + GQ_TYPE = 'PGGA' Petersilka-Gossmann-Gross + GQ_TYPE = 'RICE' Rice correction + GQ_TYPE = 'SHAW' Shaw correction + GQ_TYPE = 'SLAT' Slater correction + GQ_TYPE = 'STLS' Singwi et al correction + temperature-dep. --> GQ_TYPE = 'TKAC' Tkachenko correction + GQ_TYPE = 'TRMA' Tripathy-Mandal + GQ_TYPE = 'VASI' Vashishta-Singwi correction + GQ_TYPE = 'UTI1' Utsumi-Ichimaru correction (only exchange) + + * GQ_TYPE : local-field correction type (2D) static + GQ_TYPE = 'NONE' no local field correction + GQ_TYPE = 'BUTO' Bulutay-Tomak + GQ_TYPE = 'DPGT' Davoudi-Giuliani-Giuliani-Tosi + GQ_TYPE = 'GOCA' Gold-Calmels + GQ_TYPE = 'HUBB' Hubbard correction (only exchange) + GQ_TYPE = 'IWA1' Iwamoto G_{-1} + GQ_TYPE = 'IWA2' Iwamoto G_{3} + GQ_TYPE = 'SAIC' Sato-Ichimaru correction + + * GQ_TYPE : local-field correction type (1D) static + GQ_TYPE = 'NONE' no local field correction + GQ_TYPE = 'GOCA' Gold-Calmels + GQ_TYPE = 'HUBB' Hubbard correction (only exchange) + + * IQ_TYPE : type of approximation for I(q) + IQ_TYPE = 'GKM' Gorobchenko-Kohn-Maksimov + IQ_TYPE = 'HKA' Hong-Kim + IQ_TYPE = 'IKP' Iwamoto-Krotscheck-Pines parametrization + IQ_TYPE = 'KU1' Kugler 1 + IQ_TYPE = 'KU2' Kugler 1 + + ~ + + * LANDAU : model chosen for the calculation of the Landau parameters (3D) + LANDAU = 'NONE' Landau's theory not used + LANDAU = 'CHEN' Chen's approach + LANDAU = 'RASC' Rayleigh-Schrödinger expansion + LANDAU = 'ANBR' Anderson-Brinkman model + LANDAU = 'GUTZ' Gutzwiller model + LANDAU = 'IWPI' Iwamoto-Pines model (hard-sphere) + LANDAU = 'GCYO' Giuliani-Vignale parametrization of + Yasuhara-Ousaka approach + LANDAU = 'SBOH' slave-boson one-band Hubbard model + + * LANDAU : model chosen for the calculation of the Landau parameters (2D) + LANDAU = 'NONE' Landau's theory not used + LANDAU = 'ERZA' Engelbrecht-Randeria-Zhang approach + LANDAU = 'GVYO' Giuliani-Vignale parametrization of + Yasuhara-Ousaka approach + LANDAU = 'KCMP' Kwoon-Ceperley-Martin parametrization + * GQO_TYPE : local-field correction type (3D) + GQO_TYPE = 'NONE' no local field correction + GQO_TYPE = 'ALFL' Alvarellos-Flores correction + GQO_TYPE = 'BACA' Barriga-Carrasco correction + GQO_TYPE = 'BBSA' Bachlechner-Böhm-Schinner + GQO_TYPE = 'COPI' Constantin-Pitarke + GQO_TYPE = 'DABR' Dabrowski + GQO_TYPE = 'FWRA' Forstmann-Wierling-Röpke + GQO_TYPE = 'HOK1' Hong-Kim correction + GQO_TYPE = 'HOK2' Hong-Kim correction + GQO_TYPE = 'JEWS' Jewsbury approximation + GQO_TYPE = 'KUG1' Kugler q --> 0 approximation + GQO_TYPE = 'KUG2' Kugler approximation + GQO_TYPE = 'MDGA' Mithen-Daligault-Gregori + GQO_TYPE = 'NLGA' Nagy-Laszlo-Giber approximation + GQO_TYPE = 'RIA1' Richardson-Ashcroft G_s + GQO_TYPE = 'RIA2' Richardson-Ashcroft G_n + GQO_TYPE = 'RIA3' Richardson-Ashcroft G_a + GQO_TYPE = 'SHMU' Shah-Mukhopadhyay + GQO_TYPE = 'TOWO' Toigo-Woodruff + GQO_TYPE = 'UTI2' Utsumi-Ichimaru approximation + GQO_TYPE = 'VISC' viscosity approximation + + *-------+---------+---------+---------+---------+---------------------------* + + * DAMPING : type of damping used + DAMPING = 'NONE' no damping + DAMPING = 'LFTM' lifetime + DAMPING = 'RELA' relaxation time + DAMPING = 'DECA' decay rate + DAMPING = 'DIFF' diffusion coefficient + DAMPING = 'VISC' viscosity + + * LT_TYPE : approximation used for lifetime (3D) + LT_TYPE = 'DAVI' Davies formula + LT_TYPE = 'GALI' Galitskii formula + LT_TYPE = 'GIQU' Giuliani-Quinn formula + LT_TYPE = 'GIVI' Giuliani-Vignale formula + LT_TYPE = 'INPE' Inogamov-Petrov formula + LT_TYPE = 'LUBR' Lugovskoy-Bray formula + LT_TYPE = 'NAEC' Nagy-Echenique formula + LT_TYPE = 'QIVI' Qian-Vignale formula + LT_TYPE = 'QUFE' Quinn-Ferrell formula + + * LT_TYPE : approximation used for lifetime (2D) + LT_TYPE = 'GIQ1' Giuliani-Quinn formula for e-h loss + LT_TYPE = 'GIQ2' Giuliani-Quinn formula for plasmon loss + LT_TYPE = 'GIVI' Giuliani-Vignale formula + LT_TYPE = 'HAWR' Hawrylak formula + LT_TYPE = 'MELA' Menashe-Laikhtman formula + LT_TYPE = 'QIVI' Qian-Vignale formula + + * RT_TYPE : relaxation time + RT_TYPE = ' NO' --> no relaxation time + RT_TYPE = 'E-E' --> electron-electron interaction + RT_TYPE = 'E-P' --> electron-phonon interaction + RT_TYPE = 'E-I' --> electron-phonon impurity + RT_TYPE = 'ALL' --> all three taken into account + + ~ + + * DR_TYPE : decay rate in 3D + DR_TYPE = 'UTIC' --> Utsumi-Ichimaru approximation + DR_TYPE = 'VLAS' --> Vlasov approximation + + * DC_TYPE : diffusion coefficient in 3D + DC_TYPE = 'ASHO' --> Ashurst-Hoover + + * VI_TYPE : viscosity in 3D + VI_TYPE = 'AMPP' Angilella et al hard-sphere fluid --> T-dependent + VI_TYPE = 'DRBA' Daligault-Rasmussen-Baalrud (plasmas) --> T-dependent + VI_TYPE = 'KHRA' Khrapak for Yukawa fluid --> T-dependent + VI_TYPE = 'LHPO' Longuet-Higgins-Pope --> T-dependent + VI_TYPE = 'SCHA' Schäfer --> T-dependent + VI_TYPE = 'SCHD' Schäfer (dynamic) --> T-dependent + VI_TYPE = 'SHTE' Shternin --> T-dependent + VI_TYPE = 'STEI' Steinberg low-temperature --> T-dependent + + * VI_TYPE : viscosity in 2D + VI_TYPE = 'SCHA' Schäfer --> T-dependent + graphene <-- VI_TYPE = 'KISC' Kiselev-Schmalian (dynamic) --> T-dependent + graphene <-- VI_TYPE = 'MSFA' Müller-Schmalian-Fritz --> T-dependent + + ~ + + * EE_TYPE : e-e relaxation time in 3D + RT_TYPE = 'ALAR' --> Al'tshuler-Aronov (e-e + impurities) + RT_TYPE = 'BACA' --> Barriga-Carrasco approximation (e-e) + RT_TYPE = 'FSTB' --> Fann et al approximation (e-e) + RT_TYPE = 'QIVI' --> Qian-Vignale (e-e) + RT_TYPE = 'RASM' --> Rammer-Smith (e-e) + RT_TYPE = 'UTIC' --> Utsumi-Ichimaru approximation (e-e) + RT_TYPE = 'TAIC' --> Tanaka-Ichimaru approximation (e-e) + + + * EE_TYPE : relaxation time in 2D + EE_TYPE = 'FUAB' --> Fukuyama-Abrahams (disordered metals) + graphene <-- EE_TYPE = 'LUFO' --> Lucas-Fong (e-e) + EE_TYPE = 'QIVI' --> Qian-Vignale (e-e) + EE_TYPE = 'RASM' --> Rammer-Smith (e-e) + heterostructures <-- EE_TYPE = 'REWI' --> Reizer-Wilkins (e-e) + EI_TYPE = 'SHAS' --> Sharma-Ashraf (e-e + impurities) + EE_TYPE = 'ZHDA' --> Zhang-Das Sarma (e-e) + + * EE_TYPE : relaxation time in 1D + EI_TYPE = 'SHAS' --> Sharma-Ashraf (e-e + impurities) + + * EP_TYPE : e-phonon relaxation time in 3D + EP_TYPE = 'STEL' --> Steinberg low-temperature + EP_TYPE = 'STEH' --> Steinberg High-temperature + + * EI_TYPE : e-impurit relaxation time in 3D + EI_TYPE = 'HEAP' --> Hertel-Appel approximation + + ~ + + * IP_TYPE : ion plasma relaxation time in 3D + IP_TYPE = 'SEMO' --> Selchow-Morawetz approximation + IP_TYPE = 'SPIT' --> Spitzer approximation + + * PD_TYPE : method used to compute the plasmon damping (3D) + PD_TYPE = 'NONE' --> no plasmon damping + PD_TYPE = 'CALL' --> Callen approximation + PD_TYPE = 'DGKA' --> DuBois-Gilinsky-Kivelson approximation + PD_TYPE = 'FEWA' --> Fetter and Walecka approximation + PD_TYPE = 'JEWS' --> Jewsbury approximation + PD_TYPE = 'LITI' --> Giuliani-Quinn lifetime approximation + PD_TYPE = 'MOPE' --> Molinari-Peerani approximation + PD_TYPE = 'NPSA' --> Ninham-Powel-Swanson approximation + PD_TYPE = 'SGAA' --> Segui-Gervasoni-Arista approximation + + ~ + + * QD_TYPE : method used to compute q-dependent relaxation time + QD_TYPE = 'NONE' --> no q-dependence + QD_TYPE = 'GAUS' --> Gaussian + QD_TYPE = 'LORE' --> Lorentzian + + * ZETA : Value of Tanaka-Ichimaru parameter + + *-------+---------+---------+---------+---------+---------------------------* + + * INT_POT : type of interaction potential (3D) + INT_POT = 'COULO' Coulomb interaction + INT_POT= 'YUKAW' Yukawa interaction + INT_POT= 'RPAPO' RPA interaction + INT_POT = 'OVER1' Overhauser interaction + INT_POT = 'OVER2' modified Overhauser interaction + INT_POT = 'DEUTS' Deutsch interaction + INT_POT = 'PHOLE' particle-hole interaction + INT_POT = 'KELBG' Kelbg interaction + + * S : + + * EPS : + + *-------+---------+---------+---------+---------+---------------------------* + + * EK : electron kinetic energy (eV) + * EP_C : electron-phonon coupling + * DEBYE_T : material Debye temperature + + ~ + + * NA : number of atoms per unit volume + * MA : mass of the atoms + * RA : radius of the atoms + + *-------+---------+---------+---------+---------+---------------------------* + + * NI : impurity concentration + * EI_C : strength of impurity scattering + + *-------+---------+---------+---------+---------+---------------------------* + + + * CF_TYPE : type of classical fluid calculation --> 3D + CF_TYPE = 'SHS' smooth hard spheres + CF_TYPE = 'RH1' rough hard spheres (Pidduck) + CF_TYPE = 'RH2' rough hard spheres (Condiff-Lu-Dahler) + CF_TYPE = 'RH3' rough hard spheres (McCoy-Sandler-Dahler) + CF_TYPE = 'DCE' dilute Chapman-Enskog + CF_TYPE = 'HCE' heavy (i.e. dense) Chapman-Enskog + CF_TYPE = 'LJF' Lennard-Jones fluid + + CF_TYPE = 'DHD' dense hard disks --> 2D + + * PF_TYPE : type of packing fraction --> 2D + PF_TYPE = 'HDM' --> hard disk model + + --> 3D + PF_TYPE = 'HSM' --> hard sphere model + PF_TYPE = 'RCP' --> random closed-packed + PF_TYPE = 'FCC' --> FCC closed-packed + PF_TYPE = 'FRE' --> freezing + PF_TYPE = 'MEL' --> melting + + * SL_TYPE : type of scattering length calculation + SL_TYPE = 'HSP' --> hard sphere potential + SL_TYPE = 'ASW' --> attractive square well (without bound state) + SL_TYPE = 'RSW' --> repulsive square well + SL_TYPE = 'DSP' --> delta-shell potential + SL_TYPE = 'AYP' --> attractive Yukawa potential + SL_TYPE = 'CCO' --> Coulomb cut-off potential + SL_TYPE = 'HUL' --> Hulthén potential + + *=======+=========+=========+=========+=========+===========================* + * STRUCTURE FACTOR : * + *=======+=========+=========+=========+=========+===========================* + + + * SSTDY : static vs dynamic local-field corrections + SSTDY = ' STATIC' --> SQ_TYPE + SSTDY = 'DYNAMIC' --> SQO_TYPE + + * SQ_TYPE : structure factor approximation (3D) --> static + SQ_TYPE = 'DEH' Debye-Hückel approximation + SQ_TYPE = 'GEA' generalized approximation + SQ_TYPE = 'GOR' Gorobchenko approximation + SQ_TYPE = 'GR2' computed from g(r) (GR_TO_SQ.f code) + SQ_TYPE = 'GSB' Gori-Giorgi-Sacchetti-Bachelet approximation + SQ_TYPE = 'HFA' Hartree-Fock approximation (only exchange) + SQ_TYPE = 'HUB' Hubbard approximation + SQ_TYPE = 'ICH' Ichimaru approximation + SQ_TYPE = 'MSA' mean spherical approximation + SQ_TYPE = 'PKA' Pietiläinen-Kallio + SQ_TYPE = 'RPA' RPA approximation + SQ_TYPE = 'SHA' Shaw approximation + SQ_TYPE = 'SIN' Singh + SQ_TYPE = 'SPA' Singh-Pathak + SQ_TYPE = 'TWA' Toigo-Woodruff approximation +! + * SQO_TYPE : structure factor approximation (3D) --> dynamic + SQO_TYPE = 'ABA' Arista-Brandt approximation + SQO_TYPE = 'HFA' Hartree-Fock approximation + SQO_TYPE = 'HYD' hyrodynamic approximation + SQO_TYPE = 'IGA' ideal gas approximation + SQO_TYPE = 'ITA' Ichimaru-Tanaka approximation + SQO_TYPE = 'MFA' Hansen-McDonald-Pollock approximation + SQO_TYPE = 'NIC' Nakano-Ichimaru approximation + SQO_TYPE = 'UTI' Utsumi-Ichimaru approximation (3D) + SQO_TYPE = 'VLA' linearized Vlasov approximation + + *=======+=========+=========+=========+=========+===========================* + * PAIR CORRELATION FUNCTION : * + *=======+=========+=========+=========+=========+===========================* + + * GR_TYPE : pair correlation function approximation g(r) (3D) + GR_TYPE = 'CDF' from chain diagram formula of PDF (long distance) + GR_TYPE = 'DHA' Debye-Hückel approximation + GR_TYPE = 'DWA' DeWitt approximation + GR_TYPE = 'FBA' Frieman-Book approximation + GR_TYPE = 'HFA' Hartree-Fock approximation (only exchange) + GR_TYPE = 'HUB' Hubbard approximation + GR_TYPE = 'LLA' Lee-Long approximation + GR_TYPE = 'ORB' Ortiz-Ballone approximation + GR_TYPE = 'PDF' from pair distribution function + GR_TYPE = 'SHA' Shaw approximation + GR_TYPE = 'SQ2' computed from S(q) (SQ_TO_GR.f code) + GR_TYPE = 'WIG' Wigner approximation + + * GR0_MODE : g(0) (3D) + GR0_MODE = 'CAGO' --> Calmels-Gold + GR0_MODE = 'DPGT' --> Davoudi-Polini-Giuliani-Tosi + GR0_MODE = 'HASA' --> Holas-Aravind-Singwi (small r_s) + GR0_MODE = 'ICHI' --> Ichimaru + GR0_MODE = 'KIMB' --> Kimball + GR0_MODE = 'OVE1' --> Overhauser 1 + GR0_MODE = 'OVE2' --> Overhauser 2 + GR0_MODE = 'QIAN' --> Qian + * GR0_MODE : g(0) (2D) + GR0_MODE = 'CAGO' --> Calmels-Gold + GR0_MODE = 'HAFO' --> Hartree-Fock + GR0_MODE = 'MOMA' --> Moreno-Marinescu + GR0_MODE = 'NSOA' --> Nagano-Singwi-Ohnishi + GR0_MODE = 'QIAN' --> Qian + + *=======+=========+=========+=========+=========+===========================* + * PAIR DISTRIBUTION FUNCTION : * + *=======+=========+=========+=========+=========+===========================* + + * RH_TYPE : pair distribution function approximation (3D) + RH_TYPE = 'CDI' chain diagram improved + RH_TYPE = 'CEG' classical electron gas + RH_TYPE = 'DEB' Debye electron gas + RH_TYPE = 'FUA' correct to order 2 in epsilon + RH_TYPE = 'SDC' short-distance correlations + RH_TYPE = 'WDA' watermelon diagrams summed + + *=======+=========+=========+=========+=========+===========================* + * ENERGY CALCULATIONS : * + *=======+=========+=========+=========+=========+===========================* + + * EC_TYPE : type of correlation energy functional (3D) + EC_TYPE = 'GEBR_W' --> Gell-Mann and Brueckner + EC_TYPE = 'CAMA_W' --> Carr and Maradudin + EC_TYPE = 'EHTY_S' --> Endo-Horiuchi-Takada-Yasuhara + EC_TYPE = 'HELU_W' --> Hedin and Lundqvist + EC_TYPE = 'VBHE_W' --> von Barth and Hedin + EC_TYPE = 'PEZU_W' --> Perdew and Zunger + EC_TYPE = 'WIGN_S' --> Wigner + EC_TYPE = 'NOPI_S' --> Nozières and Pines + EC_TYPE = 'LIRO_S' --> Lindgren and Rosen + EC_TYPE = 'PEZU_S' --> Perdew and Zunger + EC_TYPE = 'REHI_S' --> Rebei and Hitchon + EC_TYPE = 'GGSB_G' --> Gori-Giorgi-Sacchetti-Bachelet + EC_TYPE = 'PRKO_G' --> Proynov and Kong + EC_TYPE = 'VWNU_G' --> Vosko, Wilk and Nusair + EC_TYPE = 'PEWA_G' --> Perdew and Wang + EC_TYPE = 'HUBB_G' --> Hubbard + EC_TYPE = 'CHAC_G' --> Chachiyo + EC_TYPE = 'ISKO_T' --> Isihara and Kojima + * EC_TYPE : type of correlation energy functional (2D) + EC_TYPE = 'TACE_G' --> Tanatar-Ceperley + EC_TYPE = 'CPPA_G' --> Seidl-Perdew_Levy + EC_TYPE = 'AMGB_G' --> Attaccalite-Moroni-Gori-Giorgi-Bachelet + EC_TYPE = 'SEID_G' --> Seidl + EC_TYPE = 'LOOS_W' --> Loos + EC_TYPE = 'WIGN_S' --> Wigner + EC_TYPE = 'ISTO_T' --> Isihara-Toyoda + * EC_TYPE : type of correlation energy functional (1D) + EC_TYPE = 'LOOS_W' --> Loos + EC_TYPE = 'WIGN_S' --> Wigner + + + * FXC_TYPE : type of XC free energy functional --> 3D + FXC_TYPE = 'NO' --> None + FXC_TYPE = 'EB' --> Ebeling et al + FXC_TYPE = 'IC' --> Ichimaru et al + FXC_TYPE = 'KS' --> Karasiev et al + FXC_TYPE = 'VS' --> Vashishta and Singwi + FXC_TYPE = 'PD' --> Perrot and Dharma-Wardana + FXC_TYPE = 'EK' --> Ebeling-Kraeft-Kremp-Röpke + + * EXC_TYPE : type of exchange-correlation energy functional --> 3D + EXC_TYPE = 'NO' --> None + EXC_TYPE = 'GT' --> Goedeker-Tetter-Hutter + EXC_TYPE = 'ST' --> + EXC_TYPE = 'BD' --> Brown-DuBois-Holzmann-Ceperley + + ~ + + + *=======+=========+=========+=========+=========+===========================* + * SPIN POLARIZATION : * + *=======+=========+=========+=========+=========+===========================* + + * IMODE : choice of spin parameters + IMODE = 1 : no spin polarization + IMODE = 2 : fully spin-polarized + + * XI : spin polarization : (n+ - n-) / n + + *=======+=========+=========+=========+=========+===========================* + * THERMODYNAMIC PROPERTIES : * + *=======+=========+=========+=========+=========+===========================* + + * TH_PROP : type of calculation --> thermodynamic properties + TH_PROP = 'CLAS' : classical approximation + TH_PROP = 'QUAN' : quantum approximation + + * GP_TYPE : grand partition function type (3D) + GP_TYPE = 'IK0' Isihara-Kojima formulation + GP_TYPE = 'RH0' Rebei-Hitchon formulation + GP_TYPE = 'IKM' Isihara-Kojima with magnetic field + + * GP_TYPE : grand partition function type (2D) + GP_TYPE = 'I20' Isihara-Kojima formulation + GP_TYPE = 'I2M' Isihara-Kojima with magnetic field + + *=======+=========+=========+=========+=========+===========================* + * INCOMING ION BEAM : * + *=======+=========+=========+=========+=========+===========================* + + * Z_BEAM : charge of ions in incoming beam + * EK_BEAM : kinetic energy of incoming beam ions (eV) + + *=======+=========+=========+=========+=========+===========================* + * OUTPUT CALCULATIONS : * + *=======+=========+=========+=========+=========+===========================* + + * I_DF : switch for dielectric function printing + I_DF = 0 : dielectric function not printed + I_DF = 1 : dielectric function printed in file 'diel_func.dat' + + * I_PZ : switch for polarization function printing + I_PZ = 0 : polarization function not printed + I_PZ = 1 : polarization function printed in file 'pola_func.dat' + + * I_SU : switch for susceptibility function printing + I_SU = 0 : susceptibility function not printed + I_SU = 1 : susceptibility function printed in file 'susc_func.dat' + + * I_CD : switch for electrical conductivity printing + I_CD = 0 : electrical conductivity not printed + I_CD = 1 : electrical conductivity printed in file 'cond_func.dat' + + *-------+---------+---------+---------+---------+---------------------------* + + * I_PD : switch for plasmon dispersion printing + I_PD = 0 : plasmon dispersion not calculated + I_PD = 1 : plasmon dispersion printed in file 'plas_disp.dat' + + * I_EH : switch for electron-hole dispersion printing + I_EH = 0 : electron-hole dispersion not calculated + I_EH = 1 : electron-hole dispersion printed in file 'elec_hole.dat' + + * I_E2 : switch for two-electron-hole dispersion printing + I_E2 = 0 : two-electron-hole dispersion not calculated + I_E2 = 1 : two-electron-hole dispersion printed in file 'elec_hol2.dat' + + * I_CK : switch for k-space e-e interaction potential printing + I_CK = 0 : potential not calculated + I_CK = 1 : potential printed in file 'int_pot_k.dat' + + * I_CR : switch for real-space e-e interaction potential printing + I_CR = 0 : potential not calculated + I_CR = 1 : potential printed in file 'int_pot_r.dat' + + * I_SA : switch for scattering amplitude printing + I_SA = 0 : scattering amplitude not calculated + I_SA = 1 : scattering amplitude printed in file 'scat_ampl.dat' + + *-------+---------+---------+---------+---------+---------------------------* + + * I_LF : switch for local-field corrections G(q,omega) printing + I_LF = 0 : local-field corrections not calculated + I_LF = 1 : local-field corrections printed in file 'loca_fiel.dat' + + * I_IQ : switch for G(q,inf) printing + I_IQ = 0 : G(q,inf) not calculated + I_IQ = 1 : G(q,inf) printed in file 'ginf_fiel.dat' + + * I_SF : switch for structure factor S(q,omega) printing + I_SF = 0 : structure factor not calculated + I_SF = 1 : structure factor printed in file 'stru_fact.dat' + + * I_PC : switch for pair correlation function g(r) printing + I_PC = 0 : pair correlation function not calculated + I_PC = 1 : pair correlation function printed in file 'pair_corr.dat' + + ~ + + * I_P2 : switch for pair distribution rho2(r) printing + I_P2 = 0 : pair distribution function not calculated + I_P2 = 1 : pair distribution function printed in file 'pair_dist.dat' + + * I_VX : switch for vertex function Gamma(q,omega) printing + I_VX = 0 : vertex function not calculated + I_VX = 1 : vertex function printed in file 'vertex_fu.dat' + + * I_DC : switch for plasmon damping coefficient Im[eps]/q^2 printing + I_DC = 0 : plasmon damping not calculated + I_DC = 1 : plasmon damping printed in file 'plas_damp.dat' + + * I_MD : switch for momentum distribution printing + I_MD = 0 : momentum distribution not calculated + I_MD = 1 : momentum distribution printed in file 'mome_dist.dat' + + ~ + + * I_LD : switch for Landau parameters printing + I_LD = 0 : Landau parameters not calculated + I_LD = 1 : Landau parameters printed in file 'landau_pa.dat' + + * I_DP : switch for damping printing + I_DP = 0 : damping not calculated + I_DP = 1 : damping printed in file 'damp_file.dat' + + * I_LT : switch for plasmon lifetime printing + I_LT = 0 : plasmon lifetime not calculated + I_LT = 1 : plasmon lifetime printed in file 'life_time.dat' + + * I_BR : switch for plasmon broadening printing + I_BR = 0 : plasmon broadening not calculated + I_BR = 1 : plasmon broadening printed in file 'broadenin.dat' + + ~ + + * I_PE : switch for plasmon energy printing + I_PE = 0 : plasmon energy not calculated + I_PE = 1 : plasmon energy printed in file 'plas_ener.dat' + + * I_QC : switch for plasmon q-bounds printing + I_QC = 0 : plasmon q-bounds not calculated + I_QC = 1 : plasmon q-bounds printed in file 'qc_bounds.dat' + + * I_RL : switch for relaxation time printing + I_RL = 0 : relaxation time not calculated + I_RL = 1 : relaxation time printed in file 'rela_time.dat' + + * I_TF : switch for Thomas-Fermi wave vector printing + I_TF = 0 : Thomas-Fermi wave vector not calculated + I_TF = 1 : Thomas-Fermi wave vector printed in file 'thomas-fe.dat' + + ~ + + * I_DY : switch for Debye wave vector printing + I_DY = 0 : Debye wave vector not calculated + I_DY = 1 : Debye wave vector printed in file 'debye_wav.dat' + + * I_ME : switch for moments of epsilon(q,omega) printing + I_ME = 0 : moments of epsilon not calculated + I_ME = 1 : moments of epsilon printed in file 'moments_e.dat' + + * I_MS : switch for moments of S(q,omega) printing + I_MS = 0 : moments of structure factor not calculated + I_MS = 1 : moments of structure factor printed in file 'moments_s.dat' + + * I_ML : switch for moments of loss function printing + I_ML = 0 : moments of loss function not calculated + I_ML = 1 : moments of loss function printed in file 'moments_l.dat' + + ~ + + * I_MC : switch for moments of conductivity printing + I_MC = 0 : moments of conductivity not calculated + I_MC = 1 : moments of conductivity printed in file 'moments_c.dat' + + * I_DE : switch for derivative of Re[ dielectric function ] printing + I_DE = 0 : derivative not calculated + I_DE = 1 : derivative printed in file 'deri_epsi.dat' + + * I_ZE : switch for Re[ dielectric function ] = 0 printing + I_ZE = 0 : function not calculated + I_ZE = 1 : function printed in file 'ree0_file.dat' + + * I_SR : switch for sum rules for epsilon printing + I_SR = 0 : sum rules not calculated + I_ST = 1 : sum rules printed in file 'sum_rules.dat' + + ~ + + * I_CW : switch for confinement wave function printing + I_CW = 0 : confinement wave function not calculated + I_CW = 1 : confinement wave function printed in file 'confin_wf.dat' + + * I_CF : switch for confinement potential printing + I_CF = 0 : confinement potential not calculated + I_CF = 1 : confinement potential printed in file 'confin_pt.dat' + + * I_EM : switch for effective mass printing + I_EM = 0 : effective mass not calculated + I_EM = 1 : effective mass printed in file 'effe_mass.dat' + + * I_MF : switch for mean free path printing + I_MF = 0 : mean free path not calculated + I_MF = 1 : mean free path printed in file 'mean_path.dat' + + ~ + + * I_SP : switch for spectral function printing + I_SP = 0 : spectral function not calculated + I_SP = 1 : spectral function printed in file 'spec_func.dat' + + * I_SE : switch for self-energy printing + I_SE = 0 : self-energy not calculated + I_SE = 1 : self-energy printed in file 'self_ener.dat' + + * I_NV : switch for Nevanlinaa function printing + I_NV = 0 : Nevanlinaa function not calculated + I_NV = 1 : Nevanlinaa function printed in file 'nevanlina.dat' + + * I_ES : switch for Eliashberg function printing + I_ES = 0 : Eliashberg function not calculated + I_ES = 1 : Eliashberg function printed in file 'elia_func.dat' + + ~ + + * I_GR : switch for Grüneisen parameter printing + I_GR = 0 : Grüneisen parameter not calculated + I_GR = 1 : Grüneisen parameter printed in file 'grune_par.dat' + + * I_FD : switch for Fermi-Dirac distribution printing + I_FD = 0 : Fermi-Dirac distribution not calculated + I_FD = 1 : Fermi-Dirac distribution printed in file 'fermi_dir.dat' + + * I_BE : switch for Bose-Einstein distribution printing + I_BE = 0 : Bose-Einstein distribution not calculated + I_BE = 1 : Bose-Einstein distribution printed in file 'bose_eins.dat' + + * I_MX : switch for Maxwell distribution printing + I_MX = 0 : Maxwell distribution not calculated + I_MX = 1 : Maxwell distribution printed in file 'maxwell_d.dat' + + ~ + + * I_SC : switch for scale parameters printing + I_SC = 0 : scale parameters not calculated + I_SC = 1 : scale parameters printed in file 'scale_par.dat' + + * I_DS : switch for density of states printing + I_DS = 0 : density of states not calculated + I_DS = 1 : density of states printed in file 'dens_stat.dat' + + * I_SB : switch for subband energies printing + I_SB = 0 : subband energies not calculated + I_SB = 1 : subband energies printed in file 'subb_ener.dat' + + *-------+---------+---------+---------+---------+---------------------------* + + * I_GP : switch for grand partition function printing + I_GP = 0 : grand partition function not calculated + I_GP = 1 : grand partition function printed in file 'gran_part.dat' + + * I_PR : switch for electronic pressure printing + I_PR = 0 : electronic pressure not calculated + I_PR = 1 : electronic pressure printed in file 'epressure.dat' + + * I_CO : switch for compressibility printing + I_CO = 0 : compressibility not calculated + I_CO = 1 : compressibility printed in file 'comp_file.dat' + + * I_CP : switch for chemical potential printing + I_CP = 0 : chemical potential not calculated + I_CP = 1 : chemical potential printed in file 'chem_pote.dat' + + ~ + + * I_BM : switch for bulk modulus printing + I_BM = 0 : bulk modulus not calculated + I_BM = 1 : bulk modulus printed in file 'bulk_modu.dat' + + * I_SH : switch for shear modulus printing + I_SH = 0 : shear modulus not calculated + I_SH = 1 : shear modulus printed in file 'shear_mod.dat' + + * I_S0 : switch for zero sound velocity printing + I_S0 = 0 : zero sound velocity not calculated + I_S0 = 1 : zero sound velocity printed in file 'zero_soun.dat' + + * I_S1 : switch for first sound velocity printing + I_S1 = 0 : first sound velocity not calculated + I_S1 = 1 : first sound velocity printed in file 'firs_soun.dat' + + ~ + + * I_DT : switch for Debye temperature printing + I_DT = 0 : Debye temperature not calculated + I_DT = 1 : Debye temperature printed in file 'Debye_tmp.dat' + + * I_PS : switch for Pauli paramagnetic susceptibility printing + I_PS = 0 : Pauli paramagnetic susceptibility not calculated + I_PS = 1 : Pauli paramagnetic susceptibility printed in file 'para_susc.dat' + + * I_IE : switch for internal energy printing + I_IE = 0 : internal energy not calculated + I_IE = 1 : internal energy printed in file 'inter_ene.dat' + + * I_EI : switch for excess internal energy printing + I_EI = 0 : excess internal energy not calculated + I_EI = 1 : excess internal energy printed in file 'exces_ene.dat' + + ~ + + * I_FH : switch for Helmholtz free energy printing + I_FH = 0 : Helmholtz free energy not calculated + I_FH = 1 : Helmholtz free energy printed in file 'helm_free.dat' + + * I_EY : switch for entropy printing + I_EY = 0 : entropy not calculated + I_EY = 1 : entropy printed in file 'entropy_f.dat' + + *-------+---------+---------+---------+---------+---------------------------* + + * I_EF : switch for Fermi energy printing + I_EF = 0 : Fermi energy not calculated + I_EF = 1 : Fermi energy printed in file 'fermi_ene.dat' + + * I_KF : switch for Fermi momentum printing + I_KF = 0 : Fermi momentum not calculated + I_KF = 1 : Fermi momentum printed in file 'fermi_vec.dat' + + * I_VF : switch for Fermi velocity printing + I_VF = 0 : Fermi velocity not calculated + I_VF = 1 : Fermi velocity printed in file 'fermi_vel.dat' + + * I_TE : switch for Fermi temperature printing + I_TE = 0 : Fermi temperature not calculated + I_TE = 1 : Fermi temperature printed in file 'fermi_tmp.dat' + + ~ + + * I_DL : switch for density of states at Fermi level printing + I_DL = 0 subband energies: density of states at Fermi level not calculated + I_DL = 1 : density of states at Fermi level printed in file 'fermi_dos.dat' + + *-------+---------+---------+---------+---------+---------------------------* + + * I_TW : switch for thermal De Broglie wavelength printing + I_TW = 0 : thermal De Broglie wavelength not calculated + I_TW = 1 : thermal De Broglie wavelength printed in file 'thermal_w.dat' + + * I_VT : switch for thermal velocity printing + I_VT = 0 : thermal velocity not calculated + I_VT = 1 : thermal velocity printed in file 'thermal_v.dat' + + * I_TC : switch for thermal conductivity printing + I_TC = 0 : thermal conductivity not calculated + I_TC = 1 : thermal conductivity printed in file 'thermal_c.dat' + + *-------+---------+---------+---------+---------+---------------------------* + + * I_EG : switch for ground state energy printing + I_EG = 0 : ground state energy not calculated + I_EG = 1 : ground state energy printed in file 'ground_st.dat' + + * I_EX : switch for exchange energy printing + I_EX = 0 : exchange energy not calculated + I_EX = 1 : exchange energy printed in file 'ex_energy.dat' + + * I_XC : switch for exchange correlation energy printing + I_XC = 0 : exchange correlation energy not calculated + I_XC = 1 : exchange correlation energy printed in file 'xc_energy.dat' + + * I_EC : switch for correlation energy printing + I_EC = 0 : correlation energy not calculated + I_EC = 1 : correlation energy printed in file 'corr_ener.dat' + + ~ + + * I_HF : switch for Hartree-Fock energy printing + I_HF = 0 : Hartree-Fock energy not calculated + I_HF = 1 : Hartree-Fock energy printed in file 'hf_energy.dat' + + * I_EK : switch for kinetic energy printing + I_EK = 0 : kinetic energy not calculated + I_EK = 1 : kinetic energy printed in file 'kine_ener.dat' + + * I_EP : switch for potential energy printing + I_EP = 0 : potential energy not calculated + I_EP = 1 : potential energy printed in file 'pote_ener.dat + + *-------+---------+---------+---------+---------+---------------------------* + + * I_VI : switch for shear viscosity printing + I_VI = 0 : shear viscosity not calculated + I_VI = 1 : shear viscosity printed in file 'visc_coef.dat' + + * I_DI : switch for diffusion coefficient printing + I_DI = 0 : diffusion coefficient not calculated + I_DI = 1 : diffusion coefficient printed in file 'diff_coef.dat' + + *-------+---------+---------+---------+---------+---------------------------* + + * I_FP : switch for fluctuation potential calculation + I_FP = 0 : fluctuation potential not calculated + I_FP = 1 : fluctuation potential printed in file 'fluct_pot.dat' + + * I_EL : switch for loss function calculation + I_EL = 0 : loss function not calculated + I_EL = 1 : loss function printed in file 'ener_loss.dat' + + * I_PO : switch for stopping power calculation + I_PO = 0 : stopping power not calculated + I_PO = 1 : stopping power printed in file 'stop_powe.dat' + + * I_RF : switch for refractive index calculation + I_RF = 0 : refractive index not calculated + I_RF = 1 : refractive index printed in file 'refrac_in.dat' + + ~ + + * I_VC : switch for dynamic screened Coulomb potential V(q,omega) calculation + I_RF = 0 : dynamic screened Coulomb potential not calculated + I_RF = 1 : dynamic screened Coulomb potential printed in file 'dyna_coul.dat' + + *-------+---------+---------+---------+---------+---------------------------* + + * I_FN : switch for appending the calculation type string + to the output filename + I_FN = 0 : standard output filename + I_FN = 1 : parameter added to filename + + * I_WR : switch for writing physical properties into the log file + I_WR = 0 : does not write + I_WR = 1 : writes + + + + + + + + + + +.SH BUGS +No known bugs for now. +.SH AUTHOR +$AUTHORS$ diff --git a/src/python/msspec_dfm/__init__.py b/src/python/msspec_dfm/__init__.py new file mode 100644 index 0000000..76f84ea --- /dev/null +++ b/src/python/msspec_dfm/__init__.py @@ -0,0 +1,23 @@ +#!/usr/bin/env python +# coding: utf-8 +# +# Copyright © 2022 - Rennes Physics Institute +# +# This file is part of MsSpec-DFM. +# +# MsSpec-DFM is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# MsSpec-DFM is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# You should have received a copy of the GNU General Public License +# along with MsSpec-DFM. If not, see . +# +# Source file : src/python/msspec_dfm/__init__.py +# Last modified: Fri, 25 Feb 2022 17:27:31 +0100 +# Committed by : Sylvain Tricot 1645806435 +0100 + +from msspec_dfm.version import __version__ diff --git a/src/python/msspec_dfm/cli.py b/src/python/msspec_dfm/cli.py new file mode 100644 index 0000000..3b49bfe --- /dev/null +++ b/src/python/msspec_dfm/cli.py @@ -0,0 +1,50 @@ +#!/usr/bin/env python +# coding: utf-8 +# +# Copyright © 2022 - Rennes Physics Institute +# +# This file is part of MsSpec-DFM. +# +# MsSpec-DFM is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# MsSpec-DFM is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# You should have received a copy of the GNU General Public License +# along with MsSpec-DFM. If not, see . +# +# Source file : src/python/msspec_dfm/cli.py +# Last modified: Fri, 25 Feb 2022 17:27:32 +0100 +# Committed by : Sylvain Tricot 1645806435 +0100 + +import argparse +import logging +from msspec_dfm.version import __version__ + + +def main(): + parser = argparse.ArgumentParser(description="Compute the dielectric function") + # The folder option is the default place where are the results + parser.add_argument('--folder', default='./Results', + help='The default place where are stored the results..') + + + parser.add_argument('--verbose', '-v', default=0, action='count', + help=('Increase verbosity output. Full verbosity' + ' for -vvv')) + + parser.add_argument('--version', action='store_true', + help=('Show the program version.')) + + args = parser.parse_args() + + # adjust the verbosity level + verbosity_levels = [logging.ERROR, logging.WARNING, logging.INFO, logging.DEBUG] + logging.basicConfig(level=verbosity_levels[min(args.verbose, len(verbosity_levels)-1)]) + + if args.version: + print(__version__) + exit(0) diff --git a/src/python/msspec_dfm/version.py b/src/python/msspec_dfm/version.py new file mode 100644 index 0000000..b6899cf --- /dev/null +++ b/src/python/msspec_dfm/version.py @@ -0,0 +1,54 @@ +#!/usr/bin/env python +# coding: utf-8 +# +# Copyright © 2022 - Rennes Physics Institute +# +# This file is part of MsSpec-DFM. +# +# MsSpec-DFM is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# MsSpec-DFM is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# You should have received a copy of the GNU General Public License +# along with MsSpec-DFM. If not, see . +# +# Source file : src/python/msspec_dfm/version.py +# Last modified: Fri, 25 Feb 2022 17:27:32 +0100 +# Committed by : Sylvain Tricot 1645806435 +0100 + +import os + +from pkg_resources import DistributionNotFound +from pkg_resources import get_distribution +from pkg_resources import parse_version + +# find the version number +# 1- Try to read it from the git info +# 2- If it fails, try to read it from the distribution file +# 3- If it fails, try to read it from the VERSION file + +try: + from setuptools_scm import get_version + v = get_version(root='../../', relative_to=__file__, version_scheme="post-release") + v = parse_version(v) + if v._version.post[-1] == 0: + __version__ = v.base_version + else: + __version__ = v.public +except Exception as err: + try: + __version__ = get_distribution(__name__.strip('.version')).version + except Exception as err: + try: + thisfile_path = os.path.abspath(__file__) + thisfile_dir = os.path.dirname(thisfile_path) + versionfile = os.path.join(thisfile_dir, "../VERSION") + with open(versionfile, "r") as fd: + __version__ = fd.readline() + except Exception as err: + #print("Unable to get the version number!") + __version__ = "0.0.0" diff --git a/src/python/pip.freeze b/src/python/pip.freeze new file mode 100644 index 0000000..6ccafc3 --- /dev/null +++ b/src/python/pip.freeze @@ -0,0 +1 @@ +matplotlib diff --git a/src/python/setup.py b/src/python/setup.py new file mode 100644 index 0000000..a6effab --- /dev/null +++ b/src/python/setup.py @@ -0,0 +1,65 @@ +#!/usr/bin/env python +# +# Copyright © 2022 - Rennes Physics Institute +# +# This file is part of MsSpec-DFM. +# +# MsSpec-DFM is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# MsSpec-DFM is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# You should have received a copy of the GNU General Public License +# along with MsSpec-DFM. If not, see . +# +# Source file : src/python/setup.py +# Last modified: Fri, 25 Feb 2022 17:27:32 +0100 +# Committed by : Sylvain Tricot 1645806435 +0100 + +import glob +import sys +from setuptools import setup, find_packages +from msspec_dfm.version import __version__ + +with open('pip.freeze', 'r') as fd: + REQUIREMENTS = fd.read().strip().split('\n') + +if __name__ == "__main__": + setup(name='msspec_dfm', + version=__version__, + include_package_data=True, + packages=find_packages(include='msspec_dfm.*'), + install_requires=REQUIREMENTS, + data_files = [('share/man/man1', glob.glob('man/*.gz'))], + + author='Didier Sébilleau, Aditi Mandhal, Sylvain Tricot', + author_email='sylvain.tricot@univ-rennes1.fr', + maintainer='Sylvain Tricot', + maintainer_email='sylvain.tricot@univ-rennes1.fr', + url='https://git.ipr.univ-rennes1.fr/epsi/MsSpec-DFM', + description='', + long_description="", + #download_url='', + # See https://pypi.python.org/pypi?%3Aaction=list_classifiers + classifiers=[ + 'Development Status :: 3 - Alpha', + 'Environment :: Console', + 'Intended Audience :: Science/Research', + 'License :: OSI Approved :: GNU General Public License (GPL)', + 'Natural Language :: English', + 'Operating System :: Microsoft :: Windows :: Windows 10', + 'Operating System :: POSIX :: Linux', + 'Operating System :: MacOS :: MacOS X', + 'Programming Language :: Fortran', + 'Programming Language :: Python :: 3 :: Only', + 'Topic :: Scientific/Engineering :: Physics', + ], + keywords='', + license='GPL', + entry_points={'console_scripts': [ + 'eps=msspec_dfm.cli:main',], + }, + )