Warning, /verification/global_ocean.cs32x15/input.viscA4/mk_addMass.m is written in an unsupported language. File is not indexed.
view on githubraw file Latest commit 79b5d577 on 2025-04-18 19:55:23 UTC
79b5d5775c Jean*0001
0002 kwr=0;
0003 rDir='../input/';
0004
0005 inpSfx='.bin'; prec='real*8';
0006 outSfx=inpSfx; precOut=prec;
0007 %outSfx='.r4_bin'; precOut='real*4';
0008
0009 gDir='grid/';
0010 G=load_grid(gDir,0);
0011 nx=G.dims(1); ny=G.dims(2); nr=G.dims(3);
0012
0013 mskC=ceil(G.hFacC);
0014 rAc=G.rAc.*mskC(:,:,1); areaG=sum(rAc(:));
0015
0016 %for j=1:length(listInpF)
0017 % namF=char(listInpF(j));
0018 namF='shiEmPR_cs32'; n3d=1; j=1;
0019 fprintf('-- processing file (#%i) %s ',j,namF);
0020 %fprintf('(length= %i ) :',length(namF));
0021 fprintf(': n3d= %i ',n3d);
0022 var=rdda([rDir,namF,inpSfx],[nx ny n3d],1,prec,'b');
0023 fprintf(' Make changes\n');
0024 emp0=var;
0025
0026 var=emp0; titv=namF;
0027 var=var.*mskC(:,:,1); mnV=min(var(:)); MxV=max(var(:));
0028 var=var.*rAc; Avr=sum(var(:))/areaG;
0029 fprintf(' field %15s : min,max= %e, %e , Mean= %e\n',titv,mnV,MxV,Avr);
0030
0031 %- Multiply by 10 and substract 1.e-7 (~ 1.cm/d , excess of Precip):
0032 emp1=10*emp0-ones(nx,ny)*1.e-7;
0033
0034 var=emp1; titv='- New-';
0035 var=var.*mskC(:,:,1); mnV=min(var(:)); MxV=max(var(:));
0036 var=var.*rAc; Avr=sum(var(:))/areaG;
0037 fprintf(' field %15s : min,max= %e, %e , Mean= %e\n',titv,mnV,MxV,Avr);
0038
0039 %-- convert to addMass:
0040 rhoFresh=1000.;
0041 addM=-rhoFresh*emp1; %- mass input in kg/m2/s
0042 addM=addM.*rAc; %- in kg/s
0043
0044 var=addM; titv='addMass';
0045 var=var.*mskC(:,:,1); mnV=min(var(:)); MxV=max(var(:));
0046 var=var.*rAc; Avr=sum(var(:))/areaG;
0047 fprintf(' field %15s : min,max= %e, %e , Mean= %e\n',titv,mnV,MxV,Avr);
0048
0049 if kwr > 0,
0050 fnam=[namF,outSfx];
0051 fnam=['large_Precip',outSfx]; var=emp1;
0052 fprintf(' writing file: %s ...',fnam);
0053 fid=fopen(fnam,'w','b');
0054 fwrite(fid,var,precOut); fclose(fid);
0055 fprintf(' done\n');
0056
0057 fnam=['addMass_k1',outSfx]; var=zeros(nx,ny,nr); var(:,:,1)=addM;
0058 fprintf(' writing file: %s ...',fnam);
0059 fid=fopen(fnam,'w','b');
0060 fwrite(fid,var,precOut); fclose(fid);
0061 fprintf(' done\n');
0062 end
0063
0064 %end
0065 %return
0066
0067 figure(1);clf; colormap('jet');
0068 var=emp0; ccB=[-1 1]*5.e-8;
0069 %var=emp1; ccB=[-1 1]*5.e-7;
0070 imagesc([1:nx],[1:ny],var');
0071 set(gca,'YDir','normal');colorbar;
0072 caxis(ccB);
0073
0074 return