Skip to content

Namespace utilities_mod

Namespace List > utilities_mod

Public Functions

Type Name
real(fp) function, public calculate_air_density (real(fp), intent(in) pressure, real(fp), intent(in) temperature, integer, intent(out) rc)
Calculate air density using ideal gas law.
real(fp) function, public calculate_geopotential_height (real(fp), intent(in) p1, real(fp), intent(in) p2, real(fp), intent(in) tv_mean, integer, intent(out) rc)
Calculate geopotential height difference between two pressure levels.
real(fp) function, public calculate_scale_height (real(fp), intent(in) temperature, integer, intent(out) rc, real(fp), intent(in), optional z)
Calculate atmospheric scale height using geopotential height.
subroutine, public check_array_bounds (integer, intent(in) index, integer, intent(in) array_size, character(len=*), intent(in) array_name, integer, intent(out) rc)
Check array bounds safely.
real(fp) function, public convert_pressure_units (real(fp), intent(in) pressure_in, character(len=*), intent(in) unit_in, character(len=*), intent(in) unit_out, integer, intent(out) rc)
Convert pressure between different units.
real(fp) function, public convert_temperature_units (real(fp), intent(in) temp_in, character(len=*), intent(in) unit_in, character(len=*), intent(in) unit_out, integer, intent(out) rc)
Convert temperature between different units.
logical function, public is_valid_pressure (real(fp), intent(in) pressure)
Check if pressure is in valid range.
logical function, public is_valid_temperature (real(fp), intent(in) temperature)
Check if temperature is in valid range.
real(fp) function, public safe_divide (real(fp), intent(in) numerator, real(fp), intent(in) denominator, integer, intent(out) rc)
Safe division with zero check.
subroutine, public validate_atmospheric_constants (integer, intent(out) rc, type(errormanagertype), intent(inout), optional error_mgr)
Validate atmospheric constants for physical consistency.

Public Functions Documentation

function calculate_air_density

Calculate air density using ideal gas law.

real( fp ) function, public utilities_mod::calculate_air_density (
    real( fp ), intent(in) pressure,
    real( fp ), intent(in) temperature,
    integer, intent(out) rc
) 

Parameters:

  • pressure Pressure [Pa]
  • temperature Temperature [K]
  • rc Return code

function calculate_geopotential_height

Calculate geopotential height difference between two pressure levels.

real( fp ) function, public utilities_mod::calculate_geopotential_height (
    real( fp ), intent(in) p1,
    real( fp ), intent(in) p2,
    real( fp ), intent(in) tv_mean,
    integer, intent(out) rc
) 

Parameters:

  • p1 Pressure at lower level [Pa]
  • p2 Pressure at upper level [Pa]
  • Tv_mean Mean virtual temperature between levels [K]
  • rc Return code

function calculate_scale_height

Calculate atmospheric scale height using geopotential height.

real( fp ) function, public utilities_mod::calculate_scale_height (
    real( fp ), intent(in) temperature,
    integer, intent(out) rc,
    real( fp ), intent(in), optional z
) 

Parameters:

  • temperature Temperature [K]
  • rc Return code
  • z (optional) Geometric height above surface [m]

function check_array_bounds

Check array bounds safely.

subroutine, public utilities_mod::check_array_bounds (
    integer, intent(in) index,
    integer, intent(in) array_size,
    character(len=*), intent(in) array_name,
    integer, intent(out) rc
) 

Parameters:

  • index Index to check
  • array_size Size of array
  • array_name Name of array for error reporting
  • rc Return code

function convert_pressure_units

Convert pressure between different units.

real( fp ) function, public utilities_mod::convert_pressure_units (
    real( fp ), intent(in) pressure_in,
    character(len=*), intent(in) unit_in,
    character(len=*), intent(in) unit_out,
    integer, intent(out) rc
) 

This function converts pressure values between common atmospheric units.

Parameters:

  • pressure_in Input pressure value
  • unit_in Input unit ('Pa', 'hPa', 'mbar', 'atm', 'mmHg', 'torr')
  • unit_out Output unit
  • rc Return code

function convert_temperature_units

Convert temperature between different units.

real( fp ) function, public utilities_mod::convert_temperature_units (
    real( fp ), intent(in) temp_in,
    character(len=*), intent(in) unit_in,
    character(len=*), intent(in) unit_out,
    integer, intent(out) rc
) 

This function converts temperature values between Kelvin, Celsius, and Fahrenheit.

Parameters:

  • temp_in Input temperature value
  • unit_in Input unit ('K', 'C', 'F')
  • unit_out Output unit
  • rc Return code

function is_valid_pressure

Check if pressure is in valid range.

logical function, public utilities_mod::is_valid_pressure (
    real( fp ), intent(in) pressure
) 

Parameters:

  • pressure Pressure [Pa]

function is_valid_temperature

Check if temperature is in valid range.

logical function, public utilities_mod::is_valid_temperature (
    real( fp ), intent(in) temperature
) 

Parameters:

  • temperature Temperature [K]

function safe_divide

Safe division with zero check.

real( fp ) function, public utilities_mod::safe_divide (
    real( fp ), intent(in) numerator,
    real( fp ), intent(in) denominator,
    integer, intent(out) rc
) 

Parameters:

  • numerator Numerator
  • denominator Denominator
  • rc Return code

function validate_atmospheric_constants

Validate atmospheric constants for physical consistency.

subroutine, public utilities_mod::validate_atmospheric_constants (
    integer, intent(out) rc,
    type( errormanagertype ), intent(inout), optional error_mgr
) 

This subroutine performs runtime validation of atmospheric constants to ensure physical consistency and catch any compilation issues.

Parameters:

  • rc Return code (CC_SUCCESS if all constants are valid)
  • error_mgr Optional error manager for enhanced reporting


The documentation for this class was generated from the following file src/core/utilities_mod.F90