!==================================================================================================================================! !()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()! !==================================================================================================================================! program test_suite_M_datapac use, intrinsic :: ISO_FORTRAN_ENV, only : INT8, INT16, INT32, INT64 ! 1 2 4 8 use, intrinsic :: ISO_FORTRAN_ENV, only : REAL32, REAL64, REAL128 ! 4 8 10 use M_framework__msg use M_framework__verify, only : unit_check_start,unit_check,unit_check_done,unit_check_good,unit_check_bad,unit_check_msg use M_framework__verify, only : unit_check_stop use M_datapac !use M_test_suite_M_anything !use M_anything, only : anyinteger_to_string, anyscalar_to_int64 !use M_anything, only : anyscalar_to_real, anyscalar_to_double, anyscalar_to_real128 !use M_anything, only : anything_to_bytes, bytes_to_anything !use M_anything, only : empty, assignment(=) implicit none !! setup !! test call test_autoco() call test_betran() call test_bincdf() call test_binppf() call test_binran() call test_caucdf() call test_caupdf() call test_cauplt() call test_cauppf() call test_cauran() call test_causf() call test_chscdf() call test_chsplt() call test_chsppf() call test_chsran() call test_code() call test_corr() call test_count() call test_decomp() call test_define() call test_delete() call test_demod() call test_dexcdf() call test_dexpdf() call test_dexplt() call test_dexppf() call test_dexran() call test_dexsf() call test_discr2() call test_discr3() call test_discre() call test_ev1cdf() call test_ev1plt() call test_ev1ppf() call test_ev1ran() call test_ev2cdf() call test_ev2plt() call test_ev2ppf() call test_ev2ran() call test_expcdf() call test_exppdf() call test_expplt() call test_expppf() call test_expran() call test_expsf() call test_extrem() call test_fcdf() call test_fourie() call test_fran() call test_freq() call test_gamcdf() call test_gamplt() call test_gamppf() call test_gamran() call test_geocdf() call test_geoplt() call test_geoppf() call test_georan() call test_hfncdf() call test_hfnplt() call test_hfnppf() call test_hfnran() call test_hist() call test_invxwx() call test_lamcdf() call test_lampdf() call test_lamplt() call test_lamppf() call test_lamran() call test_lamsf() call test_lgncdf() call test_lgnplt() call test_lgnppf() call test_lgnran() call test_loc() call test_logcdf() call test_logpdf() call test_logplt() call test_logppf() call test_logran() call test_logsf() call test_median() call test_move() call test_nbcdf() call test_nbppf() call test_nbran() call test_norcdf() call test_norout() call test_norpdf() call test_norplt() call test_norppf() call test_norran() call test_norsf() call test_parcdf() call test_parplt() call test_parppf() call test_parran() call test_plot() call test_plot10() call test_plot6() call test_plot7() call test_plot8() call test_plot9() call test_plotc() call test_plotco() call test_plotct() call test_plots() call test_plotsc() call test_plotsp() call test_plotst() call test_plott() call test_plotu() call test_plotx() call test_plotxt() call test_plotxx() call test_pltsct() call test_pltxxt() call test_poicdf() call test_poiplt() call test_poippf() call test_poiran() call test_poly() call test_propor() call test_range() call test_rank() call test_ranper() call test_read() call test_readg() call test_relsd() call test_replac() call test_retain() call test_runs() call test_sampp() call test_scale() call test_sd() call test_skipr() call test_sortp() call test_spcorr() call test_stmom3() call test_stmom4() call test_subse1() call test_subse2() call test_subset() call test_tail() call test_tcdf() call test_time() call test_tol() call test_tplt() call test_tppf() call test_tran() call test_trim() call test_unimed() call test_unipdf() call test_uniplt() call test_unippf() call test_uniran() call test_unisf() call test_weib() call test_weicdf() call test_weiplt() call test_weippf() call test_weiran() call test_wind() call test_write() call test_copy() call test_dot() call test_max() call test_mean() call test_midm() call test_midr() call test_min() call test_sort() call test_sortc() call test_unicdf() call test_var() !! teardown call unit_check_stop() !=================================================================================================================================== !()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()= !=================================================================================================================================== contains !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_autoco() call unit_check_start('autoco',msg='') !!call unit_check('autoco', 0.eq.0, 'checking',100) call unit_check_done('autoco',msg='') end subroutine test_autoco !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_betran() call unit_check_start('betran',msg='') !!call unit_check('betran', 0.eq.0, 'checking',100) call unit_check_done('betran',msg='') end subroutine test_betran !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_bincdf() call unit_check_start('bincdf',msg='') !!call unit_check('bincdf', 0.eq.0, 'checking',100) call unit_check_done('bincdf',msg='') end subroutine test_bincdf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_binppf() call unit_check_start('binppf',msg='') !!call unit_check('binppf', 0.eq.0, 'checking',100) call unit_check_done('binppf',msg='') end subroutine test_binppf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_binran() call unit_check_start('binran',msg='') !!call unit_check('binran', 0.eq.0, 'checking',100) call unit_check_done('binran',msg='') end subroutine test_binran !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_caucdf() call unit_check_start('caucdf',msg='') !!call unit_check('caucdf', 0.eq.0, 'checking',100) call unit_check_done('caucdf',msg='') end subroutine test_caucdf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_caupdf() call unit_check_start('caupdf',msg='') !!call unit_check('caupdf', 0.eq.0, 'checking',100) call unit_check_done('caupdf',msg='') end subroutine test_caupdf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_cauplt() call unit_check_start('cauplt',msg='') !!call unit_check('cauplt', 0.eq.0, 'checking',100) call unit_check_done('cauplt',msg='') end subroutine test_cauplt !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_cauppf() call unit_check_start('cauppf',msg='') !!call unit_check('cauppf', 0.eq.0, 'checking',100) call unit_check_done('cauppf',msg='') end subroutine test_cauppf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_cauran() call unit_check_start('cauran',msg='') !!call unit_check('cauran', 0.eq.0, 'checking',100) call unit_check_done('cauran',msg='') end subroutine test_cauran !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_causf() call unit_check_start('causf',msg='') !!call unit_check('causf', 0.eq.0, 'checking',100) call unit_check_done('causf',msg='') end subroutine test_causf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_chscdf() call unit_check_start('chscdf',msg='') !!call unit_check('chscdf', 0.eq.0, 'checking',100) call unit_check_done('chscdf',msg='') end subroutine test_chscdf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_chsplt() call unit_check_start('chsplt',msg='') !!call unit_check('chsplt', 0.eq.0, 'checking',100) call unit_check_done('chsplt',msg='') end subroutine test_chsplt !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_chsppf() call unit_check_start('chsppf',msg='') !!call unit_check('chsppf', 0.eq.0, 'checking',100) call unit_check_done('chsppf',msg='') end subroutine test_chsppf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_chsran() call unit_check_start('chsran',msg='') !!call unit_check('chsran', 0.eq.0, 'checking',100) call unit_check_done('chsran',msg='') end subroutine test_chsran !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_code() call unit_check_start('code',msg='') !!call unit_check('code', 0.eq.0, 'checking',100) call unit_check_done('code',msg='') end subroutine test_code !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_copy() real,allocatable :: from(:), to(:) call unit_check_start('copy',msg='') from=[1.0,2.0,3.0,4.0,5.0] to=[-1.0,-1.0,-1.0,-1.0,-1.0,-1.0] call copy(from,3,to) call unit_check('copy',all(to==[1.00,2.00,3.00,-1.00,-1.00,-1.00]),'simple') call copy([10.0,20.0,30.0],3,to(3:5)) call unit_check('copy',all(to==[1.00,2.00,10.00,20.00,30.00,-1.00]),'subvector') call unit_check_done('copy',msg='') end subroutine test_copy !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_corr() call unit_check_start('corr',msg='') !!call unit_check('corr', 0.eq.0, 'checking',100) call unit_check_done('corr',msg='') end subroutine test_corr !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_count() call unit_check_start('count',msg='') !!call unit_check('count', 0.eq.0, 'checking',100) call unit_check_done('count',msg='') end subroutine test_count !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_decomp() call unit_check_start('decomp',msg='') !!call unit_check('decomp', 0.eq.0, 'checking',100) call unit_check_done('decomp',msg='') end subroutine test_decomp !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_define() call unit_check_start('define',msg='') !!call unit_check('define', 0.eq.0, 'checking',100) call unit_check_done('define',msg='') end subroutine test_define !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_delete() call unit_check_start('delete',msg='') !!call unit_check('delete', 0.eq.0, 'checking',100) call unit_check_done('delete',msg='') end subroutine test_delete !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_demod() call unit_check_start('demod',msg='') !!call unit_check('demod', 0.eq.0, 'checking',100) call unit_check_done('demod',msg='') end subroutine test_demod !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_dexcdf() call unit_check_start('dexcdf',msg='') !!call unit_check('dexcdf', 0.eq.0, 'checking',100) call unit_check_done('dexcdf',msg='') end subroutine test_dexcdf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_dexpdf() call unit_check_start('dexpdf',msg='') !!call unit_check('dexpdf', 0.eq.0, 'checking',100) call unit_check_done('dexpdf',msg='') end subroutine test_dexpdf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_dexplt() call unit_check_start('dexplt',msg='') !!call unit_check('dexplt', 0.eq.0, 'checking',100) call unit_check_done('dexplt',msg='') end subroutine test_dexplt !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_dexppf() call unit_check_start('dexppf',msg='') !!call unit_check('dexppf', 0.eq.0, 'checking',100) call unit_check_done('dexppf',msg='') end subroutine test_dexppf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_dexran() call unit_check_start('dexran',msg='') !!call unit_check('dexran', 0.eq.0, 'checking',100) call unit_check_done('dexran',msg='') end subroutine test_dexran !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_dexsf() call unit_check_start('dexsf',msg='') !!call unit_check('dexsf', 0.eq.0, 'checking',100) call unit_check_done('dexsf',msg='') end subroutine test_dexsf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_discr2() call unit_check_start('discr2',msg='') !!call unit_check('discr2', 0.eq.0, 'checking',100) call unit_check_done('discr2',msg='') end subroutine test_discr2 !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_discr3() call unit_check_start('discr3',msg='') !!call unit_check('discr3', 0.eq.0, 'checking',100) call unit_check_done('discr3',msg='') end subroutine test_discr3 !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_discre() call unit_check_start('discre',msg='') !!call unit_check('discre', 0.eq.0, 'checking',100) call unit_check_done('discre',msg='') end subroutine test_discre !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_dot() real, dimension(3) :: a, b real :: dotpro , parpro integer i , imax , imin call unit_check_start('dot',msg='') a = [ 1.0, 2.0, 3.0 ] b = [ 4.0, 5.0, 6.0 ] imin=1 imax=size(a) parpro=0.0 call dot(a,b,imin,imax,parpro,dotpro) ! multiply by 1 to avoid gfortran-11 bug call unit_check('dot', dotpro == 32.0 ,'comparing',dotpro,1*dot_product(a,b)) call unit_check_done('dot',msg='') end subroutine test_dot !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_ev1cdf() call unit_check_start('ev1cdf',msg='') !!call unit_check('ev1cdf', 0.eq.0, 'checking',100) call unit_check_done('ev1cdf',msg='') end subroutine test_ev1cdf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_ev1plt() call unit_check_start('ev1plt',msg='') !!call unit_check('ev1plt', 0.eq.0, 'checking',100) call unit_check_done('ev1plt',msg='') end subroutine test_ev1plt !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_ev1ppf() call unit_check_start('ev1ppf',msg='') !!call unit_check('ev1ppf', 0.eq.0, 'checking',100) call unit_check_done('ev1ppf',msg='') end subroutine test_ev1ppf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_ev1ran() call unit_check_start('ev1ran',msg='') !!call unit_check('ev1ran', 0.eq.0, 'checking',100) call unit_check_done('ev1ran',msg='') end subroutine test_ev1ran !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_ev2cdf() call unit_check_start('ev2cdf',msg='') !!call unit_check('ev2cdf', 0.eq.0, 'checking',100) call unit_check_done('ev2cdf',msg='') end subroutine test_ev2cdf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_ev2plt() call unit_check_start('ev2plt',msg='') !!call unit_check('ev2plt', 0.eq.0, 'checking',100) call unit_check_done('ev2plt',msg='') end subroutine test_ev2plt !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_ev2ppf() call unit_check_start('ev2ppf',msg='') !!call unit_check('ev2ppf', 0.eq.0, 'checking',100) call unit_check_done('ev2ppf',msg='') end subroutine test_ev2ppf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_ev2ran() call unit_check_start('ev2ran',msg='') !!call unit_check('ev2ran', 0.eq.0, 'checking',100) call unit_check_done('ev2ran',msg='') end subroutine test_ev2ran !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_expcdf() call unit_check_start('expcdf',msg='') !!call unit_check('expcdf', 0.eq.0, 'checking',100) call unit_check_done('expcdf',msg='') end subroutine test_expcdf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_exppdf() call unit_check_start('exppdf',msg='') !!call unit_check('exppdf', 0.eq.0, 'checking',100) call unit_check_done('exppdf',msg='') end subroutine test_exppdf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_expplt() call unit_check_start('expplt',msg='') !!call unit_check('expplt', 0.eq.0, 'checking',100) call unit_check_done('expplt',msg='') end subroutine test_expplt !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_expppf() call unit_check_start('expppf',msg='') !!call unit_check('expppf', 0.eq.0, 'checking',100) call unit_check_done('expppf',msg='') end subroutine test_expppf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_expran() call unit_check_start('expran',msg='') !!call unit_check('expran', 0.eq.0, 'checking',100) call unit_check_done('expran',msg='') end subroutine test_expran !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_expsf() call unit_check_start('expsf',msg='') !!call unit_check('expsf', 0.eq.0, 'checking',100) call unit_check_done('expsf',msg='') end subroutine test_expsf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_extrem() call unit_check_start('extrem',msg='') !!call unit_check('extrem', 0.eq.0, 'checking',100) call unit_check_done('extrem',msg='') end subroutine test_extrem !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_fcdf() call unit_check_start('fcdf',msg='') !!call unit_check('fcdf', 0.eq.0, 'checking',100) call unit_check_done('fcdf',msg='') end subroutine test_fcdf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_fourie() call unit_check_start('fourie',msg='') !!call unit_check('fourie', 0.eq.0, 'checking',100) call unit_check_done('fourie',msg='') end subroutine test_fourie !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_fran() call unit_check_start('fran',msg='') !!call unit_check('fran', 0.eq.0, 'checking',100) call unit_check_done('fran',msg='') end subroutine test_fran !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_freq() call unit_check_start('freq',msg='') !!call unit_check('freq', 0.eq.0, 'checking',100) call unit_check_done('freq',msg='') end subroutine test_freq !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_gamcdf() call unit_check_start('gamcdf',msg='') !!call unit_check('gamcdf', 0.eq.0, 'checking',100) call unit_check_done('gamcdf',msg='') end subroutine test_gamcdf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_gamplt() call unit_check_start('gamplt',msg='') !!call unit_check('gamplt', 0.eq.0, 'checking',100) call unit_check_done('gamplt',msg='') end subroutine test_gamplt !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_gamppf() call unit_check_start('gamppf',msg='') !!call unit_check('gamppf', 0.eq.0, 'checking',100) call unit_check_done('gamppf',msg='') end subroutine test_gamppf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_gamran() call unit_check_start('gamran',msg='') !!call unit_check('gamran', 0.eq.0, 'checking',100) call unit_check_done('gamran',msg='') end subroutine test_gamran !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_geocdf() call unit_check_start('geocdf',msg='') !!call unit_check('geocdf', 0.eq.0, 'checking',100) call unit_check_done('geocdf',msg='') end subroutine test_geocdf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_geoplt() call unit_check_start('geoplt',msg='') !!call unit_check('geoplt', 0.eq.0, 'checking',100) call unit_check_done('geoplt',msg='') end subroutine test_geoplt !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_geoppf() call unit_check_start('geoppf',msg='') !!call unit_check('geoppf', 0.eq.0, 'checking',100) call unit_check_done('geoppf',msg='') end subroutine test_geoppf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_georan() call unit_check_start('georan',msg='') !!call unit_check('georan', 0.eq.0, 'checking',100) call unit_check_done('georan',msg='') end subroutine test_georan !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_hfncdf() call unit_check_start('hfncdf',msg='') !!call unit_check('hfncdf', 0.eq.0, 'checking',100) call unit_check_done('hfncdf',msg='') end subroutine test_hfncdf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_hfnplt() call unit_check_start('hfnplt',msg='') !!call unit_check('hfnplt', 0.eq.0, 'checking',100) call unit_check_done('hfnplt',msg='') end subroutine test_hfnplt !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_hfnppf() call unit_check_start('hfnppf',msg='') !!call unit_check('hfnppf', 0.eq.0, 'checking',100) call unit_check_done('hfnppf',msg='') end subroutine test_hfnppf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_hfnran() call unit_check_start('hfnran',msg='') !!call unit_check('hfnran', 0.eq.0, 'checking',100) call unit_check_done('hfnran',msg='') end subroutine test_hfnran !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_hist() call unit_check_start('hist',msg='') !!call unit_check('hist', 0.eq.0, 'checking',100) call unit_check_done('hist',msg='') end subroutine test_hist !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_invxwx() call unit_check_start('invxwx',msg='') !!call unit_check('invxwx', 0.eq.0, 'checking',100) call unit_check_done('invxwx',msg='') end subroutine test_invxwx !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_lamcdf() call unit_check_start('lamcdf',msg='') !!call unit_check('lamcdf', 0.eq.0, 'checking',100) call unit_check_done('lamcdf',msg='') end subroutine test_lamcdf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_lampdf() call unit_check_start('lampdf',msg='') !!call unit_check('lampdf', 0.eq.0, 'checking',100) call unit_check_done('lampdf',msg='') end subroutine test_lampdf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_lamplt() call unit_check_start('lamplt',msg='') !!call unit_check('lamplt', 0.eq.0, 'checking',100) call unit_check_done('lamplt',msg='') end subroutine test_lamplt !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_lamppf() call unit_check_start('lamppf',msg='') !!call unit_check('lamppf', 0.eq.0, 'checking',100) call unit_check_done('lamppf',msg='') end subroutine test_lamppf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_lamran() call unit_check_start('lamran',msg='') !!call unit_check('lamran', 0.eq.0, 'checking',100) call unit_check_done('lamran',msg='') end subroutine test_lamran !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_lamsf() call unit_check_start('lamsf',msg='') !!call unit_check('lamsf', 0.eq.0, 'checking',100) call unit_check_done('lamsf',msg='') end subroutine test_lamsf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_lgncdf() call unit_check_start('lgncdf',msg='') !!call unit_check('lgncdf', 0.eq.0, 'checking',100) call unit_check_done('lgncdf',msg='') end subroutine test_lgncdf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_lgnplt() call unit_check_start('lgnplt',msg='') !!call unit_check('lgnplt', 0.eq.0, 'checking',100) call unit_check_done('lgnplt',msg='') end subroutine test_lgnplt !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_lgnppf() call unit_check_start('lgnppf',msg='') !!call unit_check('lgnppf', 0.eq.0, 'checking',100) call unit_check_done('lgnppf',msg='') end subroutine test_lgnppf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_lgnran() call unit_check_start('lgnran',msg='') !!call unit_check('lgnran', 0.eq.0, 'checking',100) call unit_check_done('lgnran',msg='') end subroutine test_lgnran !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_loc() call unit_check_start('loc',msg='') !!call unit_check('loc', 0.eq.0, 'checking',100) call unit_check_done('loc',msg='') end subroutine test_loc !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_logcdf() call unit_check_start('logcdf',msg='') !!call unit_check('logcdf', 0.eq.0, 'checking',100) call unit_check_done('logcdf',msg='') end subroutine test_logcdf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_logpdf() call unit_check_start('logpdf',msg='') !!call unit_check('logpdf', 0.eq.0, 'checking',100) call unit_check_done('logpdf',msg='') end subroutine test_logpdf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_logplt() call unit_check_start('logplt',msg='') !!call unit_check('logplt', 0.eq.0, 'checking',100) call unit_check_done('logplt',msg='') end subroutine test_logplt !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_logppf() call unit_check_start('logppf',msg='') !!call unit_check('logppf', 0.eq.0, 'checking',100) call unit_check_done('logppf',msg='') end subroutine test_logppf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_logran() call unit_check_start('logran',msg='') !!call unit_check('logran', 0.eq.0, 'checking',100) call unit_check_done('logran',msg='') end subroutine test_logran !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_logsf() call unit_check_start('logsf',msg='') !!call unit_check('logsf', 0.eq.0, 'checking',100) call unit_check_done('logsf',msg='') end subroutine test_logsf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_max() use M_datapac, only : intel_max=>max real :: xmax real(kind=real64) :: dmax call unit_check_start('max',msg='') call intel_max([-100.0, 200.0, 0.0, 400.0, -200.0],5,1,xmax) call unit_check('max', xmax.eq.400.0, 'checking',xmax,400.0) call intel_max([-100.0d0, 200.0d0, 0.0d0, 400.0d0, -200.0d0],5,1,dmax) call unit_check('max', dmax.eq.400.0d0, 'checking',dmax,400.0d0) call unit_check_done('max',msg='') end subroutine test_max !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_mean() real :: sp_mean double precision :: dp_mean call unit_check_start('mean',msg='') call mean([4.0, 36.0, 45.0, 50.0, 75.0], 5, 1, sp_mean) call unit_check('mean', sp_mean.eq.42.0, 'checking',sp_mean,42.0) call mean([4.0d0, 36.0d0, 45.0d0, 50.0d0, 75.0d0], 5, 1, dp_mean) call unit_check('mean', dp_mean.eq.42.0d0, 'checking',dp_mean,42.0d0) call mean([4.0d0], 1, 1, dp_mean) call unit_check('mean', dp_mean.eq.4.0d0, 'checking',dp_mean,4.0d0) call unit_check_done('mean',msg='') end subroutine test_mean !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_median() call unit_check_start('median',msg='') !!call unit_check('median', 0.eq.0, 'checking',100) call unit_check_done('median',msg='') end subroutine test_median !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_midm() integer :: i real :: xmidm call unit_check_start('midm',msg='') call midm([real :: (i,i=0,100) ],101,1,xmidm) call unit_check('midm', xmidm==50.0, 'expecting',50.0,'got',xmidm) call midm([real :: (i,i=0,101) ],102,1,xmidm) call unit_check('midm', xmidm==50.5, 'expecting',50.5,'got',xmidm) call unit_check_done('midm',msg='') end subroutine test_midm !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_midr() integer :: i real :: xmidr call unit_check_start('midr',msg='') call midr([real :: (i,i=0,100) ],101,1,xmidr) call unit_check('midr', xmidr==50.0, 'expecting',50.0,'got',xmidr) call midr([real :: (i,i=0,101) ],102,1,xmidr) call unit_check('midr', xmidr==50.5, 'expecting',50.5,'got',xmidr) call unit_check_done('midr',msg='') end subroutine test_midr !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_min() real :: xmin real(kind=real64) :: dmin call unit_check_start('min',msg='') call min([-100.0, 200.0, 0.0, 400.0, -200.0],5,1,xmin) call unit_check('min', xmin.eq.-200.0, 'checking',xmin,-200.0) call min([-100.0d0, 200.0d0, 0.0d0, 400.0d0, -200.0d0],5,1,dmin) call unit_check('min', dmin.eq.-200.0d0, 'checking',dmin,-200.0d0) call unit_check_done('min',msg='') end subroutine test_min !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_move() call unit_check_start('move',msg='') !!call unit_check('move', 0.eq.0, 'checking',100) call unit_check_done('move',msg='') end subroutine test_move !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_nbcdf() call unit_check_start('nbcdf',msg='') !!call unit_check('nbcdf', 0.eq.0, 'checking',100) call unit_check_done('nbcdf',msg='') end subroutine test_nbcdf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_nbppf() call unit_check_start('nbppf',msg='') !!call unit_check('nbppf', 0.eq.0, 'checking',100) call unit_check_done('nbppf',msg='') end subroutine test_nbppf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_nbran() call unit_check_start('nbran',msg='') !!call unit_check('nbran', 0.eq.0, 'checking',100) call unit_check_done('nbran',msg='') end subroutine test_nbran !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_norcdf() call unit_check_start('norcdf',msg='') !!call unit_check('norcdf', 0.eq.0, 'checking',100) call unit_check_done('norcdf',msg='') end subroutine test_norcdf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_norout() call unit_check_start('norout',msg='') !!call unit_check('norout', 0.eq.0, 'checking',100) call unit_check_done('norout',msg='') end subroutine test_norout !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_norpdf() call unit_check_start('norpdf',msg='') !!call unit_check('norpdf', 0.eq.0, 'checking',100) call unit_check_done('norpdf',msg='') end subroutine test_norpdf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_norplt() call unit_check_start('norplt',msg='') !!call unit_check('norplt', 0.eq.0, 'checking',100) call unit_check_done('norplt',msg='') end subroutine test_norplt !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_norppf() call unit_check_start('norppf',msg='') !!call unit_check('norppf', 0.eq.0, 'checking',100) call unit_check_done('norppf',msg='') end subroutine test_norppf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_norran() call unit_check_start('norran',msg='') !!call unit_check('norran', 0.eq.0, 'checking',100) call unit_check_done('norran',msg='') end subroutine test_norran !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_norsf() call unit_check_start('norsf',msg='') !!call unit_check('norsf', 0.eq.0, 'checking',100) call unit_check_done('norsf',msg='') end subroutine test_norsf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_parcdf() call unit_check_start('parcdf',msg='') !!call unit_check('parcdf', 0.eq.0, 'checking',100) call unit_check_done('parcdf',msg='') end subroutine test_parcdf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_parplt() call unit_check_start('parplt',msg='') !!call unit_check('parplt', 0.eq.0, 'checking',100) call unit_check_done('parplt',msg='') end subroutine test_parplt !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_parppf() call unit_check_start('parppf',msg='') !!call unit_check('parppf', 0.eq.0, 'checking',100) call unit_check_done('parppf',msg='') end subroutine test_parppf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_parran() call unit_check_start('parran',msg='') !!call unit_check('parran', 0.eq.0, 'checking',100) call unit_check_done('parran',msg='') end subroutine test_parran !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_plot() call unit_check_start('plot',msg='') !!call unit_check('plot', 0.eq.0, 'checking',100) call unit_check_done('plot',msg='') end subroutine test_plot !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_plot10() call unit_check_start('plot10',msg='') !!call unit_check('plot10', 0.eq.0, 'checking',100) call unit_check_done('plot10',msg='') end subroutine test_plot10 !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_plot6() call unit_check_start('plot6',msg='') !!call unit_check('plot6', 0.eq.0, 'checking',100) call unit_check_done('plot6',msg='') end subroutine test_plot6 !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_plot7() call unit_check_start('plot7',msg='') !!call unit_check('plot7', 0.eq.0, 'checking',100) call unit_check_done('plot7',msg='') end subroutine test_plot7 !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_plot8() call unit_check_start('plot8',msg='') !!call unit_check('plot8', 0.eq.0, 'checking',100) call unit_check_done('plot8',msg='') end subroutine test_plot8 !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_plot9() call unit_check_start('plot9',msg='') !!call unit_check('plot9', 0.eq.0, 'checking',100) call unit_check_done('plot9',msg='') end subroutine test_plot9 !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_plotc() call unit_check_start('plotc',msg='') !!call unit_check('plotc', 0.eq.0, 'checking',100) call unit_check_done('plotc',msg='') end subroutine test_plotc !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_plotco() call unit_check_start('plotco',msg='') !!call unit_check('plotco', 0.eq.0, 'checking',100) call unit_check_done('plotco',msg='') end subroutine test_plotco !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_plotct() call unit_check_start('plotct',msg='') !!call unit_check('plotct', 0.eq.0, 'checking',100) call unit_check_done('plotct',msg='') end subroutine test_plotct !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_plots() call unit_check_start('plots',msg='') !!call unit_check('plots', 0.eq.0, 'checking',100) call unit_check_done('plots',msg='') end subroutine test_plots !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_plotsc() call unit_check_start('plotsc',msg='') !!call unit_check('plotsc', 0.eq.0, 'checking',100) call unit_check_done('plotsc',msg='') end subroutine test_plotsc !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_plotsp() call unit_check_start('plotsp',msg='') !!call unit_check('plotsp', 0.eq.0, 'checking',100) call unit_check_done('plotsp',msg='') end subroutine test_plotsp !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_plotst() call unit_check_start('plotst',msg='') !!call unit_check('plotst', 0.eq.0, 'checking',100) call unit_check_done('plotst',msg='') end subroutine test_plotst !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_plott() call unit_check_start('plott',msg='') !!call unit_check('plott', 0.eq.0, 'checking',100) call unit_check_done('plott',msg='') end subroutine test_plott !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_plotu() call unit_check_start('plotu',msg='') !!call unit_check('plotu', 0.eq.0, 'checking',100) call unit_check_done('plotu',msg='') end subroutine test_plotu !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_plotx() call unit_check_start('plotx',msg='') !!call unit_check('plotx', 0.eq.0, 'checking',100) call unit_check_done('plotx',msg='') end subroutine test_plotx !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_plotxt() call unit_check_start('plotxt',msg='') !!call unit_check('plotxt', 0.eq.0, 'checking',100) call unit_check_done('plotxt',msg='') end subroutine test_plotxt !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_plotxx() call unit_check_start('plotxx',msg='') !!call unit_check('plotxx', 0.eq.0, 'checking',100) call unit_check_done('plotxx',msg='') end subroutine test_plotxx !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_pltsct() call unit_check_start('pltsct',msg='') !!call unit_check('pltsct', 0.eq.0, 'checking',100) call unit_check_done('pltsct',msg='') end subroutine test_pltsct !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_pltxxt() call unit_check_start('pltxxt',msg='') !!call unit_check('pltxxt', 0.eq.0, 'checking',100) call unit_check_done('pltxxt',msg='') end subroutine test_pltxxt !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_poicdf() call unit_check_start('poicdf',msg='') !!call unit_check('poicdf', 0.eq.0, 'checking',100) call unit_check_done('poicdf',msg='') end subroutine test_poicdf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_poiplt() call unit_check_start('poiplt',msg='') !!call unit_check('poiplt', 0.eq.0, 'checking',100) call unit_check_done('poiplt',msg='') end subroutine test_poiplt !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_poippf() call unit_check_start('poippf',msg='') !!call unit_check('poippf', 0.eq.0, 'checking',100) call unit_check_done('poippf',msg='') end subroutine test_poippf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_poiran() call unit_check_start('poiran',msg='') !!call unit_check('poiran', 0.eq.0, 'checking',100) call unit_check_done('poiran',msg='') end subroutine test_poiran !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_poly() call unit_check_start('poly',msg='') !!call unit_check('poly', 0.eq.0, 'checking',100) call unit_check_done('poly',msg='') end subroutine test_poly !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_propor() call unit_check_start('propor',msg='') !!call unit_check('propor', 0.eq.0, 'checking',100) call unit_check_done('propor',msg='') end subroutine test_propor !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_range() call unit_check_start('range',msg='') !!call unit_check('range', 0.eq.0, 'checking',100) call unit_check_done('range',msg='') end subroutine test_range !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_rank() call unit_check_start('rank',msg='') !!call unit_check('rank', 0.eq.0, 'checking',100) call unit_check_done('rank',msg='') end subroutine test_rank !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_ranper() call unit_check_start('ranper',msg='') !!call unit_check('ranper', 0.eq.0, 'checking',100) call unit_check_done('ranper',msg='') end subroutine test_ranper !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_read() call unit_check_start('read',msg='') !!call unit_check('read', 0.eq.0, 'checking',100) call unit_check_done('read',msg='') end subroutine test_read !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_readg() call unit_check_start('readg',msg='') !!call unit_check('readg', 0.eq.0, 'checking',100) call unit_check_done('readg',msg='') end subroutine test_readg !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_relsd() call unit_check_start('relsd',msg='') !!call unit_check('relsd', 0.eq.0, 'checking',100) call unit_check_done('relsd',msg='') end subroutine test_relsd !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_replac() call unit_check_start('replac',msg='') !!call unit_check('replac', 0.eq.0, 'checking',100) call unit_check_done('replac',msg='') end subroutine test_replac !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_retain() call unit_check_start('retain',msg='') !!call unit_check('retain', 0.eq.0, 'checking',100) call unit_check_done('retain',msg='') end subroutine test_retain !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_runs() call unit_check_start('runs',msg='') !!call unit_check('runs', 0.eq.0, 'checking',100) call unit_check_done('runs',msg='') end subroutine test_runs !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_sampp() call unit_check_start('sampp',msg='') !!call unit_check('sampp', 0.eq.0, 'checking',100) call unit_check_done('sampp',msg='') end subroutine test_sampp !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_scale() call unit_check_start('scale',msg='') !!call unit_check('scale', 0.eq.0, 'checking',100) call unit_check_done('scale',msg='') end subroutine test_scale !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_sd() call unit_check_start('sd',msg='') !!call unit_check('sd', 0.eq.0, 'checking',100) call unit_check_done('sd',msg='') end subroutine test_sd !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_skipr() call unit_check_start('skipr',msg='') !!call unit_check('skipr', 0.eq.0, 'checking',100) call unit_check_done('skipr',msg='') end subroutine test_skipr !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_sort() integer,parameter :: isz=20 real :: aa(isz) real :: bb(isz) integer :: i integer :: ibad ibad=0 call unit_check_start('sort',msg='') call random_seed() CALL RANDOM_NUMBER(aa) aa=aa*450000.0 bb=real([(i,i=1,isz)]) call sort(aa,isz,bb) do i=1,isz-1 if(bb(i).gt.bb(i+1))then write(*,*)'Error in sorting reals small to large ',i,bb(i),bb(i+1) ibad=ibad+1 endif enddo call unit_check('sort', ibad.eq.0, 'checking',100) call unit_check_done('sort',msg='') end subroutine test_sort !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_sortc() integer,parameter :: isz=2000 real :: aa(isz) real :: bb(isz) real :: cc(isz) real :: dd(isz) real :: cc2(isz) real :: dd2(isz) integer :: i integer :: ibad ibad=0 call unit_check_start('sortc',msg='') call random_seed() CALL RANDOM_NUMBER(aa) aa=aa*450000.0 bb=real([(i,i=1,isz)]) call sortc(aa,bb,size(aa),cc,dd) do i=1,isz-1 ! checking if real values are sorted if(cc(i).gt.cc(i+1))then write(*,*)'Error in sorting reals small to large ',i,cc(i),cc(i+1) ibad=ibad+1 endif enddo call unit_check('sortc', ibad.eq.0, 'checking ascending') call sortc(dd,cc,isz,dd2,cc2) ! put dd and cc back in original order call unit_check('sortc', all(cc2.eq.aa), 'checking reversed') call unit_check('sortc', all(dd2.eq.bb), 'checking reversed') call unit_check_done('sortc',msg='') end subroutine test_sortc !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_sortp() call unit_check_start('sortp',msg='') !!call unit_check('sortp', 0.eq.0, 'checking',100) call unit_check_done('sortp',msg='') end subroutine test_sortp !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_spcorr() call unit_check_start('spcorr',msg='') !!call unit_check('spcorr', 0.eq.0, 'checking',100) call unit_check_done('spcorr',msg='') end subroutine test_spcorr !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_stmom3() call unit_check_start('stmom3',msg='') !!call unit_check('stmom3', 0.eq.0, 'checking',100) call unit_check_done('stmom3',msg='') end subroutine test_stmom3 !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_stmom4() call unit_check_start('stmom4',msg='') !!call unit_check('stmom4', 0.eq.0, 'checking',100) call unit_check_done('stmom4',msg='') end subroutine test_stmom4 !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_subse1() call unit_check_start('subse1',msg='') !!call unit_check('subse1', 0.eq.0, 'checking',100) call unit_check_done('subse1',msg='') end subroutine test_subse1 !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_subse2() call unit_check_start('subse2',msg='') !!call unit_check('subse2', 0.eq.0, 'checking',100) call unit_check_done('subse2',msg='') end subroutine test_subse2 !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_subset() call unit_check_start('subset',msg='') !!call unit_check('subset', 0.eq.0, 'checking',100) call unit_check_done('subset',msg='') end subroutine test_subset !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_tail() call unit_check_start('tail',msg='') !!call unit_check('tail', 0.eq.0, 'checking',100) call unit_check_done('tail',msg='') end subroutine test_tail !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_tcdf() call unit_check_start('tcdf',msg='') !!call unit_check('tcdf', 0.eq.0, 'checking',100) call unit_check_done('tcdf',msg='') end subroutine test_tcdf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_time() call unit_check_start('time',msg='') !!call unit_check('time', 0.eq.0, 'checking',100) call unit_check_done('time',msg='') end subroutine test_time !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_tol() call unit_check_start('tol',msg='') !!call unit_check('tol', 0.eq.0, 'checking',100) call unit_check_done('tol',msg='') end subroutine test_tol !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_tplt() call unit_check_start('tplt',msg='') !!call unit_check('tplt', 0.eq.0, 'checking',100) call unit_check_done('tplt',msg='') end subroutine test_tplt !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_tppf() call unit_check_start('tppf',msg='') !!call unit_check('tppf', 0.eq.0, 'checking',100) call unit_check_done('tppf',msg='') end subroutine test_tppf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_tran() call unit_check_start('tran',msg='') !!call unit_check('tran', 0.eq.0, 'checking',100) call unit_check_done('tran',msg='') end subroutine test_tran !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_trim() call unit_check_start('trim',msg='') !!call unit_check('trim', 0.eq.0, 'checking',100) call unit_check_done('trim',msg='') end subroutine test_trim !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_unicdf() integer,parameter :: n=40 real :: x(0:n), y(0:n) integer :: i call unit_check_start('unicdf',msg='') x=[(real(i)/real(n),i=0,n)] do i=0,n call unicdf(x(i),y(i)) enddo call unit_check('unicdf', all(x.eq.y), 'checking in equals out') call unit_check_done('unicdf',msg='') end subroutine test_unicdf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_unimed() call unit_check_start('unimed',msg='') !!call unit_check('unimed', 0.eq.0, 'checking',100) call unit_check_done('unimed',msg='') end subroutine test_unimed !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_unipdf() call unit_check_start('unipdf',msg='') !!call unit_check('unipdf', 0.eq.0, 'checking',100) call unit_check_done('unipdf',msg='') end subroutine test_unipdf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_uniplt() call unit_check_start('uniplt',msg='') !!call unit_check('uniplt', 0.eq.0, 'checking',100) call unit_check_done('uniplt',msg='') end subroutine test_uniplt !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_unippf() call unit_check_start('unippf',msg='') !!call unit_check('unippf', 0.eq.0, 'checking',100) call unit_check_done('unippf',msg='') end subroutine test_unippf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_uniran() call unit_check_start('uniran',msg='') !!call unit_check('uniran', 0.eq.0, 'checking',100) call unit_check_done('uniran',msg='') end subroutine test_uniran !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_unisf() call unit_check_start('unisf',msg='') !!call unit_check('unisf', 0.eq.0, 'checking',100) call unit_check_done('unisf',msg='') end subroutine test_unisf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_var() real,allocatable :: x(:) real :: Xvar call unit_check_start('var',msg='') x = [46.0, 69.0, 32.0, 60.0, 52.0, 41.0] call VAR(X,size(x),1,Xvar) call unit_check('var', Xvar == 177.2 ,'got',Xvar,'expecting',177.2) call unit_check_done('var',msg='') end subroutine test_var !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_weib() call unit_check_start('weib',msg='') !!call unit_check('weib', 0.eq.0, 'checking',100) call unit_check_done('weib',msg='') end subroutine test_weib !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_weicdf() call unit_check_start('weicdf',msg='') !!call unit_check('weicdf', 0.eq.0, 'checking',100) call unit_check_done('weicdf',msg='') end subroutine test_weicdf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_weiplt() call unit_check_start('weiplt',msg='') !!call unit_check('weiplt', 0.eq.0, 'checking',100) call unit_check_done('weiplt',msg='') end subroutine test_weiplt !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_weippf() call unit_check_start('weippf',msg='') !!call unit_check('weippf', 0.eq.0, 'checking',100) call unit_check_done('weippf',msg='') end subroutine test_weippf !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_weiran() call unit_check_start('weiran',msg='') !!call unit_check('weiran', 0.eq.0, 'checking',100) call unit_check_done('weiran',msg='') end subroutine test_weiran !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_wind() call unit_check_start('wind',msg='') !!call unit_check('wind', 0.eq.0, 'checking',100) call unit_check_done('wind',msg='') end subroutine test_wind !TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT subroutine test_write() call unit_check_start('write',msg='') !!call unit_check('write', 0.eq.0, 'checking',100) call unit_check_done('write',msg='') end subroutine test_write !=================================================================================================================================== !()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()= !=================================================================================================================================== end program test_suite_M_datapac