SIRIUS 7.5.0
Electronic structure library and applications
|
Autogenerated Fortran module for the SIRIUS API. More...
Go to the source code of this file.
Data Types | |
type | sirius::sirius_context_handler |
Opaque wrapper for simulation context handler. More... | |
type | sirius::sirius_ground_state_handler |
Opaque wrapper for DFT ground statee handler. More... | |
type | sirius::sirius_kpoint_set_handler |
Opaque wrapper for K-point set handler. More... | |
interface | sirius::sirius_free_handler |
Free any of the SIRIUS handlers (context, ground state or k-points). More... | |
Modules | |
module | sirius |
Namespace of the SIRIUS library. | |
Functions/Subroutines | |
character(kind=c_char, len=1) function, dimension(len_trim(f_string)+1) | sirius::string_f2c (f_string) |
Internal function that adds trailing null character to the string to make it C-style. More... | |
character(kind=c_char, len=size(c_string) - 1) function | sirius::string_c2f (c_string) |
Internal function that converts C-string (with trailing null character) to the Fortran string. More... | |
subroutine | sirius::sirius_initialize (call_mpi_init, error_code) |
Initialize the SIRIUS library. More... | |
subroutine | sirius::sirius_finalize (call_mpi_fin, call_device_reset, call_fftw_fin, error_code) |
Shut down the SIRIUS library. More... | |
subroutine | sirius::sirius_start_timer (name, error_code) |
Start the timer. More... | |
subroutine | sirius::sirius_stop_timer (name, error_code) |
Stop the running timer. More... | |
subroutine | sirius::sirius_print_timers (flatten, error_code) |
Print all timers. More... | |
subroutine | sirius::sirius_serialize_timers (fname, error_code) |
Save all timers to JSON file. More... | |
subroutine | sirius::sirius_context_initialized (handler, status, error_code) |
Check if the simulation context is initialized. More... | |
subroutine | sirius::sirius_create_context (fcomm, handler, fcomm_k, fcomm_band, error_code) |
Create context of the simulation. More... | |
subroutine | sirius::sirius_import_parameters (handler, str, error_code) |
Import parameters of simulation from a JSON string. More... | |
subroutine | sirius::sirius_set_parameters (handler, lmax_apw, lmax_rho, lmax_pot, num_fv_states, num_bands, num_mag_dims, pw_cutoff, gk_cutoff, fft_grid_size, auto_rmt, gamma_point, use_symmetry, so_correction, valence_rel, core_rel, iter_solver_tol_empty, iter_solver_type, verbosity, hubbard_correction, hubbard_correction_kind, hubbard_full_orthogonalization, hubbard_orbitals, sht_coverage, min_occupancy, smearing, smearing_width, spglib_tol, electronic_structure_method, error_code) |
Set parameters of the simulation. More... | |
subroutine | sirius::sirius_get_parameters (handler, lmax_apw, lmax_rho, lmax_pot, num_fv_states, num_bands, num_spins, num_mag_dims, pw_cutoff, gk_cutoff, fft_grid_size, auto_rmt, gamma_point, use_symmetry, so_correction, iter_solver_tol, iter_solver_tol_empty, verbosity, hubbard_correction, evp_work_count, num_loc_op_applied, num_sym_op, electronic_structure_method, error_code) |
Get parameters of the simulation. More... | |
subroutine | sirius::sirius_add_xc_functional (handler, name, error_code) |
Add one of the XC functionals. More... | |
subroutine | sirius::sirius_set_mpi_grid_dims (handler, ndims, dims, error_code) |
Set dimensions of the MPI grid. More... | |
subroutine | sirius::sirius_set_lattice_vectors (handler, a1, a2, a3, error_code) |
Set vectors of the unit cell. More... | |
subroutine | sirius::sirius_initialize_context (handler, error_code) |
Initialize simulation context. More... | |
subroutine | sirius::sirius_update_context (handler, error_code) |
Update simulation context after changing lattice or atomic positions. More... | |
subroutine | sirius::sirius_print_info (handler, error_code) |
Print basic info. More... | |
subroutine | sirius::sirius_free_object_handler (handler, error_code) |
Free any object handler created by SIRIUS. More... | |
subroutine | sirius::sirius_set_periodic_function_ptr (handler, label, f_mt, lmmax, nrmtmax, num_atoms, f_rg, size_x, size_y, size_z, offset_z, error_code) |
Set pointer to density or magnetization. More... | |
subroutine | sirius::sirius_set_periodic_function (handler, label, f_mt, lmmax, nrmtmax, num_atoms, f_rg, size_x, size_y, size_z, offset_z, error_code) |
Set values of the periodic function. More... | |
subroutine | sirius::sirius_get_periodic_function (handler, label, f_mt, lmmax, nrmtmax, num_atoms, f_rg, size_x, size_y, size_z, offset_z, error_code) |
Get values of the periodic function. More... | |
subroutine | sirius::sirius_create_kset (handler, num_kpoints, kpoints, kpoint_weights, init_kset, kset_handler, error_code) |
Create k-point set from the list of k-points. More... | |
subroutine | sirius::sirius_create_kset_from_grid (handler, k_grid, k_shift, use_symmetry, kset_handler, error_code) |
Create k-point set from a grid. More... | |
subroutine | sirius::sirius_create_ground_state (ks_handler, gs_handler, error_code) |
Create a ground state object. More... | |
subroutine | sirius::sirius_initialize_kset (ks_handler, count, error_code) |
Initialize k-point set. More... | |
subroutine | sirius::sirius_find_ground_state (gs_handler, density_tol, energy_tol, iter_solver_tol, initial_guess, max_niter, save_state, converged, niter, rho_min, error_code) |
Find the ground state. More... | |
subroutine | sirius::sirius_check_scf_density (gs_handler, error_code) |
Check the self-consistent density. More... | |
subroutine | sirius::sirius_update_ground_state (gs_handler, error_code) |
Update a ground state object after change of atomic coordinates or lattice vectors. More... | |
subroutine | sirius::sirius_add_atom_type (handler, label, fname, zn, symbol, mass, spin_orbit, error_code) |
Add new atom type to the unit cell. More... | |
subroutine | sirius::sirius_set_atom_type_radial_grid (handler, label, num_radial_points, radial_points, error_code) |
Set radial grid of the atom type. More... | |
subroutine | sirius::sirius_set_atom_type_radial_grid_inf (handler, label, num_radial_points, radial_points, error_code) |
Set radial grid of the free atom (up to effectice infinity). More... | |
subroutine | sirius::sirius_add_atom_type_radial_function (handler, atom_type, label, rf, num_points, n, l, idxrf1, idxrf2, occ, error_code) |
Add one of the radial functions. More... | |
subroutine | sirius::sirius_set_atom_type_hubbard (handler, label, l, n, occ, U, J, alpha, beta, J0, error_code) |
Set the hubbard correction for the atomic type. More... | |
subroutine | sirius::sirius_set_atom_type_dion (handler, label, num_beta, dion, error_code) |
Set ionic part of D-operator matrix. More... | |
subroutine | sirius::sirius_set_atom_type_paw (handler, label, core_energy, occupations, num_occ, error_code) |
Set PAW related data. More... | |
subroutine | sirius::sirius_add_atom (handler, label, position, vector_field, error_code) |
Add atom to the unit cell. More... | |
subroutine | sirius::sirius_set_atom_position (handler, ia, position, error_code) |
Set new atomic position. More... | |
subroutine | sirius::sirius_set_pw_coeffs (handler, label, pw_coeffs, transform_to_rg, ngv, gvl, comm, error_code) |
Set plane-wave coefficients of a periodic function. More... | |
subroutine | sirius::sirius_get_pw_coeffs (handler, label, pw_coeffs, ngv, gvl, comm, error_code) |
Get plane-wave coefficients of a periodic function. More... | |
subroutine | sirius::sirius_initialize_subspace (gs_handler, ks_handler, error_code) |
Initialize the subspace of wave-functions. More... | |
subroutine | sirius::sirius_find_eigen_states (gs_handler, ks_handler, precompute_pw, precompute_rf, precompute_ri, iter_solver_tol, error_code) |
Find eigen-states of the Hamiltonian. More... | |
subroutine | sirius::sirius_generate_initial_density (handler, error_code) |
Generate initial density. More... | |
subroutine | sirius::sirius_generate_effective_potential (handler, error_code) |
Generate effective potential and magnetic field. More... | |
subroutine | sirius::sirius_generate_density (gs_handler, add_core, transform_to_rg, paw_only, error_code) |
Generate charge density and magnetization. More... | |
subroutine | sirius::sirius_set_band_occupancies (ks_handler, ik, ispn, band_occupancies, error_code) |
Set band occupancies. More... | |
subroutine | sirius::sirius_get_band_occupancies (ks_handler, ik, ispn, band_occupancies, error_code) |
Set band occupancies. More... | |
subroutine | sirius::sirius_get_band_energies (ks_handler, ik, ispn, band_energies, error_code) |
Get band energies. More... | |
subroutine | sirius::sirius_get_energy (handler, label, energy, error_code) |
Get one of the total energy components. More... | |
subroutine | sirius::sirius_get_forces (handler, label, forces, error_code) |
Get one of the total force components. More... | |
subroutine | sirius::sirius_get_stress_tensor (handler, label, stress_tensor, error_code) |
Get one of the stress tensor components. More... | |
subroutine | sirius::sirius_get_num_beta_projectors (handler, label, num_bp, error_code) |
Get the number of beta-projectors for an atom type. More... | |
subroutine | sirius::sirius_get_wave_functions (ks_handler, vkl, spin, num_gvec_loc, gvec_loc, evec, ld, num_spin_comp, error_code) |
Get wave-functions. More... | |
subroutine | sirius::sirius_add_atom_type_aw_descriptor (handler, label, n, l, enu, dme, auto_enu, error_code) |
Add descriptor of the augmented wave radial function. More... | |
subroutine | sirius::sirius_add_atom_type_lo_descriptor (handler, label, ilo, n, l, enu, dme, auto_enu, error_code) |
Add descriptor of the local orbital radial function. More... | |
subroutine | sirius::sirius_set_atom_type_configuration (handler, label, n, l, k, occupancy, core, error_code) |
Set configuration of atomic levels. More... | |
subroutine | sirius::sirius_generate_coulomb_potential (handler, vh_el, error_code) |
Generate Coulomb potential by solving Poisson equation. More... | |
subroutine | sirius::sirius_generate_xc_potential (handler, error_code) |
Generate XC potential using LibXC. More... | |
subroutine | sirius::sirius_get_kpoint_inter_comm (handler, fcomm, error_code) |
Get communicator which is used to split k-points. More... | |
subroutine | sirius::sirius_get_kpoint_inner_comm (handler, fcomm, error_code) |
Get communicator which is used to parallise band problem. More... | |
subroutine | sirius::sirius_get_fft_comm (handler, fcomm, error_code) |
Get communicator which is used to parallise FFT. More... | |
subroutine | sirius::sirius_get_num_gvec (handler, num_gvec, error_code) |
Get total number of G-vectors on the fine grid. More... | |
subroutine | sirius::sirius_get_gvec_arrays (handler, gvec, gvec_cart, gvec_len, index_by_gvec, error_code) |
Get G-vector arrays. More... | |
subroutine | sirius::sirius_get_num_fft_grid_points (handler, num_fft_grid_points, error_code) |
Get local number of FFT grid points. More... | |
subroutine | sirius::sirius_get_fft_index (handler, fft_index, error_code) |
Get mapping between G-vector index and FFT index. More... | |
subroutine | sirius::sirius_get_max_num_gkvec (ks_handler, max_num_gkvec, error_code) |
Get maximum number of G+k vectors across all k-points in the set. More... | |
subroutine | sirius::sirius_get_gkvec_arrays (ks_handler, ik, num_gkvec, gvec_index, gkvec, gkvec_cart, gkvec_len, gkvec_tp, error_code) |
Get all G+k vector related arrays. More... | |
subroutine | sirius::sirius_get_step_function (handler, cfunig, cfunrg, num_rg_points, error_code) |
Get the unit-step function. More... | |
subroutine | sirius::sirius_set_h_radial_integrals (handler, ia, lmmax, val, l1, o1, ilo1, l2, o2, ilo2, error_code) |
Set LAPW Hamiltonian radial integrals. More... | |
subroutine | sirius::sirius_set_o_radial_integral (handler, ia, val, l, o1, ilo1, o2, ilo2, error_code) |
Set LAPW overlap radial integral. More... | |
subroutine | sirius::sirius_set_o1_radial_integral (handler, ia, val, l1, o1, ilo1, l2, o2, ilo2, error_code) |
Set a correction to LAPW overlap radial integral. More... | |
subroutine | sirius::sirius_set_radial_function (handler, ia, deriv_order, f, l, o, ilo, error_code) |
Set LAPW radial functions. More... | |
subroutine | sirius::sirius_set_equivalent_atoms (handler, equivalent_atoms, error_code) |
Set equivalent atoms. More... | |
subroutine | sirius::sirius_update_atomic_potential (handler, error_code) |
Set the new spherical potential. More... | |
subroutine | sirius::sirius_option_get_number_of_sections (length, error_code) |
Return the total number of sections defined in the input JSON schema. More... | |
subroutine | sirius::sirius_option_get_section_name (elem, section_name, section_name_length, error_code) |
Return the name of a given section. More... | |
subroutine | sirius::sirius_option_get_section_length (section, length, error_code) |
Return the number of options in a given section. More... | |
subroutine | sirius::sirius_option_get_info (section, elem, key_name, key_name_len, type, length, enum_size, title, title_len, description, description_len, error_code) |
Return information about the option. More... | |
subroutine | sirius::sirius_option_get (section, name, type, data_ptr, max_length, enum_idx, error_code) |
Return the default value of the option as defined in the JSON schema. More... | |
subroutine | sirius::sirius_option_set (handler, section, name, type, data_ptr, max_length, append, error_code) |
Set the value of the option name in a (internal) json dictionary. More... | |
subroutine | sirius::sirius_dump_runtime_setup (handler, filename, error_code) |
Dump the runtime setup in a file. More... | |
subroutine | sirius::sirius_get_fv_eigen_vectors (handler, ik, fv_evec, ld, num_fv_states, error_code) |
Get the first-variational eigen vectors. More... | |
subroutine | sirius::sirius_get_fv_eigen_values (handler, ik, fv_eval, num_fv_states, error_code) |
Get the first-variational eigen values. More... | |
subroutine | sirius::sirius_get_sv_eigen_vectors (handler, ik, sv_evec, num_bands, error_code) |
Get the second-variational eigen vectors. More... | |
subroutine | sirius::sirius_set_rg_values (handler, label, grid_dims, local_box_origin, local_box_size, fcomm, values, transform_to_pw, error_code) |
Set the values of the function on the regular grid. More... | |
subroutine | sirius::sirius_get_rg_values (handler, label, grid_dims, local_box_origin, local_box_size, fcomm, values, transform_to_rg, error_code) |
Get the values of the function on the regular grid. More... | |
subroutine | sirius::sirius_get_total_magnetization (handler, mag, error_code) |
Get the total magnetization of the system. More... | |
subroutine | sirius::sirius_get_num_kpoints (handler, num_kpoints, error_code) |
Get the total number of kpoints. More... | |
subroutine | sirius::sirius_get_kpoint_properties (handler, ik, weight, coordinates, error_code) |
Get the kpoint properties. More... | |
subroutine | sirius::sirius_set_callback_function (handler, label, fptr, error_code) |
Set callback function to compute various radial integrals. More... | |
subroutine | sirius::sirius_nlcg (handler, ks_handler, error_code) |
Robust wave function optimizer. More... | |
subroutine | sirius::sirius_nlcg_params (handler, ks_handler, temp, smearing, kappa, tau, tol, maxiter, restart, processing_unit, converged, error_code) |
Robust wave function optimizer. More... | |
subroutine | sirius::sirius_add_hubbard_atom_pair (handler, atom_pair, translation, n, l, coupling, error_code) |
Add a non-local Hubbard interaction V for a pair of atoms. More... | |
subroutine | sirius::sirius_create_h0 (handler, error_code) |
Generate H0. More... | |
subroutine | sirius::sirius_linear_solver (handler, vkq, num_gvec_kq_loc, gvec_kq_loc, dpsi, psi, eigvals, dvpsi, ld, num_spin_comp, alpha_pv, spin, nbnd_occ, tol, niter, error_code) |
Interface to linear solver. More... | |
subroutine | sirius::sirius_generate_d_operator_matrix (handler, error_code) |
Generate D-operator matrix. More... | |
subroutine | sirius::sirius_save_state (gs_handler, file_name, error_code) |
Save DFT ground state (density and potential) More... | |
subroutine | sirius::sirius_load_state (handler, file_name, error_code) |
Save DFT ground state (density and potential) More... | |
subroutine | sirius::sirius_set_density_matrix (handler, ia, dm, ld, error_code) |
Set density matrix. More... | |
subroutine | sirius::sirius_free_handler_ctx (handler, error_code) |
subroutine | sirius::sirius_free_handler_ks (handler, error_code) |
subroutine | sirius::sirius_free_handler_dft (handler, error_code) |
Variables | |
integer, parameter, public | sirius::sirius_integer_type = 1 |
integer, parameter, public | sirius::sirius_logical_type = 2 |
integer, parameter, public | sirius::sirius_string_type = 3 |
integer, parameter, public | sirius::sirius_number_type = 4 |
integer, parameter, public | sirius::sirius_object_type = 5 |
integer, parameter, public | sirius::sirius_array_type = 6 |
integer, parameter, public | sirius::sirius_integer_array_type = 7 |
integer, parameter, public | sirius::sirius_logical_array_type = 8 |
integer, parameter, public | sirius::sirius_number_array_type = 9 |
integer, parameter, public | sirius::sirius_string_array_type = 10 |
integer, parameter, public | sirius::sirius_object_array_type = 11 |
integer, parameter, public | sirius::sirius_array_array_type = 12 |
Autogenerated Fortran module for the SIRIUS API.
Definition in file sirius.f90.