fury_test_bolt64 Program

program~~fury_test_bolt64~~UsesGraph program~fury_test_bolt64 fury_test_bolt64 module~fury fury module~fury->program~fury_test_bolt64 iso_fortran_env iso_fortran_env iso_fortran_env->program~fury_test_bolt64 iso_fortran_env->module~fury module~fury_uom_symbol128 fury_uom_symbol128 iso_fortran_env->module~fury_uom_symbol128 module~fury_qreal128 fury_qreal128 iso_fortran_env->module~fury_qreal128 module~fury_uom_symbol32 fury_uom_symbol32 iso_fortran_env->module~fury_uom_symbol32 module~fury_uom64 fury_uom64 iso_fortran_env->module~fury_uom64 module~fury_mixed_kinds fury_mixed_kinds iso_fortran_env->module~fury_mixed_kinds module~fury_uom_reference64 fury_uom_reference64 iso_fortran_env->module~fury_uom_reference64 module~fury_qreal32 fury_qreal32 iso_fortran_env->module~fury_qreal32 module~fury_uom_symbol64 fury_uom_symbol64 iso_fortran_env->module~fury_uom_symbol64 module~fury_qreal64 fury_qreal64 iso_fortran_env->module~fury_qreal64 module~fury_uom32 fury_uom32 iso_fortran_env->module~fury_uom32 module~fury_uom128 fury_uom128 iso_fortran_env->module~fury_uom128 module~fury_uom_reference32 fury_uom_reference32 iso_fortran_env->module~fury_uom_reference32 module~fury_uom_reference128 fury_uom_reference128 iso_fortran_env->module~fury_uom_reference128 module~penf_stringify~3 penf_stringify iso_fortran_env->module~penf_stringify~3 module~fury_uom_symbol128->module~fury module~fury_uom_symbol128->module~fury_mixed_kinds module~fury_uom_symbol128->module~fury_uom128 module~fury_uom_symbol128->module~fury_uom_reference128 module~penf~3 penf module~penf~3->module~fury module~penf~3->module~fury_uom_symbol128 module~fury_system_si64 fury_system_si64 module~penf~3->module~fury_system_si64 module~fury_system_si128 fury_system_si128 module~penf~3->module~fury_system_si128 module~penf~3->module~fury_qreal128 module~penf~3->module~fury_uom_symbol32 module~penf~3->module~fury_uom64 module~stringifor stringifor module~penf~3->module~stringifor module~fury_system_abstract128 fury_system_abstract128 module~penf~3->module~fury_system_abstract128 module~penf~3->module~fury_mixed_kinds module~penf~3->module~fury_uom_reference64 module~fury_system_abstract32 fury_system_abstract32 module~penf~3->module~fury_system_abstract32 module~penf~3->module~fury_qreal32 module~penf~3->module~fury_uom_symbol64 module~fury_system_abstract64 fury_system_abstract64 module~penf~3->module~fury_system_abstract64 module~penf~3->module~fury_qreal64 module~penf~3->module~fury_uom32 module~penf~3->module~fury_uom128 module~penf~3->module~fury_uom_reference32 module~fury_uom_converter fury_uom_converter module~penf~3->module~fury_uom_converter module~penf~3->module~fury_uom_reference128 module~fury_system_si32 fury_system_si32 module~penf~3->module~fury_system_si32 module~stringifor_string_t stringifor_string_t module~penf~3->module~stringifor_string_t module~befor64 befor64 module~penf~3->module~befor64 module~befor64_pack_data_m~2 befor64_pack_data_m module~penf~3->module~befor64_pack_data_m~2 module~fury_system_si64->module~fury module~fury_system_si128->module~fury module~fury_qreal128->module~fury module~fury_qreal128->module~fury_system_si128 module~fury_qreal128->module~fury_system_abstract128 module~fury_qreal128->module~fury_mixed_kinds module~fury_uom_symbol32->module~fury module~fury_uom_symbol32->module~fury_mixed_kinds module~fury_uom_symbol32->module~fury_uom32 module~fury_uom_symbol32->module~fury_uom_reference32 module~fury_uom64->module~fury module~fury_uom64->module~fury_system_si64 module~fury_uom64->module~fury_mixed_kinds module~fury_uom64->module~fury_system_abstract64 module~fury_uom64->module~fury_qreal64 module~stringifor->module~fury module~stringifor->module~fury_uom_symbol128 module~stringifor->module~fury_system_si64 module~stringifor->module~fury_system_si128 module~stringifor->module~fury_qreal128 module~stringifor->module~fury_uom_symbol32 module~stringifor->module~fury_uom64 module~stringifor->module~fury_system_abstract128 module~stringifor->module~fury_mixed_kinds module~stringifor->module~fury_uom_reference64 module~stringifor->module~fury_system_abstract32 module~stringifor->module~fury_qreal32 module~stringifor->module~fury_uom_symbol64 module~stringifor->module~fury_system_abstract64 module~stringifor->module~fury_qreal64 module~stringifor->module~fury_uom32 module~stringifor->module~fury_uom128 module~stringifor->module~fury_uom_reference32 module~stringifor->module~fury_uom_reference128 module~stringifor->module~fury_system_si32 module~fury_system_abstract128->module~fury module~fury_system_abstract128->module~fury_system_si128 module~fury_mixed_kinds->module~fury module~fury_uom_reference64->module~fury module~fury_uom_reference64->module~fury_uom64 module~fury_uom_reference64->module~fury_mixed_kinds module~fury_uom_reference64->module~fury_system_abstract64 module~fury_system_abstract32->module~fury module~fury_system_abstract32->module~fury_system_si32 module~fury_qreal32->module~fury module~fury_qreal32->module~fury_mixed_kinds module~fury_qreal32->module~fury_system_abstract32 module~fury_qreal32->module~fury_system_si32 module~fury_uom_symbol64->module~fury module~fury_uom_symbol64->module~fury_uom64 module~fury_uom_symbol64->module~fury_mixed_kinds module~fury_uom_symbol64->module~fury_uom_reference64 module~fury_system_abstract64->module~fury module~fury_system_abstract64->module~fury_system_si64 module~fury_qreal64->module~fury module~fury_qreal64->module~fury_system_si64 module~fury_qreal64->module~fury_mixed_kinds module~fury_qreal64->module~fury_system_abstract64 module~fury_uom32->module~fury module~fury_uom32->module~fury_mixed_kinds module~fury_uom32->module~fury_system_abstract32 module~fury_uom32->module~fury_qreal32 module~fury_uom32->module~fury_system_si32 module~fury_uom128->module~fury module~fury_uom128->module~fury_system_si128 module~fury_uom128->module~fury_qreal128 module~fury_uom128->module~fury_system_abstract128 module~fury_uom128->module~fury_mixed_kinds module~fury_uom_reference32->module~fury module~fury_uom_reference32->module~fury_mixed_kinds module~fury_uom_reference32->module~fury_system_abstract32 module~fury_uom_reference32->module~fury_uom32 module~fury_uom_converter->module~fury module~fury_uom_converter->module~fury_uom_symbol128 module~fury_uom_converter->module~fury_uom_symbol32 module~fury_uom_converter->module~fury_uom64 module~fury_uom_converter->module~fury_mixed_kinds module~fury_uom_converter->module~fury_uom_reference64 module~fury_uom_converter->module~fury_uom_symbol64 module~fury_uom_converter->module~fury_uom32 module~fury_uom_converter->module~fury_uom128 module~fury_uom_converter->module~fury_uom_reference32 module~fury_uom_converter->module~fury_uom_reference128 module~fury_uom_reference128->module~fury module~fury_uom_reference128->module~fury_system_abstract128 module~fury_uom_reference128->module~fury_mixed_kinds module~fury_uom_reference128->module~fury_uom128 module~fury_system_si32->module~fury module~penf_global_parameters_variables penf_global_parameters_variables module~penf_global_parameters_variables->module~penf~3 module~penf_b_size~4 penf_b_size module~penf_global_parameters_variables->module~penf_b_size~4 module~penf_global_parameters_variables->module~penf_stringify~3 module~penf_b_size~4->module~penf~3 module~penf_b_size~4->module~penf_stringify~3 module~penf_stringify~3->module~penf~3 module~stringifor_string_t->module~stringifor module~befor64->module~stringifor_string_t module~befor64_pack_data_m~2->module~befor64
Help


