units

Module

Description

This module contains information about physical units

(irrelevant if simulations are scale free except that the units are printed in the dump file header and log output is scaled in these units)

References:

Price & Monaghan (2004) MNRAS 348, 123 (section 7.1.1 on MHD units)

Owner:

Daniel Price

Runtime parameters:

None

Dependencies:

physcon

Quick access

Variables:

udist, umass, unit_angmom, unit_bfield, unit_charge, unit_density, unit_energ, unit_ergg, unit_luminosity, unit_opacity, unit_pressure, unit_velocity, utime

Routines:

c_is_unity(), g_is_unity(), get_c_code(), get_g_code(), get_kbmh_code(), get_radconst_code(), get_unit_multiplier(), in_code_units(), in_geometric_units(), in_solarl(), in_solarm(), in_solarr(), is_length_unit(), is_time_unit(), print_units(), select_unit(), set_units(), set_units_extra()

Variables

  • units/udist [real,public/optional/default=1.d0]
  • units/umass [real,public/optional/default=1.d0]
  • units/unit_angmom [real,public]
  • units/unit_bfield [real,public]
  • units/unit_charge [real,public]
  • units/unit_density [real,public]
  • units/unit_energ [real,public]
  • units/unit_ergg [real,public]
  • units/unit_luminosity [real,public]
  • units/unit_opacity [real,public]
  • units/unit_pressure [real,public]
  • units/unit_velocity [real,public]
  • units/utime [real,public/optional/default=1.d0]

Subroutines and functions

subroutine  units/set_units([dist[, mass[, time[, g[, c]]]]])
Parameters:
  • dist [real,in,]

  • mass [real,in,]

  • time [real,in,]

  • g [real,in,]

  • c [real,in,]

Use :

physcon (gg(), clight() => clight())

Called from:

set_default_options(), test_cooling(), test_dust(), test_eos(), test_externf(), test_gnewton(), test_gr(), test_growth(), test_radiation(), test_setdisc()

Call to:

set_units_extra()

subroutine  units/set_units_extra()
Use :

physcon (cgsmu0())

Called from:

set_units()

subroutine  units/print_units([unit])
Parameters:

unit [integer,in,]

Use :

physcon (gg(), c(), cgsmu0())

Call to:

get_radconst_code(), get_kbmh_code()

subroutine  units/select_unit(string_bn, unit, ierr)
Parameters:
  • string_bn [character,in]

  • unit [real,out]

  • ierr [integer,out]

Use :

physcon

Called from:

in_code_units()

Call to:

get_unit_multiplier()

function  units/is_time_unit(string_bn)
Parameters:

string_bn [character,in]

Return:

is_time_unit [logical]

Called from:

in_code_units()

Call to:

get_unit_multiplier()

function  units/is_length_unit(string_bn)
Parameters:

string_bn [character,in]

Return:

is_length_unit [logical]

Called from:

in_code_units()

Call to:

get_unit_multiplier()

function  units/in_code_units(string_bn, ierr)
Parameters:
  • string_bn [character,in]

  • ierr [integer,out]

Return:

rval [real]

Call to:

select_unit(), is_time_unit(), is_length_unit()

subroutine  units/get_unit_multiplier(string_bn, unit_string, fac, ierr)
Parameters:
  • string_bn [character,in]

  • unit_string [character,out]

  • fac [real,out]

  • ierr [integer,out]

Called from:

select_unit(), is_time_unit(), is_length_unit()

Call to:

is_digit()

function  units/is_digit(ch)
Parameters:

ch [character,in]

Return:

is_digit [logical,pure]

function  units/get_g_code()
Return:

g_code [real]

Use :

physcon (gg())

Called from:

load_extern_densityprofile(), check_lense_thirring_settings(), g_is_unity()

function  units/get_c_code()
Return:

c_code [real]

Use :

physcon (c())

Called from:

gw_still_inspiralling(), check_lense_thirring_settings(), c_is_unity()

function  units/get_radconst_code()
Return:

radconst_code [real]

Use :

physcon (radconst())

Called from:

print_units()

function  units/get_kbmh_code()
Return:

kbmh_code [real]

Use :

physcon (kb_on_mh())

Called from:

print_units()

function  units/g_is_unity()
Return:

g_is_unity [logical]

Called from:

check_lense_thirring_settings(), in_geometric_units()

Call to:

get_g_code()

function  units/c_is_unity()
Return:

c_is_unity [logical]

Called from:

check_lense_thirring_settings(), in_geometric_units()

Call to:

get_c_code()

function  units/in_geometric_units()
Return:

in_geometric_units [logical]

Call to:

c_is_unity(), g_is_unity()

function  units/in_solarm(val)
Parameters:

val [real,in]

Return:

rval [real]

Use :

physcon (solarm())

function  units/in_solarr(val)
Parameters:

val [real,in]

Return:

rval [real]

Use :

physcon (solarr())

function  units/in_solarl(val)
Parameters:

val [real,in]

Return:

rval [real]

Use :

physcon (solarl())