/[MITgcm]/MITgcm_contrib/gael/matlab_class/gcmfaces_demo.m
ViewVC logotype

Diff of /MITgcm_contrib/gael/matlab_class/gcmfaces_demo.m

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

revision 1.3 by gforget, Thu Oct 20 20:56:24 2011 UTC revision 1.19 by gforget, Fri Mar 17 17:47:08 2017 UTC
# Line 1  Line 1 
1    function []=gcmfaces_demo();
2    % GCMFACES_DEMO demonstrate capabilities of the gcmfaces toolbox.
3    %
4    %expected directory structure:
5    %
6    %  gcmfaces     (codes)
7    %  MITprof      (codes)
8    %  nctiles_grid (ECCO v4 grid)
9    %  release1     (ECCO v4 output)
10    %  sample_input (additional demo material)
11    %
12    %the ECCO v4 grid can be obtained as follows:
13    %
14    %  wget --recursive ftp://mit.ecco-group.org/ecco_for_las/version_4/release1/nctiles_grid
15    %  mv mit.ecco-group.org/ecco_for_las/version_4/release1/nctiles_grid .
16    %  rm -rf mit.ecco-group.org
17    %
18    %to activate example_transports:
19    %
20    %  mkdir release1
21    %  wget --recursive ftp://mit.ecco-group.org/ecco_for_las/version_4/release1/nctiles_climatology
22    %  mv mit.ecco-group.org/ecco_for_las/version_4/release1/nctiles_climatology release1/.
23    %  rm -rf mit.ecco-group.org
24    %
25    %to activate example_MITprof:
26    %
27    %  mkdir release2_climatology
28    %  wget --recursive ftp://mit.ecco-group.org/ecco_for_las/version_4/release2/nctiles_climatology
29    %  mv mit.ecco-group.org/ecco_for_las/version_4/release1/nctiles_climatology release2_climatology/.
30    %  wget --recursive ftp://mit.ecco-group.org/ecco_for_las/version_4/release2/profiles
31    %  mv mit.ecco-group.org/ecco_for_las/version_4/release1/profiles release2_climatology/.
32    %  rm -rf mit.ecco-group.org
33    %
34    %to activate example_budget:
35    %
36    %  mkdir sample_input
37    %  wget --recursive ftp://mit.ecco-group.org/gforget/nctiles_budget_2d
38    %  mv mit.ecco-group.org/gforget/nctiles_budget_2d sample_input/.
39    %  rm -rf mit.ecco-group.org
40    %
41    % call sequence:
42    %  addpath gcmfaces;
43    %  addpath MITprof;
44    %  gcmfaces_demo;
45    
46  %choose grid for test  %choose verbose level
 fprintf('\n Please set the demo grid : \n');  
 fprintf('    ''llc'': lat-lon-cap grid (5 faces). \n');  
 fprintf('    ''ll'' : simple lat-lon grid (1 face). \n');  
 choiceGrid=input(' and type return. ''llc'' is the default.\n');  
 if isempty(choiceGrid); choiceGrid='llc'; end;  
 if strcmp(choiceGrid,'llc'); choiceGrid='v4';  
 elseif strcmp(choiceGrid,'ll'); choiceGrid='v3';  
 else; error('wrong grid choice');  
 end;  
   
 %choose verbise level  
