source: palm/trunk/UTIL/chemistry/gasphase_preproc/run_kpp4palm.ksh @ 3298

Last change on this file since 3298 was 3298, checked in by kanani, 3 years ago

Merge chemistry branch at r3297 to trunk

  • Property svn:executable set to *
  • Property svn:keywords set to Id
File size: 4.2 KB
Line 
1#!/bin/ksh
2#
3# run_kpp4palm - script for running gasphase preprocessor
4
5#------------------------------------------------------------------------------#
6# This file is part of the PALM model system.
7#
8# PALM is free software: you can redistribute it and/or modify it under the terms
9# of the GNU General Public License as published by the Free Software Foundation,
10# either version 3 of the License, or (at your option) any later version.
11#
12# PALM is distributed in the hope that it will be useful, but WITHOUT ANY
13# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
14# A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
15#
16# You should have received a copy of the GNU General Public License along with
17# PALM. If not, see <http://www.gnu.org/licenses/>.
18#
19# Copyright 2017-2018  Klaus Ketelsen and MPI-CH (April 2007)
20# Copyright 2017-2018  Karlsruhe Institute of Technology
21# Copyright 2017-2018  Leibniz Universitaet Hannover
22#------------------------------------------------------------------------------#
23#
24# Current revisions:
25# ------------------
26#
27#
28# Former revisions:
29# -----------------
30# $Id: run_kpp4palm.ksh 3298 2018-10-02 12:21:11Z kanani $
31#  passed $MECH insted of $DEFDIR to kpp4palm.ksh                   forkel  25. Sept. 2018
32#  re-activaded  choice of deindexing method and vector mode        forkel  June 2018
33#
34# 2718 2018-01-02 08:49:38Z maronga
35# Initial revision
36#
37#
38#
39#
40# Other notes:
41# ------------
42# Small adaptations (added MECH as argument, re-introduced relative path,
43#                    adaption to changing kp4 to kpp4palm)
44# filename changed from run_kp4.ksh to run_kpp4palm.ksh
45#
46# Nov. 2016: Initial Version of KPP chemistry by Klaus Ketelsen
47#
48
49echo "\$1 = " $1 
50
51if [[ $1 == "clean" ]]
52then
53  cd kpp
54  make distclean
55  cd ..
56
57  cd kpp4palm
58  make distclean                 
59  cd ..
60  exit
61fi
62
63export PATH=$PATH:`pwd`/kpp4palm/bin
64
65# build kpp
66
67cp mechanisms/UserRateLaws.f90 kpp/util
68cd kpp
69make
70cd ..
71
72# build kpp4palm.exe
73
74cd kpp4palm
75make install                   
76cd ..
77
78# run kpp4palm/bin/kpp4palm.ksh with the following Setup
79#    -d   DEFDIR=$OPTARG;;          # directory of definition files
80#                                     (passed as `pwd`/mechanisms/def_$MECH)
81#    -m   MECH="smog";;             # chemical mechanism
82#                                     (smog, simple, simplep, cbm4, phstat, passive, passive1)
83#    -i   DE_INDEX=2;;              # deindexing method (0,1,2,3; 0=no deindexing)
84#    -v   MODE="-v";;               # vector mode on (not working completely yet)
85#    -l   VLEN=$OPTARG;;            # Set vector length (not working completely yet)
86#    -k   KEEP="NO";;               # if "yes" keep Working directory
87#    -u   UPDT="NO";;               # if "yes" update the existing f90 code in the def_MECH directory
88#                                   # Use "YES" with care as the existing sample file is overwritten
89#
90##   Further options (not passed as changing does not make sense to change these)
91##    -f   DE_INDEX_FAST="YES";;     # if set, fast deindexing
92##    -o   OUTDIR=$OPTARG;;          # Output directory of Generated Code
93##                                     (`pwd`/../../../SOURCE)
94##    -p   PREFIX=$OPTARG;;          # Name Prefix (chem_gasphase_mod)
95##    -s   KPP_SOLVER=$OPTARG;;      # Name Prefix (rosenbrock)
96
97 
98echo $PATH
99# use smog mechnism as default
100MECH=smog
101DEIN=2
102
103while  getopts m:i:kuvl:  opt   # get options
104do case $opt in
105      m)   MECH=$OPTARG;;          # mechanism name as part of mechanisms/def_[mechanism_name]
106
107      i)   DEIN=$OPTARG;;          # deindexing method (0,1,2,3; 0=no deindexing)
108
109      k)   KEEP="-k";;             # keep Working directory
110
111      u)   UPDT="-u";;             # update sample output file
112
113      v)   MODE="-v";;             # vector mode on
114
115      c)   COPY="-c";;             # copy output to def_MECH
116
117      l)   VLEN=$OPTARG;;          # Set vector length
118
119      \?)  print ${0##*/} "unknown option:" $OPTARG
120           print "USAGE: ${0##*/} [ -m mechanism_name] [ -i n (n=0,1,2,3)] [ -k] [ -u] [ -v] [ -l N (N=vector length)]"
121           exit 1;;
122   esac
123done
124echo Now do kpp4palm for $MECH
125
126# kpp4palm.ksh -d `pwd`/mechanisms/def_$MECH -i $DEIN $KEEP $UPDT $MODE -l $VLEN
127kpp4palm.ksh -m $MECH -i $DEIN $KEEP $UPDT $MODE -l $VLEN
Note: See TracBrowser for help on using the repository browser.