Changeset 23819
- Timestamp:
- 04/01/19 14:27:40 (6 years ago)
- Location:
- issm/trunk-jpl/src/c
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/classes/Elements/Element.cpp
r23817 r23819 3255 3255 IssmDouble thermo_scaling=1.0; 3256 3256 IssmDouble adThresh=1023.0; 3257 int offsetend ;3257 int offsetend=-1; 3258 3258 IssmDouble time0, timeend, delta; 3259 3259 … … 3478 3478 //If this is a climatology, we need to repeat the forcing after the final time 3479 3479 offsetend=dynamic_cast<TransientInput*>(Ta_input)->GetTimeInputOffset(finaltime); 3480 time0=dynamic_cast<TransientInput*>(Ta_input)->GetTimeByOffset( 0);3480 time0=dynamic_cast<TransientInput*>(Ta_input)->GetTimeByOffset(-1); 3481 3481 timeend=dynamic_cast<TransientInput*>(Ta_input)->GetTimeByOffset(offsetend); 3482 3482 if (time>time0 & timeend>time0){ -
issm/trunk-jpl/src/c/modules/SurfaceMassBalancex/SurfaceMassBalancex.cpp
r23817 r23819 19 19 int v; 20 20 IssmDouble time,dt,delta,starttime,finaltime; 21 int offsetend ;21 int offsetend=-1; 22 22 IssmDouble time0, timeend, timeclim; 23 23 … … 44 44 //Get accumulation climatology value 45 45 offsetend=dynamic_cast<TransientInput*>(smb_input)->GetTimeInputOffset(finaltime); 46 time0=dynamic_cast<TransientInput*>(smb_input)->GetTimeByOffset( 0);46 time0=dynamic_cast<TransientInput*>(smb_input)->GetTimeByOffset(-1); 47 47 timeend=dynamic_cast<TransientInput*>(smb_input)->GetTimeByOffset(offsetend); 48 timeclim=time; 48 49 if (time>time0 & timeend>time0){ 49 50 delta=(time-time0) - (timeend-time0)*(reCast<int,IssmDouble>((time-time0)/(timeend-time0))); … … 406 407 bool isclimatology=false; 407 408 IssmDouble time,delta,starttime,finaltime; 408 int offsetend ;409 int offsetend=-1; 409 410 IssmDouble time0, timeend, timeclim; 410 411 … … 435 436 //Get accumulation climatology value 436 437 offsetend=dynamic_cast<TransientInput*>(acc_input)->GetTimeInputOffset(finaltime); 437 time0=dynamic_cast<TransientInput*>(acc_input)->GetTimeByOffset( 0);438 time0=dynamic_cast<TransientInput*>(acc_input)->GetTimeByOffset(-1); 438 439 timeend=dynamic_cast<TransientInput*>(acc_input)->GetTimeByOffset(offsetend); 440 timeclim=time; 439 441 if (time>time0 & timeend>time0){ 440 442 delta=(time-time0) - (timeend-time0)*(reCast<int,IssmDouble>((time-time0)/(timeend-time0))); … … 447 449 //Get evaporation climatology value 448 450 offsetend=dynamic_cast<TransientInput*>(evap_input)->GetTimeInputOffset(finaltime); 449 time0=dynamic_cast<TransientInput*>(evap_input)->GetTimeByOffset( 0);451 time0=dynamic_cast<TransientInput*>(evap_input)->GetTimeByOffset(-1); 450 452 timeend=dynamic_cast<TransientInput*>(evap_input)->GetTimeByOffset(offsetend); 453 timeclim=time; 451 454 if (time>time0 & timeend>time0){ 452 455 delta=(time-time0) - (timeend-time0)*(reCast<int,IssmDouble>((time-time0)/(timeend-time0))); … … 459 462 //Get runoff climatology value 460 463 offsetend=dynamic_cast<TransientInput*>(runoff_input)->GetTimeInputOffset(finaltime); 461 time0=dynamic_cast<TransientInput*>(runoff_input)->GetTimeByOffset( 0);464 time0=dynamic_cast<TransientInput*>(runoff_input)->GetTimeByOffset(-1); 462 465 timeend=dynamic_cast<TransientInput*>(runoff_input)->GetTimeByOffset(offsetend); 466 timeclim=time; 463 467 if (time>time0 & timeend>time0){ 464 468 delta=(time-time0) - (timeend-time0)*(reCast<int,IssmDouble>((time-time0)/(timeend-time0))); … … 501 505 bool isclimatology=false; 502 506 IssmDouble time,delta,starttime,finaltime; 503 int offsetend ;507 int offsetend=-1; 504 508 IssmDouble time0, timeend, timeclim; 505 509 … … 532 536 //Get accumulation climatology value 533 537 offsetend=dynamic_cast<TransientInput*>(acc_input)->GetTimeInputOffset(finaltime); 534 time0=dynamic_cast<TransientInput*>(acc_input)->GetTimeByOffset( 0);538 time0=dynamic_cast<TransientInput*>(acc_input)->GetTimeByOffset(-1); 535 539 timeend=dynamic_cast<TransientInput*>(acc_input)->GetTimeByOffset(offsetend); 540 timeclim=time; 536 541 if (time>time0 & timeend>time0){ 537 542 delta=(time-time0) - (timeend-time0)*(reCast<int,IssmDouble>((time-time0)/(timeend-time0))); … … 544 549 //Get evaporation climatology value 545 550 offsetend=dynamic_cast<TransientInput*>(evap_input)->GetTimeInputOffset(finaltime); 546 time0=dynamic_cast<TransientInput*>(evap_input)->GetTimeByOffset( 0);551 time0=dynamic_cast<TransientInput*>(evap_input)->GetTimeByOffset(-1); 547 552 timeend=dynamic_cast<TransientInput*>(evap_input)->GetTimeByOffset(offsetend); 553 timeclim=time; 548 554 if (time>time0){ 549 555 delta=(time-time0) - (timeend-time0)*(reCast<int,IssmDouble>((time-time0)/(timeend-time0))); … … 556 562 //Get melt climatology value 557 563 offsetend=dynamic_cast<TransientInput*>(melt_input)->GetTimeInputOffset(finaltime); 558 time0=dynamic_cast<TransientInput*>(melt_input)->GetTimeByOffset( 0);564 time0=dynamic_cast<TransientInput*>(melt_input)->GetTimeByOffset(-1); 559 565 timeend=dynamic_cast<TransientInput*>(melt_input)->GetTimeByOffset(offsetend); 566 timeclim=time; 560 567 if (time>time0){ 561 568 delta=(time-time0) - (timeend-time0)*(reCast<int,IssmDouble>((time-time0)/(timeend-time0))); … … 568 575 //Get refreeze climatology value 569 576 offsetend=dynamic_cast<TransientInput*>(refreeze_input)->GetTimeInputOffset(finaltime); 570 time0=dynamic_cast<TransientInput*>(refreeze_input)->GetTimeByOffset( 0);577 time0=dynamic_cast<TransientInput*>(refreeze_input)->GetTimeByOffset(-1); 571 578 timeend=dynamic_cast<TransientInput*>(refreeze_input)->GetTimeByOffset(offsetend); 579 timeclim=time; 572 580 if (time>time0){ 573 581 delta=(time-time0) - (timeend-time0)*(reCast<int,IssmDouble>((time-time0)/(timeend-time0)));
Note:
See TracChangeset
for help on using the changeset viewer.