Merge branch 'master' of ssh://opencfd@repo.or.cz/srv/git/OpenFOAM-1.5.x
[OpenFOAM-1.5.x.git] / bin / foamUpgradeTurbulenceProperties
blob8c1437aca6675224f53814c0e7cb2326e1c4e6c6
1 #!/bin/sh
2 #------------------------------------------------------------------------------
3 # ========= |
4 # \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
5 # \\ / O peration |
6 # \\ / A nd | Copyright (C) 1991-2008 OpenCFD Ltd.
7 # \\/ M anipulation |
8 #------------------------------------------------------------------------------
9 # License
10 # This file is part of OpenFOAM.
12 # OpenFOAM is free software; you can redistribute it and/or modify it
13 # under the terms of the GNU General Public License as published by the
14 # Free Software Foundation; either version 2 of the License, or (at your
15 # option) any later version.
17 # OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
18 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
19 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
20 # for more details.
22 # You should have received a copy of the GNU General Public License
23 # along with OpenFOAM; if not, write to the Free Software Foundation,
24 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
26 # Script
27 # foamUpgradeTurbulenceProperties
29 # Description
30 # Upgrade the turbulenceProperties dictionary to the new format employed
31 # in OpenFOAM version 1.5
32 # - RAS turbulence models now defined by the RASProperties dictionary,
33 # and RASModel keyword.
34 # - LES turbulence models now defined by the LESProperties dictionary,
35 # and LESModel keyword.
37 #------------------------------------------------------------------------------
39 usage() {
40 cat<<USAGE
42 usage: ${0##*/} <turbulenceProperties>
44 Where <turbulenceProperties> is the full path to the
45 turbulenceProperties dictionary
47 Note: can upgrade several files at once
49 USAGE
50 exit 1
54 # $1: turbulence model
55 # $2: new properties type
56 # $3: original dictionary
58 convertDict()
60 echo "Identified $1 turbulence model in '$3'"
61 outputPath=`dirname $3`
63 sed -e "s/turbulenceProperties/$1Properties/" \
64 -e "s/$2/$1Model/" \
65 -e "s/[a-zA-Z0-9]* [ ]*\[[0-9 ]*\]//" \
66 $3 > "$outputPath/$1Properties"
68 echo " wrote $outputPath/$1Properties"
71 [ $# -ge 1 ] || usage
73 for turbDict
75 # Identify type of turbulence model and convert
76 if [ -f $turbDict ]
77 then
78 if grep turbulenceModel $turbDict >/dev/null 2>&1
79 then
80 convertDict RAS turbulenceModel $turbDict
81 elif grep LESmodel $turbDict >/dev/null 2>&1
82 then
83 convertDict LES LESmodel $turbDict
84 else
85 echo "Unable to determine turbulence model type in '$turbDict'"
86 echo " - nothing changed"
88 else
89 echo "Error: file '$turbDict' does not exist"
91 done
93 #------------------------------------------------------------------------------