47  fprintf('\n Please set the amount of explanatory text display :\n');  fprintf('\n Please set the amount of explanatory text display :\n');
48  fprintf('    0: none.\n');  fprintf('    0: none.\n');
49  fprintf('    1: comments.\n');  fprintf('    1: comments.\n');
# Line 19  fprintf('    3: same as 2, but preceeded Line 52  fprintf('    3: same as 2, but preceeded
52  verbose=input(' and/or type return. 0 is the default. \n');  verbose=input(' and/or type return. 0 is the default. \n');
53  if isempty(verbose); verbose=0; end;  if isempty(verbose); verbose=0; end;
54    
55  %initialize environment variables and mygrid  fprintf('\n');
56  gcmfaces_global;  
57  myenv.verbose=verbose;  %so that gcmfaces_msg will work even before calling gcmfaces_global:
58    tmp1=which('gcmfaces_demo');
59    [PATH,NAME,EXT] = fileparts(tmp1);
60    addpath([PATH filesep 'gcmfaces_misc' filesep]);
61    global myenv;
62    myenv.issueWarnings=0;%skip warnings
63    myenv.verbose=verbose;%apply verbose level selected by user
64    %
65    fprintf('\n\n');
66    gcmfaces_msg('/////////////////////////////////////');
67    gcmfaces_msg('demo of gcmfaces_global and MITprof_global','// PART 0 :');
68    gcmfaces_msg('/////////////////////////////////////');
69    if myenv.verbose>0; gcmfaces_msg('please hit return','// >> '); pause; end;
70    fprintf('\n\n');
71  if myenv.verbose>0;  if myenv.verbose>0;
72      gcmfaces_msg('* set path and environment variables (myenv) by calling gcmfaces_global');      gcmfaces_msg(['* gcmfaces_global: adds gcmfaces directories to path' ...
73                     ' and define environment variables (see myenv)']);
74    end;
75    myenv=[];
76    gcmfaces_global;%this will display warning
77    myenv.issueWarnings=0;%skip warnings
78    myenv.verbose=verbose;%apply verbose level selected by user
79    if myenv.verbose>0;
80        gcmfaces_msg('* (this warning gets resolved below by calling grid_load)');
81  end;  end;
82    
83  basic_diags_compute_v3_or_v4(choiceGrid);  %if ~isempty(which('MITprof_global'));
84  basic_diags_display_v3_or_v4(choiceGrid);  %    MITprof_global;
85    %    if myenv.verbose>0;
86  example_bin_average(choiceGrid,1);%incl. call to example_smooth.m;  %        gcmfaces_msg('* MITprof_global: adds MITprof directories to path');
87  example_griddata(choiceGrid);  %    end;
88  example_interp(choiceGrid);  %end;
89    
90  plot_one_field(choiceGrid,0);%%incl. call to m_map_gcmfaces;  fprintf('\n\n');
91    gcmfaces_msg('/////////////////////////////////////');
92    gcmfaces_msg('demo of grid_load','// PART 1 :');
93    gcmfaces_msg('/////////////////////////////////////');
94    if myenv.verbose>0; gcmfaces_msg('please hit return','// >> '); pause; end;
95    fprintf('\n\n');
96    grid_load;
97    
98    fprintf('\n\n');
99    gcmfaces_msg('/////////////////////////////////////');
100    gcmfaces_msg('demo of plotting routines','// PART 1 :');
101    gcmfaces_msg('/////////////////////////////////////');
102    if myenv.verbose>0; gcmfaces_msg('please hit return','// >> '); pause; end;
103    fprintf('\n\n');
104    example_display;
105    
106    fprintf('\n\n');
107    gcmfaces_msg('///////////////////////////////////////////');
108    gcmfaces_msg('demo of interpolation and remapping ','// PART 2 :');
109    gcmfaces_msg('///////////////////////////////////////////');
110    if myenv.verbose>0; gcmfaces_msg('please hit return','// >> '); pause; end;
111    fprintf('\n\n');
112    example_interp;
113    
114    fprintf('\n\n');
115    gcmfaces_msg('///////////////////////////////////////////');
116    gcmfaces_msg('demo of bin averaging data sample to grid','// PART 2 :');
117    gcmfaces_msg('///////////////////////////////////////////');
118    if myenv.verbose>0; gcmfaces_msg('please hit return','// >> '); pause; end;
119    fprintf('\n\n');
120    fld=example_bin_average;
121    
122    fprintf('\n\n');
123    gcmfaces_msg('///////////////////////////////////////////');
124    gcmfaces_msg('demo of smoothing through diffusion','// PART 2 :');
125    gcmfaces_msg('///////////////////////////////////////////');
126    if myenv.verbose>0; gcmfaces_msg('please hit return','// >> '); pause; end;
127    fprintf('\n\n');
128    example_smooth(fld);
129    
130    fprintf('\n\n');
131    gcmfaces_msg('/////////////////////////////////////////');
132    gcmfaces_msg('demo of transport computations','// PART 3 :');
133    gcmfaces_msg('/////////////////////////////////////////');
134    if myenv.verbose>0; gcmfaces_msg('please hit return','// >> '); pause; end;
135    fprintf('\n\n');
136    diags=example_transports;
137    
138    if ~isempty(diags);
139        fprintf('\n\n');
140        gcmfaces_msg('/////////////////////////////////////////');
141        gcmfaces_msg('demo of transport display','// PART 3 :');
142        gcmfaces_msg('/////////////////////////////////////////');
143        if myenv.verbose>0; gcmfaces_msg('please hit return','// >> '); pause; end;
144        fprintf('\n\n');
145        example_transports_disp(diags);
146    end;
147    
148    fprintf('\n\n');
149    gcmfaces_msg('/////////////////////////////////////////');
150    gcmfaces_msg('demo of budget computations','// PART 4 :');
151    gcmfaces_msg('/////////////////////////////////////////');
152    if myenv.verbose>0; gcmfaces_msg('please hit return','// >> '); pause; end;
153    fprintf('\n\n');
154    example_budget;
155    

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.19

  ViewVC Help
Powered by ViewVC 1.1.22