Changeset 160 for altifloat/src
- Timestamp:
- 07/20/15 11:51:06 (9 years ago)
- Location:
- altifloat/src
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
altifloat/src/floater.h
r158 r160 25 25 YREAL uwind[nlon][nlat][jptfl]; 26 26 YREAL vwind[nlon][nlat][jptfl]; 27 YREAL utotal[nlon][nlat][jptfl]; 28 YREAL vtotal[nlon][nlat][jptfl]; 27 29 28 30 //Background … … 88 90 ubck[i][j][k]=0; 89 91 vbck[i][j][k]=0; 92 utotal[i][j][k]=0; 93 vtotal[i][j][k]=0; 90 94 } 91 95 } … … 277 281 278 282 int time[Ntime]; 279 float u10[Ntime][nlat][nlon]; 280 float v10[Ntime][nlat][nlon]; 281 283 float (*u10)[nlat][nlon] = new float[Ntime][nlat][nlon]; 284 float (*v10)[nlat][nlon] = new float[Ntime][nlat][nlon]; 285 286 // float u10[Ntime][Nlat][Nlon]; 287 //float v10[Ntime][Nlat][Nlon]; 288 289 if ((retval = nc_get_var_float(ncid,u10id,&u10[0][0][0]))) 290 ERR(retval); 291 292 if ((retval = nc_get_var_float(ncid,v10id,&v10[0][0][0]))) 293 ERR(retval); 294 295 282 296 if ((retval = nc_get_var_int(ncid,timeid,&time[0]))) 283 297 ERR(retval); 284 298 285 if ((retval = nc_get_var_float(ncid,u10id,&u10[0][0][0])))286 ERR(retval);287 288 if ((retval = nc_get_var_float(ncid,v10id,&v10[0][0][0])))289 ERR(retval);290 299 291 300 //Load time dimensions … … 500 509 void update_uv(){ 501 510 int j,k,t; 502 for (t=0;t<jtlag +1;t++)511 for (t=0;t<jtlag;t++) 503 512 for (j=0;j<nlon;j++) 504 513 for (k=0;k<nlat;k++) { 505 YS1_u(j,k,t )+=YS1_u_d(j,k);506 YS1_v(j,k,t )+=YS1_v_d(j,k);514 YS1_u(j,k,t+1)+=YS1_u_d(j,k); 515 YS1_v(j,k,t+1)+=YS1_v_d(j,k); 507 516 //printf("u=%f delu=%f \n",YS1_u(j,k),YS1_u_d(j,k)); 508 517 … … 564 573 for (j=0;j<nlon;j++) 565 574 for (k=0;k<nlat;k++) { 566 umod[j][k][it]=YS1_u(j,k,it-iti); 567 vmod[j][k][it]=YS1_v(j,k,it-iti); 575 umod[j][k][it]=YS1_u(j,k,it-iti+1); 576 vmod[j][k][it]=YS1_v(j,k,it-iti+1); 577 utotal[j][k][it]=YS1_utot(j,k,it-iti+1); 578 vtotal[j][k][it]=YS1_vtot(j,k,it-iti+1); 568 579 #ifdef UPDATE_BCK 569 ubck[j][k][it]=YS1_u(j,k,it-iti );570 vbck[j][k][it]=YS1_v(j,k,it-iti );580 ubck[j][k][it]=YS1_u(j,k,it-iti+1); 581 vbck[j][k][it]=YS1_v(j,k,it-iti+1); 571 582 #endif 572 583 } … … 630 641 for (k=0;k<nlat;k++) { 631 642 fprintf(fid,"%d %d %d %f %f\n",it,j,k,umod[j][k][it],vmod[j][k][it]); 643 } 644 645 fclose(fid); 646 647 } 648 649 void save_output_uvtot (int argc, char *argv[]) { 650 FILE *fid; 651 fid=fopen(argv[1],"w"); 652 if (fid==NULL) { 653 printf("\nfailed to open %s",argv[1]); 654 exit(3); 655 } 656 int j,k,it; 657 for (it=0;it<jptfl;it++) 658 for (j=0;j<nlon;j++) 659 for (k=0;k<nlat;k++) { 660 fprintf(fid,"%d %d %d %f %f\n",it,j,k,utotal[j][k][it],vtotal[j][k][it]); 632 661 } 633 662 -
altifloat/src/floater_delta.d
r156 r160 317 317 insert_fct myforward 318 318 insert_fct arg load_wind 319 insert_fct arg save_output_uvtot
Note: See TracChangeset
for help on using the changeset viewer.