'read_scalar': reads and calculates the vort div or any scalar from a file % OBSOLETE: REPLACED BY read_ncfield ------------------------------------------------------------------ [A,time,dt,rangx,rangy,vel_type_out,error,pixcmx,pixcmy]=... read_scalar(filename,vel_type,scal_type,rgx_in,rgy_in,npxy_in,maskname,usrtransform); OUTPUT: A=double m x n matrix representing the scalar field on a regular mesh time: absolute time read in the file dt: time interval of the image pair (read in the file) rangx,rangy: length 2 vectors representing in each direction the coordinates of the first and last point of the field, thus describes the whole grid of scalar positions vel_type_out: string representing the type of velocity selected (filter2,filter1...) error: error flag = 0 when OK error=1: no spatial derivative in the filename;'run patch first'}) error=2: no field vel_type in filename error=3: scalar cannot be obtained error=4: all points aligned pixcmx,pixcmy: pixels per cm in the images (useful when using a mask) INPUT: filename: string representing the name of the input file vel_type: character string or cell (only vel_type{1} is used presently), indicates the types of velocity fields to read ('civ1','civ2'...) if vel_type{1}=[], the types are automaticaly set depending on scal_type scal_type: character string, indicates the types of scalar to get ('vort','div'...) rgx_in,rgy_in: like rangx, rangy but set as input: if 'rgx_in' not defined or rgx_in=[], it is set to min max of 'vec_X' in the field npxy_in: in general vector with two elements setting the number of grid points in each direction, in association with rgx_in,rgy_in, it sets the whole grid on which the scalar is linearly interpolated if rgx_in=[] and npxy_in='np>256' we interpolate the field to get a resolution > 256 pts maskname: name of a mask image file, the scalar is set to 'NaN' at masked points transform: names of a user defined transforms transform.scal: for the scalar transform.ima: for a geometric transform on mask images if a mask is used