source: trunk/src/uvmat_doc/FUNCTIONS_DOC/calc_field.html @ 48

Last change on this file since 48 was 37, checked in by sommeria, 14 years ago

create_grid.fig ,
uvmat_doc and all the included files added

File size: 22.7 KB
Line 
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
2                "http://www.w3.org/TR/REC-html40/loose.dtd">
3<html>
4<head>
5  <title>Description of calc_field</title>
6  <meta name="keywords" content="calc_field">
7  <meta name="description" content="'calc_field': defines fields (velocity, vort, div...) from civx data and calculate them">
8  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
9  <meta name="generator" content="m2html &copy; 2003 Guillaume Flandin">
10  <meta name="robots" content="index, follow">
11  <link type="text/css" rel="stylesheet" href="../m2html.css">
12</head>
13<body>
14<a name="_top"></a>
15<div><a href="../index.html">Home</a> &gt;  <a href="index.html">.</a> &gt; calc_field.m</div>
16
17<!--<table width="100%"><tr><td align="left"><a href="../index.html"><img alt="<" border="0" src="../left.png">&nbsp;Master index</a></td>
18<td align="right"><a href="index.html">Index for .&nbsp;<img alt=">" border="0" src="../right.png"></a></td></tr></table>-->
19
20<h1>calc_field
21</h1>
22
23<h2><a name="_name"></a>PURPOSE <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2>
24<div class="box"><strong>'calc_field': defines fields (velocity, vort, div...) from civx data and calculate them</strong></div>
25
26<h2><a name="_synopsis"></a>SYNOPSIS <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2>
27<div class="box"><strong>function [DataOut,errormsg]=calc_field(FieldName,DataIn) </strong></div>
28
29<h2><a name="_description"></a>DESCRIPTION <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2>
30<div class="fragment"><pre class="comment">'calc_field': defines fields (velocity, vort, div...) from civx data and calculate them 
31---------------------------------------------------------------------</pre></div>
32
33<!-- crossreference -->
34<h2><a name="_cross"></a>CROSS-REFERENCE INFORMATION <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2>
35This function calls:
36<ul style="list-style-image:url(../matlabicon.gif)">
37</ul>
38This function is called by:
39<ul style="list-style-image:url(../matlabicon.gif)">
40<li><a href="series.html" class="code" title="function varargout = series(varargin)">series</a> 'series': master function associated to the GUI series.m for analysis field series</li><li><a href="sub_field.html" class="code" title="function SubData=sub_field(UvData,Field);">sub_field</a>        'sub_field': combines two input fields + mask for uvmat</li><li><a href="uvmat.html" class="code" title="function varargout = uvmat(varargin)">uvmat</a>        'uvmat': function associated with the GUI 'uvmat.fig' for images and data field visualization</li></ul>
41<!-- crossreference -->
42
43<h2><a name="_subfunctions"></a>SUBFUNCTIONS <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2>
44<ul style="list-style-image:url(../matlabicon.gif)">
45<li><a href="#_sub1" class="code">function [VarName,ValCell,Role,units_cell]=velocity(DataIn)</a></li><li><a href="#_sub2" class="code">function [VarName,ValCell,Role,units]=ima_cor(DataIn)</a></li><li><a href="#_sub3" class="code">function [VarName,ValCell,Role,units]=norm_vel(DataIn)</a></li><li><a href="#_sub4" class="code">function [VarName,ValCell,Role,units]=vort(DataIn)</a></li><li><a href="#_sub5" class="code">function [VarName,ValCell,Role,units]=div(DataIn)</a></li><li><a href="#_sub6" class="code">function [VarName,ValCell,Role,units]=strain(DataIn)</a></li><li><a href="#_sub7" class="code">function [VarName,ValCell,Role,units]=u(DataIn)</a></li><li><a href="#_sub8" class="code">function [VarName,ValCell,Role,units]=v(DataIn)</a></li><li><a href="#_sub9" class="code">function [VarName,ValCell,Role,units]=w(DataIn)</a></li><li><a href="#_sub10" class="code">function [VarName,ValCell,Role,units]=w_normal(DataIn)</a></li><li><a href="#_sub11" class="code">function [VarName,ValCell,Role,units]=error(DataIn)</a></li></ul>
46<h2><a name="_source"></a>SOURCE CODE <a href="#_top"><img alt="^" border="0" src="../up.png"></a></h2>
47<div class="fragment"><pre>0001 <span class="comment">%'calc_field': defines fields (velocity, vort, div...) from civx data and calculate them</span>
480002 <span class="comment">%---------------------------------------------------------------------</span>
490003
500004 <span class="comment">%</span>
510005 <span class="comment">% OUTPUT:</span>
520006 <span class="comment">% Scal: matlab vector representing the scalar values (length nbvec defined by var_read)</span>
530007             <span class="comment">% if no input , Scal=list of programmed scalar names (to put in menus)</span>
540008             <span class="comment">% if only the sclar name is put as input, vec_A=type of scalar, which can be:</span>
550009 <span class="comment">%                   'vel': scalar calculated solely from velocity components</span>
560010 <span class="comment">%                   'der': needs spatial derivatives</span>
570011 <span class="comment">%                   'var': the scalar name directly corresponds to a field name in the netcdf files</span>
580012 <span class="comment">% error: error flag</span>
590013             <span class="comment">% error = 0; OK</span>
600014             <span class="comment">% error = 1; the prescribed scalar cannot be read or calculated from available fields</span>
610015 <span class="comment">% INPUT:</span>
620016 <span class="comment">% ScalName: string representing the name of the scalar</span>
630017 <span class="comment">% DataIn: structure representing the field, as defined in check_field_srtructure.m</span>
640018
650019 <span class="comment">% FUNCTION related</span>
660020 <span class="comment">% varname_generator.m: determines the field names to read in the netcdf file, depending on the scalar</span>
670021
680022 <a name="_sub0" href="#_subfunctions" class="code">function [DataOut,errormsg]=calc_field(FieldName,DataIn)</a>
690023
700024 <span class="comment">%list of defined scalars to display in menus (in addition to 'ima_cor').</span>
710025 <span class="comment">% a type is associated to each scalar:</span>
720026 <span class="comment">%              'discrete': related to the individual velocity vectors, not interpolated by patch</span>
730027 <span class="comment">%              'vel': calculated from velocity components, continuous field (interpolated with velocity)</span>
740028 <span class="comment">%              'der': needs spatial derivatives</span>
750029 <span class="comment">%              'var': the scalar name corresponds to a field name in the netcdf files</span>
760030 <span class="comment">% a specific variable name for civ1 and civ2 fields are also associated, if</span>
770031 <span class="comment">% '' the scalar is calculated from other fields, as explicited below</span>
780032 <span class="comment">%list_scal={title, type, civ1 var name,civ2 var name}</span>
790033 list_field={<span class="string">'velocity'</span>;<span class="keyword">...</span><span class="comment">%image correlation corresponding to a vel vector</span>
800034             <span class="string">'ima_cor'</span>;<span class="keyword">...</span><span class="comment">%image correlation corresponding to a vel vector</span>
810035            <span class="string">'norm_vel'</span>;<span class="keyword">...</span><span class="comment">%norm of the velocity</span>
820036            <span class="string">'vort'</span>;<span class="keyword">...</span><span class="comment">%vorticity</span>
830037            <span class="string">'div'</span>;<span class="keyword">...</span><span class="comment">%divergence</span>
840038            <span class="string">'strain'</span>;<span class="keyword">...</span><span class="comment">%rate of strain</span>
850039            <span class="string">'u'</span>;<span class="keyword">...</span><span class="comment"> %u velocity component</span>
860040            <span class="string">'v'</span>;<span class="keyword">...</span><span class="comment"> %v velocity component</span>
870041            <span class="string">'w'</span>;<span class="keyword">...</span><span class="comment"> %w velocity component</span>
880042            <span class="string">'w_normal'</span>;<span class="keyword">...</span><span class="comment"> %w velocity component normal to the plane</span>
890043           <span class="string">'error'</span>}; <span class="comment">%error associated to a vector (for stereo or patch)</span>
900044 errormsg=[]; <span class="comment">%default error message</span>
910045 <span class="keyword">if</span> ~exist(<span class="string">'FieldName'</span>,<span class="string">'var'</span>)
920046     DataOut=list_field;<span class="comment">% gives the list of possible fields in the absence of input</span>
930047 <span class="keyword">else</span>
940048     <span class="keyword">if</span> ~exist(<span class="string">'DataIn'</span>,<span class="string">'var'</span>)
950049         DataIn=[];
960050     <span class="keyword">end</span>
970051     <span class="keyword">if</span> ischar(FieldName)
980052         FieldName={FieldName};
990053     <span class="keyword">end</span>
1000054     <span class="keyword">if</span> isfield(DataIn,<span class="string">'Z'</span>)&amp;&amp; isequal(size(DataIn.Z),size(DataIn.X))
1010055         nbcoord=3;
1020056     <span class="keyword">else</span>
1030057         nbcoord=2;
1040058     <span class="keyword">end</span>   
1050059     DataOut=DataIn; <span class="comment">%reporduce global attribute</span>
1060060     ListVarName={};
1070061     ValueList={};
1080062     RoleList={};
1090063     units_cell={};
1100064     <span class="keyword">for</span> ilist=1:length(FieldName) 
1110065         [VarName,Value,Role,units]=feval(FieldName{ilist},DataIn);<span class="comment">%calculate field with appropriate function named FieldName{ilist}</span>
1120066         ListVarName=[ListVarName VarName];
1130067         ValueList=[ValueList Value];
1140068         RoleList=[RoleList Role];
1150069         units_cell=[units_cell units];
1160070     <span class="keyword">end</span>   
1170071        <span class="comment">%erase previous data (except coordinates)</span>
1180072     <span class="keyword">for</span> ivar=nbcoord+1:length(DataOut.ListVarName)
1190073         VarName=DataOut.ListVarName{ivar};
1200074         DataOut=rmfield(DataOut,VarName);
1210075     <span class="keyword">end</span> 
1220076     DataOut.ListVarName=DataOut.ListVarName(1:nbcoord);
1230077     <span class="keyword">if</span> isfield(DataOut,<span class="string">'VarDimName'</span>)
1240078         DataOut.VarDimName=DataOut.VarDimName(1:nbcoord);
1250079     <span class="keyword">else</span>
1260080         errormsg=<span class="string">'element .VarDimName missing in input data'</span>;
1270081         <span class="keyword">return</span>
1280082     <span class="keyword">end</span>
1290083     DataOut.VarAttribute=DataOut.VarAttribute(1:nbcoord);
1300084     <span class="comment">%append new data</span>
1310085     DataOut.ListVarName=[DataOut.ListVarName ListVarName];
1320086     <span class="keyword">for</span> ivar=1:length(ListVarName)
1330087         DataOut.VarDimName{nbcoord+ivar}=DataOut.VarDimName{1};     
1340088         DataOut.VarAttribute{nbcoord+ivar}.Role=RoleList{ivar}; 
1350089         DataOut.VarAttribute{nbcoord+ivar}.units=units_cell{ivar};
1360090         eval([<span class="string">'DataOut.'</span> ListVarName{ivar} <span class="string">'=ValueList{ivar};'</span>])
1370091     <span class="keyword">end</span>
1380092 <span class="keyword">end</span>
1390093
1400094 <span class="comment">%%%%%%%%%%%%% velocity fieldn%%%%%%%%%%%%%%%%%%%%</span>
1410095 <a name="_sub1" href="#_subfunctions" class="code">function [VarName,ValCell,Role,units_cell]=velocity(DataIn)</a>
1420096 VarName={};
1430097 ValCell={};
1440098 Role={};
1450099 units_cell={};
1460100 <span class="keyword">if</span> isfield(DataIn,<span class="string">'CoordUnit'</span>) &amp;&amp; isfield(DataIn,<span class="string">'TimeUnit'</span>)
1470101     units=[DataIn.CoordUnit <span class="string">'/'</span> DataIn.TimeUnit];
1480102 <span class="keyword">else</span>
1490103     units=<span class="string">'pixel'</span>;
1500104 <span class="keyword">end</span>
1510105 <span class="keyword">if</span> isfield(DataIn,<span class="string">'U'</span>)
1520106     VarName=[VarName {<span class="string">'U'</span>}];
1530107     ValCell=[ValCell {DataIn.U}];
1540108     Role=[Role {<span class="string">'vector_x'</span>}];
1550109     units_cell=[units_cell {units}];
1560110 <span class="keyword">end</span>
1570111 <span class="keyword">if</span> isfield(DataIn,<span class="string">'V'</span>)
1580112     VarName=[VarName {<span class="string">'V'</span>}];
1590113     ValCell=[ValCell {DataIn.V}];
1600114     Role=[Role {<span class="string">'vector_y'</span>}]; 
1610115     units_cell=[units_cell {units}];
1620116 <span class="keyword">end</span>
1630117 <span class="keyword">if</span> isfield(DataIn,<span class="string">'W'</span>)
1640118     VarName=[VarName {<span class="string">'W'</span>}];
1650119     ValCell=[ValCell {DataIn.W}];
1660120     Role=[Role {<span class="string">'vector_z'</span>}];
1670121     units_cell=[units_cell {units}];
1680122 <span class="keyword">end</span>
1690123 <span class="keyword">if</span> isfield(DataIn,<span class="string">'F'</span>)
1700124     VarName=[VarName {<span class="string">'F'</span>}];
1710125     ValCell=[ValCell {DataIn.F}];
1720126     Role=[Role {<span class="string">'warnflag'</span>}];
1730127     units_cell=[units_cell {[]}];
1740128 <span class="keyword">end</span>
1750129 <span class="keyword">if</span> isfield(DataIn,<span class="string">'FF'</span>)
1760130     VarName=[VarName,{<span class="string">'FF'</span>}];
1770131     ValCell=[ValCell {DataIn.FF}];
1780132     Role=[Role {<span class="string">'errorflag'</span>}];
1790133     units_cell=[units_cell {[]}];
1800134 <span class="keyword">end</span>
1810135
1820136 <span class="comment">%%%%%%%%%%%%% ima cor%%%%%%%%%%%%%%%%%%%%</span>
1830137 <a name="_sub2" href="#_subfunctions" class="code">function [VarName,ValCell,Role,units]=ima_cor(DataIn)</a>
1840138 VarName={};
1850139 ValCell={};
1860140 Role={};
1870141 units={};
1880142 <span class="keyword">if</span> isfield(DataIn,<span class="string">'C'</span>)
1890143     VarName{1}=<span class="string">'C'</span>;
1900144     ValCell{1}=DataIn.C;
1910145     Role={<span class="string">'ancillary'</span>};
1920146     units={[]};
1930147 <span class="keyword">end</span>
1940148
1950149 <span class="comment">%%%%%%%%%%%%% norm_vec %%%%%%%%%%%%%%%%%%%%</span>
1960150 <a name="_sub3" href="#_subfunctions" class="code">function [VarName,ValCell,Role,units]=norm_vel(DataIn)</a>
1970151 VarName={};
1980152 ValCell={};
1990153 Role={};
2000154 units={};
2010155 <span class="keyword">if</span> isfield(DataIn,<span class="string">'U'</span>) &amp;&amp; isfield(DataIn,<span class="string">'V'</span>)
2020156     VarName{1}=<span class="string">'norm_vel'</span>;
2030157      ValCell{1}=DataIn.U.*DataIn.U+ DataIn.V.*DataIn.V;
2040158      <span class="keyword">if</span> isfield(DataIn,<span class="string">'W'</span>) &amp;&amp; isequal(size(DataIn.W),size(DataIn.U))
2050159          ValCell{1}=ValCell{1}+DataIn.W.*DataIn.W;
2060160      <span class="keyword">end</span>
2070161      ValCell{1}=sqrt(ValCell{1});
2080162      Role{1}=<span class="string">'scalar'</span>;
2090163      <span class="keyword">if</span> isfield(DataIn,<span class="string">'CoordUnit'</span>) &amp;&amp; isfield(DataIn,<span class="string">'TimeUnit'</span>)
2100164         units={[DataIn.CoordUnit <span class="string">'/'</span> DataIn.TimeUnit]};
2110165      <span class="keyword">else</span>
2120166         units={<span class="string">'pixel'</span>};
2130167      <span class="keyword">end</span>
2140168 <span class="keyword">end</span> 
2150169
2160170
2170171
2180172 <span class="comment">%%%%%%%%%%%%% vorticity%%%%%%%%%%%%%%%%%%%%</span>
2190173 <a name="_sub4" href="#_subfunctions" class="code">function [VarName,ValCell,Role,units]=vort(DataIn)</a>
2200174 VarName={};
2210175 ValCell={};
2220176 Role={};
2230177 units={};
2240178 <span class="keyword">if</span> isfield(DataIn,<span class="string">'DjUi'</span>)
2250179     VarName{1}=<span class="string">'vort'</span>;
2260180     ValCell{1}=DataIn.DjUi(:,1,2)-DataIn.DjUi(:,2,1);  <span class="comment">%vorticity</span>
2270181     siz=size(ValCell{1});
2280182     ValCell{1}=reshape(ValCell{1},siz(1),1);
2290183     Role{1}=<span class="string">'scalar'</span>;
2300184     <span class="keyword">if</span> isfield(DataIn,<span class="string">'TimeUnit'</span>)
2310185         units={[DataIn.TimeUnit <span class="string">'-1'</span>]};
2320186     <span class="keyword">else</span>
2330187         units={[]};
2340188     <span class="keyword">end</span>
2350189 <span class="keyword">end</span> 
2360190
2370191 <span class="comment">%%%%%%%%%%%%% divergence%%%%%%%%%%%%%%%%%%%%</span>
2380192 <a name="_sub5" href="#_subfunctions" class="code">function [VarName,ValCell,Role,units]=div(DataIn)</a>
2390193 VarName={};
2400194 ValCell={};
2410195 Role={};
2420196 units={};
2430197 <span class="keyword">if</span> isfield(DataIn,<span class="string">'DjUi'</span>)
2440198     VarName{1}=<span class="string">'div'</span>;
2450199     ValCell{1}=DataIn.DjUi(:,1,1)+DataIn.DjUi(:,2,2); <span class="comment">%DUDX+DVDY</span>
2460200     siz=size(ValCell{1});
2470201     ValCell{1}=reshape(ValCell{1},siz(1),1);
2480202     Role{1}=<span class="string">'scalar'</span>;
2490203     <span class="keyword">if</span> isfield(DataIn,<span class="string">'TimeUnit'</span>)
2500204         units={[DataIn.TimeUnit <span class="string">'-1'</span>]};
2510205     <span class="keyword">else</span>
2520206         units={[]};
2530207     <span class="keyword">end</span>
2540208 <span class="keyword">end</span> 
2550209
2560210 <span class="comment">%%%%%%%%%%%%% strain %%%%%%%%%%%%%%%%%%%%</span>
2570211 <a name="_sub6" href="#_subfunctions" class="code">function [VarName,ValCell,Role,units]=strain(DataIn)</a>
2580212 VarName={};
2590213 ValCell={};
2600214 Role={};
2610215 units={};
2620216 <span class="keyword">if</span> isfield(DataIn,<span class="string">'DjUi'</span>)
2630217    VarName{1}=<span class="string">'strain'</span>;
2640218    ValCell{1}=DataIn.DjUi(:,1,2)+DataIn.DjUi(:,2,1);<span class="comment">%DVDX+DUDY</span>
2650219    siz=size(ValCell{1});   
2660220    ValCell{1}=reshape(ValCell{1},siz(1),1);
2670221    <span class="keyword">if</span> isfield(DataIn,<span class="string">'TimeUnit'</span>)
2680222         units={[DataIn.TimeUnit <span class="string">'-1'</span>]};
2690223    <span class="keyword">else</span>
2700224         units={[]};
2710225    <span class="keyword">end</span>
2720226 <span class="keyword">end</span> 
2730227
2740228 <span class="comment">%%%%%%%%%%%%% u %%%%%%%%%%%%%%%%%%%%</span>
2750229 <a name="_sub7" href="#_subfunctions" class="code">function [VarName,ValCell,Role,units]=u(DataIn)</a>
2760230 VarName={};
2770231 ValCell={};
2780232 Role={};
2790233 units={};
2800234 <span class="keyword">if</span> isfield(DataIn,<span class="string">'U'</span>)
2810235     VarName{1}=<span class="string">'U'</span>;
2820236     ValCell{1}=DataIn.U;
2830237     Role{1}=<span class="string">'scalar'</span>;
2840238     <span class="keyword">if</span> isfield(DataIn,<span class="string">'CoordUnit'</span>) &amp;&amp; isfield(DataIn,<span class="string">'TimeUnit'</span>)
2850239         units={[DataIn.CoordUnit <span class="string">'/'</span> DataIn.TimeUnit]};
2860240     <span class="keyword">else</span>
2870241         units={<span class="string">'pixel'</span>};
2880242     <span class="keyword">end</span>
2890243 <span class="keyword">end</span>
2900244
2910245 <span class="comment">%%%%%%%%%%%%% v %%%%%%%%%%%%%%%%%%%%</span>
2920246 <a name="_sub8" href="#_subfunctions" class="code">function [VarName,ValCell,Role,units]=v(DataIn)</a>
2930247 VarName={};
2940248 ValCell={};
2950249 Role={};
2960250 units={};
2970251 <span class="keyword">if</span> isfield(DataIn,<span class="string">'V'</span>)
2980252     VarName{1}=<span class="string">'V'</span>;
2990253     ValCell{1}=DataIn.V;
3000254     Role{1}=<span class="string">'scalar'</span>;
3010255     <span class="keyword">if</span> isfield(DataIn,<span class="string">'CoordUnit'</span>) &amp;&amp; isfield(DataIn,<span class="string">'TimeUnit'</span>)
3020256         units={[DataIn.CoordUnit <span class="string">'/'</span> DataIn.TimeUnit]};
3030257     <span class="keyword">else</span>
3040258         units={<span class="string">'pixel'</span>};
3050259     <span class="keyword">end</span>
3060260 <span class="keyword">end</span>
3070261
3080262 <span class="comment">%%%%%%%%%%%%% w %%%%%%%%%%%%%%%%%%%%</span>
3090263 <a name="_sub9" href="#_subfunctions" class="code">function [VarName,ValCell,Role,units]=w(DataIn)</a>
3100264 VarName={};
3110265 ValCell={};
3120266 Role={};
3130267 units={};
3140268 <span class="keyword">if</span> isfield(DataIn,<span class="string">'W'</span>)
3150269     VarName{1}=<span class="string">'W'</span>;
3160270     ValCell{1}=DataIn.W;
3170271     Role{1}=<span class="string">'scalar'</span>;<span class="comment">%will remain unchanged by projection</span>
3180272     <span class="keyword">if</span> isfield(DataIn,<span class="string">'CoordUnit'</span>) &amp;&amp; isfield(DataIn,<span class="string">'TimeUnit'</span>)
3190273         units={[DataIn.CoordUnit <span class="string">'/'</span> DataIn.TimeUnit]};
3200274     <span class="keyword">else</span>
3210275         units={<span class="string">'pixel'</span>};
3220276     <span class="keyword">end</span>
3230277 <span class="keyword">end</span>
3240278
3250279 <span class="comment">%%%%%%%%%%%%% w_normal %%%%%%%%%%%%%%%%%%%%</span>
3260280 <a name="_sub10" href="#_subfunctions" class="code">function [VarName,ValCell,Role,units]=w_normal(DataIn)</a>
3270281 VarName={};
3280282 ValCell={};
3290283 Role={};
3300284 units={};
3310285 <span class="keyword">if</span> isfield(DataIn,<span class="string">'W'</span>)
3320286     VarName{1}=<span class="string">'W'</span>;
3330287     ValCell{1}=DataIn.W;
3340288     Role{1}=<span class="string">'vector_z'</span>;<span class="comment">%will behave like a vector component  by projection</span>
3350289     <span class="keyword">if</span> isfield(DataIn,<span class="string">'CoordUnit'</span>) &amp;&amp; isfield(DataIn,<span class="string">'TimeUnit'</span>)
3360290         units={[DataIn.CoordUnit <span class="string">'/'</span> DataIn.TimeUnit]};
3370291     <span class="keyword">else</span>
3380292         units={<span class="string">'pixel'</span>};
3390293     <span class="keyword">end</span>
3400294 <span class="keyword">end</span>
3410295
3420296 <span class="comment">%%%%%%%%%%%%% error %%%%%%%%%%%%%%%%%%%%</span>
3430297 <a name="_sub11" href="#_subfunctions" class="code">function [VarName,ValCell,Role,units]=error(DataIn)</a>
3440298 VarName={};
3450299 ValCell={};
3460300 Role={};
3470301 units={};
3480302 <span class="keyword">if</span> isfield(DataIn,<span class="string">'E'</span>)
3490303     VarName{1}=<span class="string">'E'</span>;
3500304     ValCell{1}=DataIn.E;
3510305     Role{1}=<span class="string">'ancillary'</span>; <span class="comment">%TODO CHECK units in actual fields</span>
3520306     <span class="keyword">if</span> isfield(DataIn,<span class="string">'CoordUnit'</span>) &amp;&amp; isfield(DataIn,<span class="string">'TimeUnit'</span>)
3530307         units={[DataIn.CoordUnit <span class="string">'/'</span> DataIn.TimeUnit]};
3540308     <span class="keyword">else</span>
3550309         units={<span class="string">'pixel'</span>};
3560310     <span class="keyword">end</span>
3570311 <span class="keyword">end</span>
3580312</pre></div>
359<hr><address>Generated on Fri 13-Nov-2009 11:17:03 by <strong><a href="http://www.artefact.tk/software/matlab/m2html/">m2html</a></strong> &copy; 2003</address>
360</body>
361</html>
Note: See TracBrowser for help on using the repository browser.