From ec4ed96af5af1be7479e36d7bed48f0ba32fb284 Mon Sep 17 00:00:00 2001
From: Ignacio Pisso <Ignacio.Pisso@nilu.no>
Date: Fri, 24 Aug 2018 18:39:31 +0200
Subject: [PATCH] much more clear with gen_options.sh and define_options_*.sh

---
 define_options_2C_bwd.sh   | 20 ++++++++++++++++++++
 define_options_default.sh  |  3 +++
 define_options_ind.sh      | 25 +++++++++++++++++++++++++
 define_options_ind_copy.sh | 24 ++++++++++++++++++++++++
 gen_options.sh             | 17 +++++++++++++++++
 5 files changed, 89 insertions(+)
 create mode 100644 define_options_2C_bwd.sh
 create mode 100644 define_options_default.sh
 create mode 100644 define_options_ind.sh
 create mode 100644 define_options_ind_copy.sh
 create mode 100755 gen_options.sh

diff --git a/define_options_2C_bwd.sh b/define_options_2C_bwd.sh
new file mode 100644
index 0000000..b417d87
--- /dev/null
+++ b/define_options_2C_bwd.sh
@@ -0,0 +1,20 @@
+suffix=_bwd
+options_new=options$suffix
+cp -r  $options_template  $options_new
+sed -i '/LDIRECT=/c\ LDIRECT=    -1,' $options_new/COMMAND
+sed -i '/IOUTPUTFOREACHRELEASE=/c\ IOUTPUTFOREACHRELEASE=    1,' $options_new/COMMAND
+sed -i '/IOUT=/c\ IOUT=    1,' $options_new/COMMAND #should not be needed
+
+suffix=_bwd5
+options_new=options$suffix
+cp -r  $options_template  $options_new
+sed -i '/LDIRECT=/c\ LDIRECT=    -1,' $options_new/COMMAND
+sed -i '/IOUTPUTFOREACHRELEASE=/c\ IOUTPUTFOREACHRELEASE=    1,' $options_new/COMMAND
+sed -i '/IOUT=/c\ IOUT=    5,' $options_new/COMMAND
+
+suffix=_bwd_nc
+options_new=options$suffix
+cp -r   $options_template  $options_new
+sed -i '/LDIRECT=/c\ LDIRECT=    -1,' $options_new/COMMAND
+sed -i '/IOUTPUTFOREACHRELEASE=/c\ IOUTPUTFOREACHRELEASE=    1,' $options_new/COMMAND
+sed -i '/IOUT=/c\ IOUT=    9,' $options_new/COMMAND
diff --git a/define_options_default.sh b/define_options_default.sh
new file mode 100644
index 0000000..48006bc
--- /dev/null
+++ b/define_options_default.sh
@@ -0,0 +1,3 @@
+suffix=
+options_new=options$suffix
+cp -r  $options_template  $options_new
diff --git a/define_options_ind.sh b/define_options_ind.sh
new file mode 100644
index 0000000..181df6a
--- /dev/null
+++ b/define_options_ind.sh
@@ -0,0 +1,25 @@
+# gen_options.sh defines options_template
+
+#E: unit indices
+## forward 
+
+#E1: ind 1 2 
+suffix=_ind_1_2
+options_new=options$suffix
+cp -r  $options_template  $options_new
+sed -i '/IND_RECEPTOR=/c\ IND_RECEPTOR= 2,' $options_new/COMMAND
+
+#E2: ind 2 1  
+suffix=_ind_2_1
+options_new=options$suffix
+cp -r  $options_template  $options_new
+sed -i "/IND_SOURCE=/c\ IND_SOURCE= 2," $options_new/COMMAND
+
+
+#E3: ind 2 2
+suffix=_ind_2_2
+options_new=options$suffix
+cp -r  $options_template  $options_new
+sed -i "/IND_SOURCE=/c\ IND_SOURCE=    2," $options_new/COMMAND
+sed -i "/IND_RECEPTOR=/c\ IND_RECEPTOR=    2," $options_new/COMMAND
+
diff --git a/define_options_ind_copy.sh b/define_options_ind_copy.sh
new file mode 100644
index 0000000..ef0f35f
--- /dev/null
+++ b/define_options_ind_copy.sh
@@ -0,0 +1,24 @@
+
+#E: unit indices
+## forward 
+
+#E1: ind 1 2 
+suffix=_ind_1_2
+options_new=options$suffix
+cp -r  options $options_new
+sed -i '/IND_RECEPTOR=/c\ IND_RECEPTOR= 2,' $options_new/COMMAND
+
+#E2: ind 2 1  
+suffix=_ind_2_1
+options_new=options$suffix
+cp -r  options $options_new
+sed -i "/IND_SOURCE=/c\ IND_SOURCE= 2," $options_new/COMMAND
+
+
+#E3: ind 2 2
+suffix=_ind_2_2
+options_new=options$suffix
+cp -r  options $options_new
+sed -i "/IND_SOURCE=/c\ IND_SOURCE=    2," $options_new/COMMAND
+sed -i "/IND_RECEPTOR=/c\ IND_RECEPTOR=    2," $options_new/COMMAND
+
diff --git a/gen_options.sh b/gen_options.sh
new file mode 100755
index 0000000..9806763
--- /dev/null
+++ b/gen_options.sh
@@ -0,0 +1,17 @@
+#!/bin/bash
+# runs the definitions $define_options with template $options_template
+# options_template is a working options dir, by default from the repo HEAD
+# $define_options must contain a suffix (empty for default) and sed substitutions
+
+define_options_default=define_options_default.sh
+#define_options=${1:-$define_options_default}
+define_options=${1:-$define_options_default}
+
+
+#template is in 1 or defalt here
+options_template_default=~/repos/flexpart/options
+options_template=${2:-$options_template_default}
+
+#define options contains $options_template 
+source $define_options
+
-- 
GitLab