/[MITgcm]/MITgcm_contrib/mitgcm_tools/loadconfig.m
ViewVC logotype

Contents of /MITgcm_contrib/mitgcm_tools/loadconfig.m

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.2 - (show annotations) (download)
Thu Jun 3 17:06:28 2004 UTC (19 years, 10 months ago) by adcroft
Branch: MAIN
CVS Tags: HEAD
Changes since 1.1: +1 -1 lines
M6.5 compatibility issue

1 function [CONFIG] = loadconfig(varargin)
2 %loadconfig()
3 %loadconfig(DIRECTORY)
4 %
5 %Reads MITgcm parameter input files ("data") to create a CONFIG structure
6 %If DIRECTORY is not specified the current working directory is used.
7 %
8 %e.g.
9 % >> CONFIG=loadconfig;
10 % >> CONFIG2=loadconfig('/scratch/john/run2/');
11 %
12 %Written by adcroft@mit.edu, 2002
13 %$Header:
14
15 if nargin==0
16 Dir='./';
17 elseif nargin==1
18 Dir=[varargin{1} '/'];
19 else
20 error('I don''t know what to do with the second argument');
21 end
22
23 % Extract names of forcing files from "data" file
24 datafile=[Dir 'data'];
25
26 fid=fopen(datafile,'r');
27 if fid==-1
28 error(['Could not open file:' datafile ' for reading']);
29 end
30
31 CONFIG.tinitfile=grepparameter(datafile,'hydrogthetafile');
32 CONFIG.sinitfile=grepparameter(datafile,'hydrogsaltfile');
33 CONFIG.sstfile=grepparameter(datafile,'thetaclimfile');
34 CONFIG.sssfile=grepparameter(datafile,'saltclimfile');
35 CONFIG.tauxfile=grepparameter(datafile,'zonalwindfile');
36 CONFIG.tauyfile=grepparameter(datafile,'meridwindfile');
37 CONFIG.qfile=grepparameter(datafile,'surfqfile');
38 CONFIG.empmrfile=grepparameter(datafile,'empmrfile');
39
40 CONFIG.dt=grepparameter(datafile,'deltat');
41 CONFIG.tau_cd=grepparameter(datafile,'taucd');
42 CONFIG.tau_t=grepparameter(datafile,'tauthetaclimrelax');
43 CONFIG.tau_s=grepparameter(datafile,'tausaltclimrelax');
44
45 CONFIG.diffkh=grepparameter(datafile,'diffkh');
46 CONFIG.viscar=grepparameter(datafile,'visca[rz]');
47 CONFIG.viscah=grepparameter(datafile,'viscah');
48 CONFIG.visca4=grepparameter(datafile,'visca4');
49 CONFIG.diffkht=grepparameter(datafile,'diffkht');
50 CONFIG.diffk4t=grepparameter(datafile,'diffk4t');
51 CONFIG.diffkrt=grepparameter(datafile,'diffk[rz]t');
52 CONFIG.diffkhs=grepparameter(datafile,'diffkhs');
53 CONFIG.diffk4s=grepparameter(datafile,'diffk4s');
54 CONFIG.diffkrs=grepparameter(datafile,'diffk[rz]s');
55
56 CONFIG.rhonil=grepparameter(datafile,'rhonil');
57 if isempty(CONFIG.rhonil); CONFIG.rhonil=1000; end
58
59 CONFIG.hfacmin=grepparameter(datafile,'hfacmin');
60 CONFIG.hfacmindr=grepparameter(datafile,'hfacmind[rz]');
61
62 CONFIG.usegmredi=grepparameter([datafile '.pkg'],'usegmredi');
63 CONFIG.useptracers=grepparameter([datafile '.pkg'],'useptracers');
64 CONFIG.usekpp=grepparameter([datafile '.pkg'],'usekpp');
65
66 if ( ~isempty(CONFIG.usegmredi) & CONFIG.usegmredi=='true')
67 CONFIG.background_k=grepparameter([datafile '.gmredi'],'gm_background_k');
68 CONFIG.taper_scheme=grepparameter([datafile '.gmredi'],'gm_taper_scheme');
69 CONFIG.maxslope=grepparameter([datafile '.gmredi'],'gm_maxslope');
70 CONFIG.kmin_horiz=grepparameter([datafile '.gmredi'],'gm_kmin_horiz');
71 end

  ViewVC Help
Powered by ViewVC 1.1.22