


Write FVCOM format open boundary node list file
function write_FVCOM_obc(Mobj,filename)
DESCRIPTION:
Generate an ascii FVCOM 3.x format obc node list
INPUT
Mobj = Mesh object
filename = FVCOM obc file name
OUTPUT:
FVCOM obc file: filename
EXAMPLE USAGE
write_FVCOM_obc(Mobj,'tst_spg.dat')
Author(s):
Geoff Cowles (University of Massachusetts Dartmouth)
Revision history
==============================================================================

0001 function write_FVCOM_obc(Mobj,filename) 0002 0003 % Write FVCOM format open boundary node list file 0004 % 0005 % function write_FVCOM_obc(Mobj,filename) 0006 % 0007 % DESCRIPTION: 0008 % Generate an ascii FVCOM 3.x format obc node list 0009 % 0010 % INPUT 0011 % Mobj = Mesh object 0012 % filename = FVCOM obc file name 0013 % 0014 % OUTPUT: 0015 % FVCOM obc file: filename 0016 % 0017 % EXAMPLE USAGE 0018 % write_FVCOM_obc(Mobj,'tst_spg.dat') 0019 % 0020 % Author(s): 0021 % Geoff Cowles (University of Massachusetts Dartmouth) 0022 % 0023 % Revision history 0024 % 0025 %============================================================================== 0026 subname = 'write_FVCOM_obc'; 0027 global ftbverbose 0028 if(ftbverbose) 0029 fprintf('\n'); fprintf(['begin : ' subname '\n']); 0030 end; 0031 0032 %------------------------------------------------------------------------------ 0033 % Parse input arguments 0034 %------------------------------------------------------------------------------ 0035 if(exist('Mobj')*exist('filename')==0) 0036 error('arguments to write_FVCOM_obc are incorrect') 0037 end; 0038 0039 %------------------------------------------------------------------------------ 0040 % Dump the file 0041 %------------------------------------------------------------------------------ 0042 if(ftbverbose); fprintf('writing FVCOM obc %s\n',filename); end; 0043 fid = fopen(filename,'w'); 0044 0045 if(Mobj.nObs==0) 0046 fprintf(fid,'OBC Node Number = %d\n',0); 0047 else 0048 counter = 0; 0049 Total_Obc = sum(Mobj.nObcNodes(1:Mobj.nObs)); 0050 fprintf(fid,'OBC Node Number = %d\n',Total_Obc); 0051 for i=1:Mobj.nObs 0052 for j=1:Mobj.nObcNodes(i) 0053 counter = counter + 1; 0054 fprintf(fid,'%d %d %d\n',counter,Mobj.obc_nodes(i,j),Mobj.obc_type(i)); 0055 end; 0056 end; 0057 end; 0058 fclose(fid); 0059 0060 0061 if(ftbverbose) 0062 fprintf(['end : ' subname '\n']) 0063 end; 0064