diff --git a/models/mitgcm/combine-models.sh b/models/combine-models.sh
similarity index 76%
rename from models/mitgcm/combine-models.sh
rename to models/combine-models.sh
index 71b635eb919f57256d470e58c8ac45ccbd29ce94..f72bc001a4e12f1caf974048225e6839c4f83a18 100755
--- a/models/mitgcm/combine-models.sh
+++ b/models/combine-models.sh
@@ -1,8 +1,14 @@
 #!/bin/bash
 
+# Combine static and dynamic models originating from file level, map
+# level (directory) and two level modularization architecture recovery.
+#
+# Combind models can be produced for call based models, dataflow based
+# models and models which use class and dataflow together.
+
 export BASE_DIR=$(cd "$(dirname "$0")"; pwd)
 
-. "${BASE_DIR}/../common-functions.rc"
+. "${BASE_DIR}/common-functions.rc"
 
 if [ "$1" != "" ] ; then
         export EXPERIMENT_NAME="$1"
@@ -11,25 +17,20 @@ else
         exit 1
 fi
 
-if [ -f "${BASE_DIR}/../config" ] ; then
-        . "${BASE_DIR}/../config"
+if [ -f "${BASE_DIR}/config" ] ; then
+        . "${BASE_DIR}/config"
 else
         echo "Main config file not found."
         exit 1
 fi
-if [ -f "$BASE_DIR/config" ] ; then
-        . $BASE_DIR/config
-else
-        echo "Config file not found."
-        exit 1
-fi
 
-checkMode "$2"
+# set mode call, dataflow or both
+checkMode "$3"
 
 export JAVA_OPTS="-Dlogback.configurationFile=${BASE_DIR}/../logback.xml"
 
 # variables
-export MODEL_DATA_PATH="${DATA_PATH}/mitgcm/${EXPERIMENT_NAME}"
+export MODEL_DATA_PATH="${DATA_PATH}/$MODEL/${EXPERIMENT_NAME}"
 
 STATIC_FILE_MODEL="${MODEL_DATA_PATH}/static-plain-$MODE-file"
 STATIC_MAP_MODEL="${MODEL_DATA_PATH}/static-plain-$MODE-map"
@@ -87,12 +88,12 @@ checkDirectory "Combined iface 2-level model" "${IFACE_COMBINED_2_LEVEL_MODEL}"
 
 # run
 information "Combine models"
-"${MOP}" -i "${DYNAMIC_FILE_MODEL}" "${STATIC_FILE_MODEL}" -o "${COMBINED_FILE_MODEL}" -e "$EXPERIMENT_NAME-combined-plain-$MODE-file" merge
-"${MOP}" -i "${DYNAMIC_MAP_MODEL}" "${STATIC_MAP_MODEL}" -o "${COMBINED_MAP_MODEL}" -e "$EXPERIMENT_NAME-combined-plain-$MODE-map" merge
-"${MOP}" -i "${DYNAMIC_2_LEVEL_MODEL}" "${STATIC_2_LEVEL_MODEL}" -o "${COMBINED_2_LEVEL_MODEL}" -e "$EXPERIMENT_NAME-combined-plain-$MODE-2-level" merge
+"${MOP}" -i "${DYNAMIC_FILE_MODEL}" "${STATIC_FILE_MODEL}" -o "${COMBINED_FILE_MODEL}" -e "${EXPERIMENT_NAME}-combined-plain-$MODE-file" merge
+"${MOP}" -i "${DYNAMIC_MAP_MODEL}" "${STATIC_MAP_MODEL}" -o "${COMBINED_MAP_MODEL}" -e "${EXPERIMENT_NAME}-combined-plain-$MODE-map" merge
+"${MOP}" -i "${DYNAMIC_2_LEVEL_MODEL}" "${STATIC_2_LEVEL_MODEL}" -o "${COMBINED_2_LEVEL_MODEL}" -e "${EXPERIMENT_NAME}-combined-plain-$MODE-2-level" merge
 
