Changeset 24021


Ignore:
Timestamp:
06/17/19 01:14:12 (6 years ago)
Author:
Mathieu Morlighem
Message:

CHG: do not load TF in ISMIP6 forcing if element is not on base to limit RAM requirements

Location:
issm/trunk-jpl/src/c
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk-jpl/src/c/analyses/MasstransportAnalysis.cpp

    r24000 r24021  
    180180                        break;
    181181                case BasalforcingsIsmip6Enum:{
    182                         //iomodel->FetchDataToInput(elements,"md.basalforcings.tf",BasalforcingsIsmp6TfEnum);
    183182                        iomodel->FetchDataToInput(elements,"md.basalforcings.basin_id",BasalforcingsIsmp6BasinIdEnum);
    184                         IssmDouble** array3d = NULL;
    185                         int* Ms = NULL;
    186                         int* Ns = NULL;
    187                         int K;
     183                        IssmDouble** array3d = NULL; int* Ms = NULL; int* Ns = NULL; int K;
    188184                        iomodel->FetchData(&array3d,&Ms,&Ns,&K,"md.basalforcings.tf");
    189185                        if(!array3d) _error_("md.basalforcings.tf not found in binary file");
    190186                        for(int i=0;i<elements->Size();i++){
    191187                                Element* element=xDynamicCast<Element*>(elements->GetObjectByOffset(i));
     188                                if(!element->IsOnBase()) continue;
    192189                                for(int kk=0;kk<K;kk++){
    193190                                        element->DatasetInputAdd(BasalforcingsIsmp6TfEnum,array3d[kk],iomodel,Ms[kk],Ns[kk],1,BasalforcingsIsmp6TfEnum,7,kk);
    194191                                }
    195192                        }
    196                         xDelete<int>(Ms);
    197                         xDelete<int>(Ns);
     193                        xDelete<int>(Ms); xDelete<int>(Ns);
    198194                        for(int i=0;i<K;i++) xDelete<IssmDouble>(array3d[i]);
    199195                        xDelete<IssmDouble*>(array3d);
  • issm/trunk-jpl/src/c/classes/Elements/Penta.cpp

    r24020 r24021  
    364364        if(!IsOnBase()){
    365365                //put zero
    366                 sigma_b->SetValue(id-1,0.0,INS_VAL);
     366                //sigma_b->SetValue(id-1,0.0,INS_VAL);
    367367                return;
    368368        }
     
    416416
    417417        /*Add value to output*/
    418         sigma_b->SetValue(id-1,value,INS_VAL);
     418        //sigma_b->SetValue(id-1,value,INS_VAL);
    419419}
    420420/*}}}*/
Note: See TracChangeset for help on using the changeset viewer.