FURY test of qreal.

Calls

program~~fury_test_bolt64~~CallsGraph program~fury_test_bolt64 fury_test_bolt64 qreal64 qreal64 program~fury_test_bolt64->qreal64 uom64 uom64 program~fury_test_bolt64->uom64
Help

Source Code


Variables

Type AttributesNameInitial
type(uom64) :: meter

Meter unit.

type(uom64) :: second

Second unit.

type(qreal64) :: distance_to_arrival

Distance.

type(qreal64) :: time_to_arrival

Time.

type(qreal64) :: mean_velocity

Bolt's speed.

logical :: test_passed(1)

List of passed tests.


Source Code

program fury_test_bolt64
!-----------------------------------------------------------------------------------------------------------------------------------
!< FURY test of [[qreal]].
!-----------------------------------------------------------------------------------------------------------------------------------
use, intrinsic :: iso_fortran_env, only : real64
use fury
!-----------------------------------------------------------------------------------------------------------------------------------

!-----------------------------------------------------------------------------------------------------------------------------------
type(uom64)   :: meter               !< Meter unit.
type(uom64)   :: second              !< Second unit.
type(qreal64) :: distance_to_arrival !< Distance.
type(qreal64) :: time_to_arrival     !< Time.
type(qreal64) :: mean_velocity       !< Bolt's speed.
logical       :: test_passed(1)      !< List of passed tests.
!-----------------------------------------------------------------------------------------------------------------------------------

!-----------------------------------------------------------------------------------------------------------------------------------
test_passed = .false.

meter = uom64('m = meter = metre [length] {meter}')
second = uom64('s = sec = second [time] {second}')

distance_to_arrival = qreal64(100._real64, meter)
time_to_arrival = qreal64(9.58_real64, second)

mean_velocity = distance_to_arrival / time_to_arrival
test_passed(1) = mean_velocity%stringify()=='+0.104384133611691E+002 m.s-1'
print "(A,L1)", 'Bolt''s record speed: '//mean_velocity%stringify(with_dimensions=.true.)//', is correct? ', test_passed(1)

print "(A,L1)", new_line('a')//'Are all tests passed? ', all(test_passed)
stop
!-----------------------------------------------------------------------------------------------------------------------------------
endprogram fury_test_bolt64