-"${MOP}" -i "${IFACE_DYNAMIC_FILE_MODEL}" "${IFACE_STATIC_FILE_MODEL}" -o "${IFACE_COMBINED_FILE_MODEL}" -e "$EXPERIMENT_NAME-combined-iface-$MODE-file" merge
-"${MOP}" -i "${IFACE_DYNAMIC_MAP_MODEL}" "${IFACE_STATIC_MAP_MODEL}" -o "${IFACE_COMBINED_MAP_MODEL}" -e "$EXPERIMENT_NAME-combined-iface-$MODE-map" merge
-"${MOP}" -i "${IFACE_DYNAMIC_2_LEVEL_MODEL}" "${IFACE_STATIC_2_LEVEL_MODEL}" -o "${IFACE_COMBINED_2_LEVEL_MODEL}" -e "$EXPERIMENT_NAME-combined-iface-$MODE-2-level" merge
+"${MOP}" -i "${IFACE_DYNAMIC_FILE_MODEL}" "${IFACE_STATIC_FILE_MODEL}" -o "${IFACE_COMBINED_FILE_MODEL}" -e "${EXPERIMENT_NAME}-combined-iface-$MODE-file" merge
+"${MOP}" -i "${IFACE_DYNAMIC_MAP_MODEL}" "${IFACE_STATIC_MAP_MODEL}" -o "${IFACE_COMBINED_MAP_MODEL}" -e "${EXPERIMENT_NAME}-combined-iface-$MODE-map" merge
+"${MOP}" -i "${IFACE_DYNAMIC_2_LEVEL_MODEL}" "${IFACE_STATIC_2_LEVEL_MODEL}" -o "${IFACE_COMBINED_2_LEVEL_MODEL}" -e "${EXPERIMENT_NAME}-combined-iface-$MODE-2-level" merge
 
 # end
diff --git a/models/mitgcm/compare-models.sh b/models/mitgcm/compare-models.sh
index 9c3a7c7602cee00b3eca7e1749ea835c7c364872..b484f660c8ab207d8dd5250fed42a812adfc3cfc 100755
--- a/models/mitgcm/compare-models.sh
+++ b/models/mitgcm/compare-models.sh
@@ -1,5 +1,7 @@
 #!/bin/bash
 
+# compare original models with optimized models.
+
 export BASE_DIR=$(cd "$(dirname "$0")"; pwd)
 
 . "${BASE_DIR}/../common-functions.rc"
diff --git a/models/mitgcm/compute-statistics.sh b/models/mitgcm/compute-statistics.sh
index 7b883828467880daf6b8f1356996518c6b3d7eb9..eaba21357f8d7214285c794a25d9e2a9c2286d2c 100755
--- a/models/mitgcm/compute-statistics.sh
+++ b/models/mitgcm/compute-statistics.sh
@@ -1,5 +1,7 @@
 #!/bin/bash
 
+# Compute statistics for various models.
+
 export BASE_DIR=$(cd "$(dirname "$0")"; pwd)
 
 . "${BASE_DIR}/../common-functions.rc"
