# # This is a test makefile for Electronic-structure # # This particular makefile defines all the executables and objects # files needed, who they depend on, and the compilation defaults.# # That file defines the actual commands to use to run the C++ # compiler, library options and directories, etc., all of which are # machine specific and depend on the local installation. Hence the name. # VERSION = ABACUS HEADERS = source_main/*.h VPATH=./src_global:\ ./source_main:\ ./source_basis/module_ao:\ ./source_basis/module_nao:\ ./source_cell/module_neighbor:\ ./source_cell/module_symmetry:\ ./source_cell:\ ./source_base:\ ./source_base/kernels:\ ./source_base/module_external:\ ./source_base/module_container/base/core:\ ./source_base/module_container/ATen/core:\ ./source_base/module_container/ATen/kernels:\ ./source_base/module_container/ATen/ops:\ ./source_base/module_device:\ ./source_base/module_mixing:\ ./source_md:\ ./source_basis/module_pw:\ ./source_basis/module_pw/module_fft:\ ./source_esolver:\ ./source_hsolver:\ ./source_hsolver/kernels:\ ./source_hsolver/module_genelpa:\ ./source_hsolver/module_pexsi:\ ./source_estate:\ ./source_estate/kernels:\ ./source_estate/module_pot:\ ./source_estate/module_charge:\ ./source_estate/module_dm:\ ./source_psi:\ ./source_psi/kernels:\ ./source_hamilt:\ ./source_hamilt/module_ewald:\ ./source_hamilt/module_surchem:\ ./source_hamilt/module_xc:\ ./source_hamilt/module_xc/kernels:\ ./source_pw/module_pwdft:\ ./source_pw/module_ofdft:\ ./source_pw/module_stodft:\ ./source_pw/module_pwdft/operator_pw:\ ./source_pw/module_pwdft/kernels:\ ./source_pw/module_pwdft/module_exx_helper:\ ./source_pw/module_stodft/kernels:\ ./source_lcao/module_hcontainer:\ ./source_lcao:\ ./source_lcao/module_rt:\ ./source_lcao/module_deepks:\ ./source_lcao/module_dftu:\ ./source_lcao/module_deltaspin:\ ./source_lcao/module_operator_lcao:\ ./source_lcao/module_gint:\ ./source_lcao/module_gint/temp_gint:\ ./source_relax:\ ./source_hamilt/module_vdw:\ ./source_io:\ ./source_io/json_output:\ ./src_ri:\ ./source_lcao/module_ri:\ ./source_io/module_parameter:\ ./source_lcao/module_lr:\ ./source_lcao/module_lr/ao_to_mo_transformer:\ ./source_lcao/module_lr/dm_trans:\ ./source_lcao/module_lr/operator_casida:\ ./source_lcao/module_lr/potentials:\ ./source_lcao/module_lr/utils:\ ./source_lcao/module_rdmft:\ ./\ OBJS_ABACUS_PW=${OBJS_MAIN}\ ${OBJS_BASE}\ ${OBJS_CELL}\ ${OBJS_ELECSTAT}\ ${OBJS_ESOLVER}\ ${OBJS_HAMILT}\ ${OBJS_HSOLVER}\ ${OBJS_MD}\ ${OBJS_NEIGHBOR}\ ${OBJS_PSI}\ ${OBJS_PSI_INITIALIZER}\ ${OBJS_PW}\ ${OBJS_RELAXATION}\ ${OBJS_SURCHEM}\ ${OBJS_SYMMETRY}\ ${OBJS_XC}\ ${OBJS_IO}\ ${OBJS_PARALLEL}\ ${OBJS_SRCPW}\ ${OBJS_HAMILT_OF} OBJS_ABACUS=${OBJS_ABACUS_PW}\ ${OBJS_DEEPKS}\ ${OBJS_ELECSTAT_LCAO}\ ${OBJS_ESOLVER_LCAO}\ ${OBJS_GINT}\ ${OBJS_HAMILT_LCAO}\ ${OBJS_HSOLVER_LCAO}\ ${OBJS_HCONTAINER}\ ${OBJS_ORBITAL}\ ${OBJS_IO_LCAO}\ ${OBJS_LCAO}\ ${OBJS_PARALLEL_LCAO}\ ${OBJS_VDW}\ ${OBJS_DFTU}\ ${OBJS_DELTASPIN}\ ${OBJS_TENSOR}\ ${OBJS_HSOLVER_PEXSI}\ ${OBJS_LR}\ ${OBJS_RDMFT} OBJS_MAIN=main.o\ driver.o\ driver_run.o\ parameter.o OBJS_BASE=abfs-vector3_order.o\ assoc_laguerre.o\ blas_connector_base.o\ blas_connector_vector.o\ blas_connector_matrix.o\ complexarray.o\ complexmatrix.o\ clebsch_gordan_coeff.o\ element_basis_index.o\ export.o\ inverse_matrix.o\ gather_math_lib_info.o\ global_file.o\ global_function.o\ global_function_ddotreal.o\ global_variable.o\ intarray.o\ math_integral.o\ math_lebedev_laikov.o\ math_polyint.o\ math_sphbes.o\ math_erf_complex.o\ math_ylmreal.o\ math_bspline.o\ math_chebyshev.o\ math_ylm_op.o\ math_kernel_op.o\ math_kernel_op_vec.o\ mathzone_add1.o\ matrix.o\ matrix3.o\ memory.o\ mymath.o\ para_gemm.o\ realarray.o\ sph_bessel_recursive-d1.o\ sph_bessel_recursive-d2.o\ timer.o\ tool_check.o\ tool_quit.o\ tool_title.o\ ylm.o\ opt_CG.o\ opt_DCsrch.o\ cubic_spline.o\ spherical_bessel_transformer.o\ mixing_data.o\ mixing.o\ plain_mixing.o\ pulay_mixing.o\ broyden_mixing.o\ memory_op.o\ device.o\ parallel_2d.o\ OBJS_CELL=atom_pseudo.o\ atom_spec.o\ pseudo.o\ read_pp.o\ read_pp_complete.o\ read_pp_upf100.o\ read_pp_upf201.o\ read_pp_blps.o\ read_pp_vwr.o\ unitcell.o\ read_atoms.o\ print_cell.o\ setup_nonlocal.o\ klist.o\ k_vector_utils.o\ cell_index.o\ check_atomic_stru.o\ update_cell.o\ bcast_cell.o\ read_stru.o\ read_atom_species.o\ OBJS_DEEPKS=LCAO_deepks.o\ deepks_basic.o\ deepks_check.o\ deepks_descriptor.o\ deepks_force.o\ deepks_fpre.o\ deepks_iterate.o\ deepks_spre.o\ deepks_orbital.o\ deepks_orbpre.o\ deepks_vdelta.o\ deepks_vdpre.o\ deepks_vdrpre.o\ deepks_pdm.o\ deepks_phialpha.o\ LCAO_deepks_io.o\ LCAO_deepks_interface.o\ OBJS_ELECSTAT=elecstate.o\ elecstate_energy_terms.o\ elecstate_energy.o\ elecstate_exx.o\ elecstate_print.o\ elecstate_pw.o\ elecstate_pw_sdft.o\ elecstate_pw_cal_tau.o\ elecstate_op.o\ elecstate_tools.o\ efield.o\ gatefield.o\ potential_new.o\ potential_types.o\ pot_local.o\ pot_local_paw.o\ H_Hartree_pw.o\ H_TDDFT_pw.o\ pot_xc.o\ cal_ux.o\ read_orb.o\ cal_nelec_nband.o\ read_pseudo.o\ cal_wfc.o\ OBJS_ELECSTAT_LCAO=elecstate_lcao.o\ elecstate_lcao_cal_tau.o\ density_matrix.o\ density_matrix_io.o\ cal_dm_psi.o\ cal_edm_tddft.o\ OBJS_ESOLVER=esolver.o\ esolver_ks.o\ esolver_fp.o\ esolver_ks_pw.o\ esolver_ks_lcaopw.o\ esolver_sdft_pw.o\ esolver_lj.o\ esolver_dp.o\ esolver_of.o\ esolver_of_tool.o\ esolver_of_interface.o\ pw_others.o\ pw_setup.o\ OBJS_ESOLVER_LCAO=esolver_ks_lcao.o\ esolver_ks_lcao_tddft.o\ lcao_before_scf.o\ lcao_after_scf.o\ esolver_gets.o\ lcao_others.o\ esolver_dm2rho.o\ OBJS_GINT=gint_old.o\ gint_gamma_env.o\ gint_gamma_vl.o\ gint_fvl_old.o\ gint_rho_old.o\ gint_tau_old.o\ gint_vl_old.o\ gint_k_env.o\ gint_k_sparse1.o\ gint_k_pvpr.o\ gint_k_pvdpr.o\ gint_tools.o\ grid_bigcell.o\ grid_meshball.o\ grid_meshcell.o\ grid_meshk.o\ grid_technique.o\ gint_force_cpu_interface.o\ gint_rho_cpu_interface.o\ gint_vl_cpu_interface.o\ cal_psir_ylm.o\ cal_dpsir_ylm.o\ cal_ddpsir_ylm.o\ mult_psi_dmr.o\ init_orb.o\ batch_biggrid.o\ big_grid.o\ biggrid_info.o\ divide_info.o\ gint_atom.o\ gint_common.o\ gint_dvlocal.o\ gint_env_gamma.o\ gint_env_k.o\ gint_fvl_meta.o\ gint_fvl.o\ gint_info.o\ gint_interface.o\ gint_rho.o\ gint_tau.o\ gint_vl_metagga_nspin4.o\ gint_vl_metagga.o\ gint_vl_nspin4.o\ gint_vl.o\ gint.o\ localcell_info.o\ phi_operator.o\ set_ddphi.o\ unitcell_info.o\ OBJS_HAMILT=hamilt_pw.o\ hamilt_sdft_pw.o\ operator.o\ operator_pw.o\ op_exx_pw.o\ ekinetic_pw.o\ ekinetic_op.o\ hpsi_norm_op.o\ veff_pw.o\ veff_op.o\ nonlocal_pw.o\ nonlocal_op.o\ meta_pw.o\ meta_op.o\ velocity_pw.o\ radial_proj.o\ exx_helper.o\ OBJS_HAMILT_OF=kedf_tf.o\ kedf_vw.o\ kedf_wt.o\ kedf_xwm.o\ kedf_lkt.o\ kedf_manager.o\ OBJS_HAMILT_LCAO=hamilt_lcao.o\ operator_lcao.o\ ekinetic_new.o\ nonlocal_new.o\ overlap_new.o\ td_ekinetic_lcao.o\ td_nonlocal_lcao.o\ td_pot_hybrid.o\ veff_lcao.o\ meta_lcao.o\ op_dftu_lcao.o\ deepks_lcao.o\ op_exx_lcao.o\ dspin_lcao.o\ dftu_lcao.o\ OBJS_HCONTAINER=base_matrix.o\ atom_pair.o\ hcontainer.o\ output_hcontainer.o\ func_folding.o\ func_transfer.o\ transfer.o\ OBJS_HSOLVER=diago_cg.o\ diago_david.o\ diago_dav_subspace.o\ diago_bpcg.o\ para_linear_transform.o\ hsolver.o\ hsolver_pw.o\ hsolver_lcaopw.o\ hsolver_pw_sdft.o\ diago_iter_assist.o\ dngvd_op.o\ bpcg_kernel_op.o\ diag_const_nums.o\ diag_hs_para.o\ diago_pxxxgvx.o\ OBJS_HSOLVER_LCAO=hsolver_lcao.o\ diago_scalapack.o\ diago_lapack.o\ diago_elpa.o\ diago_elpa_native.o\ elpa_new.o\ elpa_new_real.o\ elpa_new_complex.o\ utils.o\ parallel_k2d.o\ OBJS_HSOLVER_PEXSI=diago_pexsi.o\ pexsi_solver.o\ simple_pexsi.o\ dist_bcd_matrix.o\ dist_ccs_matrix.o\ dist_matrix_transformer.o\ OBJS_MD=fire.o\ langevin.o\ md_base.o\ md_func.o\ msst.o\ nhchain.o\ run_md.o\ verlet.o\ OBJS_NEIGHBOR=sltk_atom.o\ sltk_atom_arrange.o\ sltk_grid.o\ sltk_grid_driver.o\ OBJS_ORBITAL=ORB_atomic.o\ ORB_atomic_lm.o\ ORB_gaunt_table.o\ ORB_nonlocal.o\ ORB_nonlocal_lm.o\ ORB_read.o\ parallel_orbitals.o\ atomic_radials.o\ hydrogen_radials.o\ pswfc_radials.o\ beta_radials.o\ sphbes_radials.o\ numerical_radial.o\ radial_collection.o\ radial_set.o\ real_gaunt_table.o\ two_center_bundle.o\ two_center_integrator.o\ two_center_table.o\ projgen.o\ OBJS_PSI=psi.o\ OBJS_PSI_INITIALIZER=psi_initializer.o\ psi_initializer_random.o\ psi_initializer_file.o\ psi_initializer_atomic.o\ psi_initializer_atomic_random.o\ psi_initializer_nao.o\ psi_initializer_nao_random.o\ OBJS_PW=fft_bundle.o\ fft_cpu.o\ pw_basis.o\ pw_basis_k.o\ pw_basis_sup.o\ pw_distributeg.o\ pw_distributeg_method1.o\ pw_distributeg_method2.o\ pw_distributer.o\ pw_init.o\ pw_transform.o\ pw_transform_k.o\ OBJS_RELAXATION=bfgs_basic.o\ relax_driver.o\ ions_move_basic.o\ ions_move_bfgs.o\ ions_move_cg.o\ ions_move_methods.o\ ions_move_sd.o\ lattice_change_basic.o\ lattice_change_cg.o\ lattice_change_methods.o\ relax_nsync.o\ relax_sync.o\ bfgs.o\ lbfgs.o\ matrix_methods.o\ line_search.o\ OBJS_SURCHEM=surchem.o\ H_correction_pw.o\ cal_epsilon.o\ cal_pseudo.o\ cal_totn.o\ cal_vcav.o\ cal_vel.o\ minimize_cg.o\ sol_force.o\ OBJS_SYMMETRY=symm_other.o\ symmetry_basic.o\ symm_analysis.o\ symm_check.o\ symm_getgroup.o\ symm_hermite.o\ symm_lattice.o\ symm_magnetic.o\ symm_pricell.o\ symm_rho.o\ symmetry.o\ OBJS_XC=xc_functional.o\ xc_functional_op.o\ xc_functional_vxc.o\ xc_functional_gradcorr.o\ xc_functional_wrapper_xc.o\ xc_functional_wrapper_gcxc.o\ xc_functional_libxc.o\ xc_functional_libxc_tools.o\ xc_functional_libxc_vxc.o\ xc_functional_libxc_wrapper_xc.o\ xc_functional_libxc_wrapper_gcxc.o\ xc_functional_libxc_wrapper_tauxc.o\ xc_funct_exch_lda.o\ xc_funct_corr_lda.o\ xc_funct_exch_gga.o\ xc_funct_corr_gga.o\ xc_funct_hcth.o\ OBJS_IO=input_conv.o\ berryphase.o\ bessel_basis.o\ cal_test.o\ write_dos_pw.o\ nscf_fermi_surf.o\ nscf_band.o\ cal_dos.o\ cal_pdos_gamma.o\ cal_pdos_multik.o\ cal_ldos.o\ cif_io.o\ numerical_descriptor.o\ numerical_basis.o\ numerical_basis_jyjy.o\ output.o\ print_info.o\ read_cube.o\ rhog_io.o\ read_exit_file.o\ read_wfc_pw.o\ read_wf2rho_pw.o\ restart.o\ binstream.o\ to_wannier90.o\ to_qo_kernel.o\ to_qo_mpi.o\ to_qo_structures.o\ to_wannier90_pw.o\ to_wannier90_lcao_in_pw.o\ to_wannier90_lcao.o\ fR_overlap.o\ unk_overlap_pw.o\ write_pao.o\ write_wfc_pw.o\ winput.o\ write_cube.o\ write_elecstat_pot.o\ write_elf.o\ write_dipole.o\ td_current_io.o\ write_libxc_r.o\ output_log.o\ output_mat_sparse.o\ ctrl_output_lcao.o\ para_json.o\ abacusjson.o\ general_info.o\ init_info.o\ readin_info.o\ output_info.o\ parse_args.o\ read_input.o\ read_input_item_system.o\ read_input_item_elec_stru.o\ read_input_item_relax.o\ read_input_item_md.o\ read_input_item_ofdft.o\ read_input_item_sdft.o\ read_input_item_tddft.o\ read_input_item_deepks.o\ read_input_item_model.o\ read_input_item_postprocess.o\ read_input_item_exx_dftu.o\ read_input_item_other.o\ read_input_item_output.o\ read_set_globalv.o\ orb_io.o\ cal_pLpR.o\ filename.o\ OBJS_IO_LCAO=cal_r_overlap_R.o\ write_orb_info.o\ write_dos_lcao.o\ write_proj_band_lcao.o\ write_eig_occ.o\ get_pchg_lcao.o\ get_wf_lcao.o\ io_dmk.o\ unk_overlap_lcao.o\ read_wfc_nao.o\ read_wfc_lcao.o\ write_wfc_nao.o\ write_HS_sparse.o\ single_R_io.o\ write_HS_R.o\ write_dmr.o\ sparse_matrix.o\ output_mulliken.o\ output_sk.o\ output_dmk.o\ io_npz.o\ OBJS_LCAO=evolve_elec.o\ evolve_psi.o\ band_energy.o\ middle_hamilt.o\ norm_psi.o\ propagator.o\ propagator_cn2.o\ propagator_taylor.o\ propagator_etrs.o\ td_folding.o\ td_info.o\ velocity_op.o\ snap_psibeta_half_tddft.o\ solve_propagation.o\ upsi.o\ FORCE_STRESS.o\ FORCE_gamma.o\ FORCE_k.o\ stress_tools.o\ edm.o\ pulay_force_stress_center2.o\ grid_init.o\ spar_dh.o\ spar_exx.o\ spar_hsr.o\ spar_st.o\ spar_u.o\ LCAO_set_fs.o\ LCAO_set_st.o\ LCAO_nl_mu.o\ LCAO_set_zero.o\ LCAO_allocate.o\ LCAO_set_mat2d.o\ LCAO_init_basis.o\ center2_orb.o\ center2_orb-orb11.o\ center2_orb-orb21.o\ center2_orb-orb22.o\ record_adj.o\ wavefunc_in_pw.o\ OBJS_MODULE_RI=conv_coulomb_pot_k.o\ exx_abfs-abfs_index.o \ exx_abfs-jle.o \ exx_abfs-io.o \ exx_abfs-construct_orbs.o \ ABFs_Construct-PCA.o \ exx_opt_orb.o \ exx_opt_orb-print.o \ Matrix_Orbs11.o\ Matrix_Orbs21.o\ Matrix_Orbs22.o\ RI_2D_Comm.o\ Mix_DMk_2D.o\ Mix_Matrix.o\ symmetry_rotation.o\ symmetry_irreducible_sector.o\ OBJS_PARALLEL=parallel_common.o\ parallel_global.o\ parallel_comm.o\ parallel_grid.o\ parallel_kpoints.o\ parallel_reduce.o\ parallel_device.o OBJS_SRCPW=H_Ewald_pw.o\ dnrm2.o\ VL_in_pw.o\ VNL_in_pw.o\ VNL_grad_pw.o\ charge.o\ charge_init.o\ charge_mpi.o\ charge_extra.o\ charge_mixing.o\ charge_mixing_dmr.o\ charge_mixing_residual.o\ charge_mixing_preconditioner.o\ charge_mixing_rho.o\ charge_mixing_uspp.o\ fp_energy.o\ forces.o\ forces_us.o\ forces_nl.o\ forces_cc.o\ forces_scc.o\ forces_onsite.o\ onsite_proj_pw.o\ fs_nonlocal_tools.o\ fs_kin_tools.o\ force_op.o\ stress_op.o\ onsite_op.o\ wf_op.o\ vnl_op.o\ global.o\ magnetism.o\ occupy.o\ structure_factor.o\ structure_factor_k.o\ soc.o\ sto_iter.o\ sto_che.o\ sto_wf.o\ sto_func.o\ sto_forces.o\ sto_stress_pw.o\ stress_func_cc.o\ stress_func_ewa.o\ stress_func_exx.o\ stress_func_gga.o\ stress_func_mgga.o\ stress_func_har.o\ stress_func_kin.o\ stress_func_loc.o\ stress_func_nl.o\ stress_func_us.o\ stress_func_onsite.o\ stress_pw.o\ of_stress_pw.o\ symmetry_rho.o\ symmetry_rhog.o\ psi_init.o\ elecond.o\ sto_tool.o\ sto_elecond.o\ sto_dos.o\ onsite_projector.o\ onsite_proj_tools.o OBJS_VDW=vdw.o\ vdwd2_parameters.o\ vdwd3_parameters.o\ vdwd2.o\ vdwd3.o\ vdwd3_parameters_tab.o\ vdwd3_autoset_xcname.o\ vdwd3_autoset_xcparam.o OBJS_DFTU=dftu.o\ dftu_force.o\ dftu_yukawa.o\ dftu_folding.o\ dftu_io.o\ dftu_tools.o\ dftu_occup.o\ dftu_hamilt.o\ dftu_pw.o OBJS_DELTASPIN=basic_funcs.o\ cal_mw_from_lambda.o\ cal_mw.o\ init_sc.o\ lambda_loop_helper.o\ lambda_loop.o\ spin_constrain.o\ template_helpers.o\ OBJS_TENSOR=tensor.o\ tensor_buffer.o\ tensor_map.o\ tensor_shape.o\ tensor_types.o\ blas.o\ lapack.o\ linalg.o\ memory_impl.o\ einsum_op.o\ linalg_op.o\ cpu_allocator.o\ refcount.o OBJS_LR=lr_util.o\ lr_util_hcontainer.o\ ao_to_mo_parallel.o\ ao_to_mo_serial.o\ dm_trans_parallel.o\ dm_trans_serial.o\ dmr_complex.o\ operator_lr_hxc.o\ operator_lr_exx.o\ xc_kernel.o\ pot_hxc_lrtd.o\ lr_spectrum.o\ lr_spectrum_velocity.o\ hamilt_casida.o\ esolver_lrtd_lcao.o\ OBJS_RDMFT=rdmft.o\ rdmft_tools.o\ rdmft_pot.o\ update_state_rdmft.o\