element_mass Function

public pure function element_mass(atomic_number) result(mass)

Return atomic mass in atomic mass units (amu) for a given atomic number Uses standard atomic weights from IUPAC

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: atomic_number

Return Value real(kind=dp)


Called by

proc~~element_mass~~CalledByGraph proc~element_mass element_mass proc~compute_cartesian_displacements compute_cartesian_displacements proc~compute_cartesian_displacements->proc~element_mass proc~compute_ir_intensities compute_ir_intensities proc~compute_ir_intensities->proc~element_mass proc~compute_moments_of_inertia compute_moments_of_inertia proc~compute_moments_of_inertia->proc~element_mass proc~compute_reduced_masses compute_reduced_masses proc~compute_reduced_masses->proc~element_mass proc~mass_weight_hessian mass_weight_hessian proc~mass_weight_hessian->proc~element_mass proc~project_translation_rotation project_translation_rotation proc~project_translation_rotation->proc~element_mass proc~compute_thermochemistry compute_thermochemistry proc~compute_thermochemistry->proc~compute_moments_of_inertia proc~compute_vibrational_analysis compute_vibrational_analysis proc~compute_vibrational_analysis->proc~compute_cartesian_displacements proc~compute_vibrational_analysis->proc~compute_ir_intensities proc~compute_vibrational_analysis->proc~compute_reduced_masses proc~compute_vibrational_frequencies compute_vibrational_frequencies proc~compute_vibrational_analysis->proc~compute_vibrational_frequencies proc~compute_vibrational_frequencies->proc~mass_weight_hessian proc~compute_vibrational_frequencies->proc~project_translation_rotation proc~compute_gmbe compute_gmbe proc~compute_gmbe->proc~compute_vibrational_analysis proc~print_vibrational_analysis print_vibrational_analysis proc~compute_gmbe->proc~print_vibrational_analysis proc~compute_mbe compute_mbe proc~compute_mbe->proc~compute_thermochemistry proc~compute_mbe->proc~compute_vibrational_analysis proc~compute_mbe->proc~print_vibrational_analysis proc~gmbe_pie_coordinator gmbe_pie_coordinator proc~gmbe_pie_coordinator->proc~compute_thermochemistry proc~gmbe_pie_coordinator->proc~compute_vibrational_analysis proc~gmbe_pie_coordinator->proc~print_vibrational_analysis proc~hessian_coordinator hessian_coordinator proc~hessian_coordinator->proc~compute_thermochemistry proc~hessian_coordinator->proc~compute_vibrational_analysis proc~hessian_coordinator->proc~compute_vibrational_frequencies proc~hessian_coordinator->proc~print_vibrational_analysis proc~print_vibrational_analysis->proc~compute_thermochemistry proc~serial_gmbe_pie_processor serial_gmbe_pie_processor proc~serial_gmbe_pie_processor->proc~compute_thermochemistry proc~serial_gmbe_pie_processor->proc~compute_vibrational_analysis proc~serial_gmbe_pie_processor->proc~print_vibrational_analysis proc~unfragmented_calculation unfragmented_calculation proc~unfragmented_calculation->proc~compute_thermochemistry proc~unfragmented_calculation->proc~compute_vibrational_analysis proc~unfragmented_calculation->proc~compute_vibrational_frequencies proc~unfragmented_calculation->proc~print_vibrational_analysis interface~hessian_coordinator hessian_coordinator interface~hessian_coordinator->proc~hessian_coordinator interface~unfragmented_calculation unfragmented_calculation interface~unfragmented_calculation->proc~unfragmented_calculation proc~global_coordinator global_coordinator proc~global_coordinator->proc~compute_mbe proc~gmbe_run_distributed gmbe_context_t%gmbe_run_distributed proc~gmbe_run_distributed->proc~gmbe_pie_coordinator proc~gmbe_run_serial gmbe_context_t%gmbe_run_serial proc~gmbe_run_serial->proc~serial_gmbe_pie_processor proc~serial_fragment_processor serial_fragment_processor proc~serial_fragment_processor->proc~compute_mbe interface~global_coordinator global_coordinator interface~global_coordinator->proc~global_coordinator interface~serial_fragment_processor serial_fragment_processor interface~serial_fragment_processor->proc~serial_fragment_processor proc~distributed_unfragmented_hessian distributed_unfragmented_hessian proc~distributed_unfragmented_hessian->interface~hessian_coordinator proc~run_unfragmented_calculation run_unfragmented_calculation proc~run_unfragmented_calculation->interface~unfragmented_calculation

Source Code

   pure function element_mass(atomic_number) result(mass)
      !! Return atomic mass in atomic mass units (amu) for a given atomic number
      !! Uses standard atomic weights from IUPAC
      integer, intent(in) :: atomic_number
      real(dp) :: mass

      select case (atomic_number)
      case (1:118)
         mass = element_masses(atomic_number)
      case default
         mass = 0.0_dp  ! Unknown element
      end select

   end function element_mass