diff --git a/models/uvic/combine-models.sh b/models/uvic/combine-models.sh
deleted file mode 100755
index 21c8056632652862b8deb878575de8f3e3fc0ac0..0000000000000000000000000000000000000000
--- a/models/uvic/combine-models.sh
+++ /dev/null
@@ -1,98 +0,0 @@
-#!/bin/bash
-
-export BASE_DIR=$(cd "$(dirname "$0")"; pwd)
-
-. "${BASE_DIR}/../common-functions.rc"
-
-if [ "$1" != "" ] ; then
-        export EXPERIMENT_NAME="$1"
-else
-        echo "Missing experiment name"
-        exit 1
-fi
-
-if [ -f "${BASE_DIR}/../config" ] ; then
-        . "${BASE_DIR}/../config"
-else
-        echo "Main config file not found."
-        exit 1
-fi
-if [ -f "$BASE_DIR/config" ] ; then
-        . $BASE_DIR/config
-else
-        echo "Config file not found."
-        exit 1
-fi
-
-checkMode "$2"
-
-export JAVA_OPTS="-Dlogback.configurationFile=${BASE_DIR}/../logback.xml"
-
-# variables
-export MODEL_DATA_PATH="${DATA_PATH}/uvic"
-
-STATIC_FILE_MODEL="${MODEL_DATA_PATH}/static-plain-$MODE-file"
-STATIC_MAP_MODEL="${MODEL_DATA_PATH}/static-plain-$MODE-map"
-STATIC_2_LEVEL_MODEL="${MODEL_DATA_PATH}/static-plain-$MODE-2-level"
-
-IFACE_STATIC_FILE_MODEL="${MODEL_DATA_PATH}/static-iface-$MODE-file"
-IFACE_STATIC_MAP_MODEL="${MODEL_DATA_PATH}/static-iface-$MODE-map"
-IFACE_STATIC_2_LEVEL_MODEL="${MODEL_DATA_PATH}/static-iface-$MODE-2-level"
-
-DYNAMIC_FILE_MODEL="${MODEL_DATA_PATH}/dynamic-plain-file"
-DYNAMIC_MAP_MODEL="${MODEL_DATA_PATH}/dynamic-plain-map"
-DYNAMIC_2_LEVEL_MODEL="${MODEL_DATA_PATH}/dynamic-plain-2-level"
-
-IFACE_DYNAMIC_FILE_MODEL="${MODEL_DATA_PATH}/dynamic-iface-file"
-IFACE_DYNAMIC_MAP_MODEL="${MODEL_DATA_PATH}/dynamic-iface-map"
-IFACE_DYNAMIC_2_LEVEL_MODEL="${MODEL_DATA_PATH}/dynamic-iface-2-level"
-
-COMBINED_FILE_MODEL="${MODEL_DATA_PATH}/combined-plain-$MODE-file"
-COMBINED_MAP_MODEL="${MODEL_DATA_PATH}/combined-plain-$MODE-map"
-COMBINED_2_LEVEL_MODEL="${MODEL_DATA_PATH}/combined-plain-$MODE-2-level"
-
-IFACE_COMBINED_FILE_MODEL="${MODEL_DATA_PATH}/combined-iface-$MODE-file"
-IFACE_COMBINED_MAP_MODEL="${MODEL_DATA_PATH}/combined-iface-$MODE-map"
-IFACE_COMBINED_2_LEVEL_MODEL="${MODEL_DATA_PATH}/combined-iface-$MODE-2-level"
-
-# check tools
-checkExecutable "Model operations" "${MOP}"
-
-# check inputs
-checkDirectory "Static file model" "${STATIC_FILE_MODEL}"
-checkDirectory "Static map model" "${STATIC_MAP_MODEL}"
-checkDirectory "Static 2-level model" "${STATIC_2_LEVEL_MODEL}"
-
-checkDirectory "Static iface file model" "${IFACE_STATIC_FILE_MODEL}"
-checkDirectory "Static iface map model" "${IFACE_STATIC_MAP_MODEL}"
-checkDirectory "Static iface 2-level model" "${IFACE_STATIC_2_LEVEL_MODEL}"
-
-checkDirectory "Dynamic file model" "${DYNAMIC_FILE_MODEL}"
-checkDirectory "Dynamic map model" "${DYNAMIC_MAP_MODEL}"
-checkDirectory "Dynamic 2-level model" "${DYNAMIC_2_LEVEL_MODEL}"
-
-checkDirectory "Dynamic iface file model" "${IFACE_DYNAMIC_FILE_MODEL}"
-checkDirectory "Dynamic iface map model" "${IFACE_DYNAMIC_MAP_MODEL}"
-checkDirectory "Dynamic iface 2-level model" "${IFACE_DYNAMIC_2_LEVEL_MODEL}"
-
-# check outputs
-
-checkDirectory "Combined file model" "${COMBINED_FILE_MODEL}" recreate
-checkDirectory "Combined map model" "${COMBINED_MAP_MODEL}" recreate
-checkDirectory "Combined 2-level model" "${COMBINED_2_LEVEL_MODEL}" recreate
-
-checkDirectory "Combined iface file model" "${IFACE_COMBINED_FILE_MODEL}" recreate
-checkDirectory "Combined iface map model" "${IFACE_COMBINED_MAP_MODEL}" recreate
-checkDirectory "Combined iface 2-level model" "${IFACE_COMBINED_2_LEVEL_MODEL}" recreate
-
-# run
-information "Combine models"
-"${MOP}" -i "${DYNAMIC_FILE_MODEL}" "${STATIC_FILE_MODEL}" -o "${COMBINED_FILE_MODEL}" -e "$EXPERIMENT_NAME-combined-plain-$MODE-file" merge
-"${MOP}" -i "${DYNAMIC_MAP_MODEL}" "${STATIC_MAP_MODEL}" -o "${COMBINED_MAP_MODEL}" -e "$EXPERIMENT_NAME-combined-plain-$MODE-map" merge
-"${MOP}" -i "${DYNAMIC_2_LEVEL_MODEL}" "${STATIC_2_LEVEL_MODEL}" -o "${COMBINED_2_LEVEL_MODEL}" -e "$EXPERIMENT_NAME-combined-plain-$MODE-2-level" merge
-
-"${MOP}" -i "${IFACE_DYNAMIC_FILE_MODEL}" "${IFACE_STATIC_FILE_MODEL}" -o "${IFACE_COMBINED_FILE_MODEL}" -e "$EXPERIMENT_NAME-combined-iface-$MODE-file" merge
-"${MOP}" -i "${IFACE_DYNAMIC_MAP_MODEL}" "${IFACE_STATIC_MAP_MODEL}" -o "${IFACE_COMBINED_MAP_MODEL}" -e "$EXPERIMENT_NAME-combined-iface-$MODE-map" merge
-"${MOP}" -i "${IFACE_DYNAMIC_2_LEVEL_MODEL}" "${IFACE_STATIC_2_LEVEL_MODEL}" -o "${IFACE_COMBINED_2_LEVEL_MODEL}" -e "$EXPERIMENT_NAME-combined-iface-$MODE-2-level" merge
-
-# end