diff --git a/.gitignore b/.gitignore index 8f701dd1b8..34c1f2e631 100644 --- a/.gitignore +++ b/.gitignore @@ -96,6 +96,12 @@ aether_to_dart dart_to_aether test_aether_grid create_identity_streamflow_obs +create_obs_grid +obs_data_denial +obs_info +obs_remove_dups +obs_sort +obs_timejitter # Observation converter exectutables convert_aviso @@ -217,6 +223,32 @@ test_kde_dist test_window test_force_bounds test_parse_variables +correl_error +full_error +obs_sampling_err +sampling_error +sys_sim101 +sys_sim101a +sys_sim102 +sys_sim102b +sys_sim103 +sys_sim104 +sys_sim104b +sys_sim105 +sys_sim2 +sys_sim201 +sys_sim202 +sys_sim203 +sys_sim3 +sys_sim301 +sys_sim302 +sys_sim4 +sys_sim401 +sys_sim402 +sys_sim5 +sys_sim501 +sys_sim502 +test_sampling_err_table # Directories to NOT IGNORE ... same as executable names # as far as I know, these must be listed after the executables @@ -227,6 +259,7 @@ test_parse_variables !compute_error/ !create_fixed_network_seq/ !create_obs_sequence/ +!create_obs_grid/ !fill_inflation_restart/ !filter/ !gen_sampling_err_table/ @@ -236,18 +269,23 @@ test_parse_variables !obs_common_subset/ !obs_diag/ !obs_impact_tool/ +!obs_info/ !obs_keep_a_few/ !obs_loop/ +!obs_remove_dups/ !obs_selection/ !obs_seq_coverage/ !obs_seq_to_netcdf/ !obs_seq_verify/ !obs_sequence_tool/ +!obs_sort/ +!obs_timejitter/ !obs_total_error/ -!obs_utils/ +!obs_data_denial/ !perfect_model_obs/ !perturb_single_instance/ !preprocess/ +!radiance_obs_seq_to_netcdf/ !restart_file_tool/ !system_simulation/ !wakeup_filter/ diff --git a/assimilation_code/programs/obs_timejitter/obs_timejitter.f90 b/assimilation_code/programs/obs_timejitter/obs_timejitter.f90 index 4c4f31cec8..8e034ae9c0 100644 --- a/assimilation_code/programs/obs_timejitter/obs_timejitter.f90 +++ b/assimilation_code/programs/obs_timejitter/obs_timejitter.f90 @@ -16,7 +16,7 @@ program obs_timejitter get_copy_meta_data, get_qc_meta_data, set_qc_meta_data use time_manager_mod, only : time_type, set_time, get_time, interactive_time, & operator(*), operator(+), operator(-), operator(<) -use model_mod, only : static_init_model +use assim_model_mod, only : static_init_assim_model implicit none @@ -36,7 +36,7 @@ program obs_timejitter call initialize_utilities('obs_timejitter') ! Call the underlying model's static initialization for calendar info -call static_init_model() +call static_init_assim_model() ! Initialize the obs_sequence module call static_init_obs_sequence() diff --git a/assimilation_code/programs/system_simulation/sys_sim401.f90 b/assimilation_code/programs/system_simulation/sys_sim401.f90 index 48ae1f3c41..dc581ba53a 100644 --- a/assimilation_code/programs/system_simulation/sys_sim401.f90 +++ b/assimilation_code/programs/system_simulation/sys_sim401.f90 @@ -82,8 +82,8 @@ subroutine sub_sim401(sd_ratio, n_samples, alpha) ! Now, draw a single value from this distribution ! This is the revised clean version from 9 Nov., 2003 - sample1(i) = random_gaussian(r, 1.0_r8, sd_ratio) - sample2(i) = random_gaussian(r, 1.0_r8, sd_ratio) + sample1(i) = random_gaussian(r, 1.d0, sd_ratio) + sample2(i) = random_gaussian(r, 1.d0, sd_ratio) end do ! For now, don't know how to really compute this derivative for minimization diff --git a/assimilation_code/programs/system_simulation/sys_sim402.f90 b/assimilation_code/programs/system_simulation/sys_sim402.f90 index de1169fed1..50aeea5994 100644 --- a/assimilation_code/programs/system_simulation/sys_sim402.f90 +++ b/assimilation_code/programs/system_simulation/sys_sim402.f90 @@ -16,7 +16,7 @@ program sys_sim402 ! Loop through a range of values for alpha until alpha is 0.0 do i = 0, 300 - sd_ratio = (i - 1.) / 100.0_r8 + sd_ratio = (i - 1.) / 100.d0 call sub_sim402(sd_ratio, n, n_samples, alpha) write(*, *) 'sd_ratio, alpha ', sd_ratio, alpha !!! if(alpha <= 0.0) stop diff --git a/developer_tests/lonely_quickbuilds/work/input.nml b/developer_tests/lonely_quickbuilds/work/input.nml new file mode 100644 index 0000000000..83525855eb --- /dev/null +++ b/developer_tests/lonely_quickbuilds/work/input.nml @@ -0,0 +1,13 @@ +&utilities_nml + module_details = .false. + / + +&preprocess_nml + input_obs_qty_mod_file = '../../../assimilation_code/modules/observations/DEFAULT_obs_kind_mod.F90' + output_obs_qty_mod_file = '../../../assimilation_code/modules/observations/obs_kind_mod.f90' + input_obs_def_mod_file = '../../../observations/forward_operators/DEFAULT_obs_def_mod.F90' + output_obs_def_mod_file = '../../../observations/forward_operators/obs_def_mod.f90' + obs_type_files = '../../../observations/forward_operators/obs_def_gps_mod.f90' + quantity_files = '../../../assimilation_code/modules/observations/default_quantities_mod.f90' + / + diff --git a/developer_tests/lonely_quickbuilds/work/quickbuild.sh b/developer_tests/lonely_quickbuilds/work/quickbuild.sh new file mode 100755 index 0000000000..3218b2150d --- /dev/null +++ b/developer_tests/lonely_quickbuilds/work/quickbuild.sh @@ -0,0 +1,50 @@ +#!/usr/bin/env bash + +# DART software - Copyright UCAR. This open source software is provided +# by UCAR, "as is", without charge, subject to all terms of use at +# http://www.image.ucar.edu/DAReS/DART/DART_download + +main() { + + +export DART=$(git rev-parse --show-toplevel) +source "$DART"/build_templates/buildfunctions.sh + +MODEL="none" +EXTRA="$DART"/models/template/threed_model_mod.f90 +LOCATION="threed_sphere" + +serial_programs=( +obs_info +create_obs_grid +compare_states +gen_sampling_err_table +compute_error +obs_assim_count +obs_timejitter +obs_loop +obs_data_denial +obs_remove_dups +obs_sort +obs_total_error +obs_keep_a_few +) + +# quickbuild arguments +arguments "$@" + +# clean the directory +\rm -f -- *.o *.mod Makefile .cppdefs + +# build and run preprocess before making any other DART executables +buildpreprocess + +# build DART +buildit + +# clean up +\rm -f -- *.o *.mod + +} + +main "$@" diff --git a/developer_tests/system_simulation/work/input.nml b/developer_tests/system_simulation/work/input.nml new file mode 100644 index 0000000000..83525855eb --- /dev/null +++ b/developer_tests/system_simulation/work/input.nml @@ -0,0 +1,13 @@ +&utilities_nml + module_details = .false. + / + +&preprocess_nml + input_obs_qty_mod_file = '../../../assimilation_code/modules/observations/DEFAULT_obs_kind_mod.F90' + output_obs_qty_mod_file = '../../../assimilation_code/modules/observations/obs_kind_mod.f90' + input_obs_def_mod_file = '../../../observations/forward_operators/DEFAULT_obs_def_mod.F90' + output_obs_def_mod_file = '../../../observations/forward_operators/obs_def_mod.f90' + obs_type_files = '../../../observations/forward_operators/obs_def_gps_mod.f90' + quantity_files = '../../../assimilation_code/modules/observations/default_quantities_mod.f90' + / + diff --git a/developer_tests/system_simulation/work/quickbuild.sh b/developer_tests/system_simulation/work/quickbuild.sh new file mode 100755 index 0000000000..6e9dd8ca70 --- /dev/null +++ b/developer_tests/system_simulation/work/quickbuild.sh @@ -0,0 +1,66 @@ +#!/usr/bin/env bash + +# DART software - Copyright UCAR. This open source software is provided +# by UCAR, "as is", without charge, subject to all terms of use at +# http://www.image.ucar.edu/DAReS/DART/DART_download + +main() { + + +export DART=$(git rev-parse --show-toplevel) +source "$DART"/build_templates/buildfunctions.sh + +MODEL="none" +EXTRA="$DART"/models/template/threed_model_mod.f90 +dev_test=1 +LOCATION="threed_sphere" +TEST="../assimilation_code/programs/system_simulation/" + +serial_programs=( +sys_sim103 +sys_sim3 +sys_sim301 +sys_sim2 +sys_sim201 +sys_sim302 +sys_sim102 +sys_sim104 +obs_sampling_err +sys_sim501 +sys_sim402 +full_error +sys_sim202 +sys_sim401 +system_simulation +sys_sim502 +sys_sim105 +sys_sim4 +sys_sim102b +sys_sim5 +sys_sim104b +sampling_error +sys_sim101a +test_sampling_err_table +correl_error +sys_sim101 +sys_sim203 +) + +# quickbuild arguments +arguments "$@" + +# clean the directory +\rm -f -- *.o *.mod Makefile .cppdefs + +# build and run preprocess before making any other DART executables +buildpreprocess + +# build DART +buildit + +# clean up +\rm -f -- *.o *.mod + +} + +main "$@"