[Dart-dev] DART/branches Revision: 11724
dart at ucar.edu
dart at ucar.edu
Tue Jun 13 17:00:37 MDT 2017
nancy at ucar.edu
2017-06-13 17:00:36 -0600 (Tue, 13 Jun 2017)
163
am using PMO to test compiling model_mod.f90 (which still
doesn't quite compile). the mkmf didn't have an mpi vs non-mpi
option so i copied the one from cam-fv.
Modified: DART/branches/coamps/models/coamps_nest/work/mkmf_perfect_model_obs
===================================================================
--- DART/branches/coamps/models/coamps_nest/work/mkmf_perfect_model_obs 2017-06-13 22:49:25 UTC (rev 11723)
+++ DART/branches/coamps/models/coamps_nest/work/mkmf_perfect_model_obs 2017-06-13 23:00:36 UTC (rev 11724)
@@ -1,13 +1,69 @@
#!/bin/csh
#
-# DART software - Copyright 2004 - 2011 UCAR. This open source software is
-# provided by UCAR, "as is", without charge, subject to all terms of use at
+# 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
#
-# $Id$
+# DART $Id$
+#
+# usage: mkmf_perfect_model_obs [ -mpi | -nompi ]
+#
+# without any args, builds perfect_model_obs without mpi libraries, and it will run
+# as a normal executable. if -mpi is given, it will be compiled with the mpi
+# libraries and can run with multiple cooperating processes.
+if ( $#argv > 0 ) then
+ if ("$argv[1]" == "-mpi") then
+ setenv usingmpi 1
+ else if ("$argv[1]" == "-nompi") then
+ setenv usingmpi 0
+ else
+ echo "Unrecognized argument to mkmf_perfect_model_obs: $argv[1]"
+ echo "Usage: mkmf_perfect_model_obs [ -mpi | -nompi ]"
+ echo " default is to generate a Makefile without MPI support."
+ exit -1
+ endif
+else
+ setenv usingmpi 0
+endif
+
+
+# make a backup copy of the path_names file, and then use
+# sed to make sure it includes either the non-mpi subroutines,
+# or the subroutines which really call mpi.
+cp -f path_names_perfect_model_obs path_names_perfect_model_obs.back
+
+if ( $usingmpi ) then
+
+ echo "Making Makefile with MPI"
+ touch using_mpi_for_perfect_model_obs
+ sed -e 's#/null_mpi_util#/mpi_util#' \
+ -e 's#/null_win_mod#/no_cray_win_mod#' path_names_perfect_model_obs.back >! path_names_perfect_model_obs
+
+ setenv wrapper_arg -w
+
+else
+
+ echo "Making Makefile without MPI"
+ rm -f using_mpi_for_perfect_model_obs
+ sed -e 's#/mpi_util#/null_mpi_util#' \
+ -e '\#no_cray_win_mod.f90#d' \
+ -e '\#cray_win_mod.f90#d' path_names_perfect_model_obs.back >! path_names_perfect_model_obs
+
+ set p=`grep null_win_mod.f90 path_names_perfect_model_obs | wc -w`
+ if ( $p == 0) then
+ echo assimilation_code/modules/utilities/null_win_mod.f90 >> path_names_perfect_model_obs
+ endif
+
+ setenv wrapper_arg ""
+
+endif
+
+# remove temp file and now really call mkmf to generate makefile
+rm -f path_names_perfect_model_obs.back
+
../../../build_templates/mkmf -p perfect_model_obs -t ../../../build_templates/mkmf.template \
- -a "../../.." path_names_perfect_model_obs
+ -a "../../.." ${wrapper_arg} path_names_perfect_model_obs
exit $status
Modified: DART/branches/coamps/models/coamps_nest/work/path_names_perfect_model_obs
===================================================================
--- DART/branches/coamps/models/coamps_nest/work/path_names_perfect_model_obs 2017-06-13 22:49:25 UTC (rev 11723)
+++ DART/branches/coamps/models/coamps_nest/work/path_names_perfect_model_obs 2017-06-13 23:00:36 UTC (rev 11724)
@@ -1,32 +1,51 @@
+assimilation_code/location/threed_sphere/location_mod.f90
+assimilation_code/location/utilities/default_location_mod.f90
+assimilation_code/location/utilities/location_io_mod.f90
assimilation_code/modules/assimilation/adaptive_inflate_mod.f90
assimilation_code/modules/assimilation/assim_model_mod.f90
assimilation_code/modules/assimilation/assim_tools_mod.f90
-assimilation_code/modules/utilities/types_mod.f90
assimilation_code/modules/assimilation/cov_cutoff_mod.f90
+assimilation_code/modules/assimilation/filter_mod.f90
+assimilation_code/modules/assimilation/obs_model_mod.f90
+assimilation_code/modules/assimilation/quality_control_mod.f90
+assimilation_code/modules/assimilation/reg_factor_mod.f90
+assimilation_code/modules/assimilation/sampling_error_correction_mod.f90
+assimilation_code/modules/assimilation/smoother_mod.f90
+assimilation_code/modules/io/dart_time_io_mod.f90
+assimilation_code/modules/io/direct_netcdf_mod.f90
+assimilation_code/modules/io/io_filenames_mod.f90
More information about the Dart-dev
mailing list