


Dump spatially-variable flag (bedflag) to FVCOM forcing file
function write_FVCOM_bedflag(bedflag,filename,mytitle)
DESCRIPTION:
Generate a NetCDF file containing spatially variable bedflag for FVCOM
INPUT
bedflag = user defined bed flag (=0, no erosion/bedosition, =1, erosion/bedosition)
on the nodes
filename = filename to dump to
mytitle = title of the case (set as global attribute)
OUTPUT:
NetCDF file: filename
EXAMPLE USAGE
write_FVCOM_bedflag(bedflag, 'tst_bedflag.nc', 'no bedosition/erosion in Skagit river')
Author(s):
Geoff Cowles (University of Massachusetts Dartmouth)
Revision history
==============================================================================

0001 function write_FVCOM_bedflag(bedflag,filename,mytitle) 0002 0003 % Dump spatially-variable flag (bedflag) to FVCOM forcing file 0004 % 0005 % function write_FVCOM_bedflag(bedflag,filename,mytitle) 0006 % 0007 % DESCRIPTION: 0008 % Generate a NetCDF file containing spatially variable bedflag for FVCOM 0009 % 0010 % INPUT 0011 % bedflag = user defined bed flag (=0, no erosion/bedosition, =1, erosion/bedosition) 0012 % on the nodes 0013 % filename = filename to dump to 0014 % mytitle = title of the case (set as global attribute) 0015 % 0016 % OUTPUT: 0017 % NetCDF file: filename 0018 % 0019 % EXAMPLE USAGE 0020 % write_FVCOM_bedflag(bedflag, 'tst_bedflag.nc', 'no bedosition/erosion in Skagit river') 0021 % 0022 % Author(s): 0023 % Geoff Cowles (University of Massachusetts Dartmouth) 0024 % 0025 % Revision history 0026 % 0027 %============================================================================== 0028 warning off 0029 global ftbverbose; 0030 if(ftbverbose); 0031 subname = 'write_FVCOM_bedflag'; 0032 fprintf('\n'); fprintf(['begin : ' subname '\n']); 0033 end; 0034 0035 %------------------------------------------------------------------------------ 0036 % Parse input arguments 0037 %------------------------------------------------------------------------------ 0038 if(~exist('bedflag')) 0039 error('incorrect usage of gen_bedflag_file, must provide bedflag field') 0040 end; 0041 if(~exist('filename')) 0042 error('incorrect usage of gen_bedflag_file, must provide filename') 0043 end; 0044 if(~exist('title')) 0045 error('incorrect usage of gen_bedflag_file, must provide title field') 0046 end; 0047 0048 % check dimensions 0049 nVerts = prod(size(bedflag)); 0050 if(nVerts == 0) 0051 error('dimension of bedflag is 0, something is wrong ') 0052 end; 0053 0054 %------------------------------------------------------------------------------ 0055 % Dump to bedflag NetCDF file 0056 %------------------------------------------------------------------------------ 0057 if(ftbverbose); 0058 fprintf('Dumping to bedflag NetCDF file: \n',filename); 0059 fprintf('Size of bedflag array: \n',nVerts); 0060 end; 0061 nc = netcdf(filename,'clobber'); 0062 nc.title = mytitle; 0063 nc('node') = prod(size(bedflag)); 0064 nc{'bedflag'} = ncfloat('node'); 0065 nc{'bedflag'}.long_name = 'bed deposition flag'; 0066 nc{'bedflag'}.units = '-'; 0067 nc{'bedflag'}(1:nVerts) = bedflag(1:nVerts); 0068 ierr = close(nc); 0069 0070 0071 0072 if(ftbverbose); fprintf(['end : ' subname '\n']); end; 0073 0074