Ignore:
Timestamp:
11/17/15 16:10:39 (9 years ago)
Author:
Mathieu Morlighem
Message:

NEW: added discrete moulins to hydrology model

File:
1 edited

Legend:

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

    r19740 r19744  
    2222}/*}}}*/
    2323void HydrologySommersAnalysis::CreateLoads(Loads* loads, IoModel* iomodel){/*{{{*/
    24         /*No loads*/
     24
     25        /*Fetch parameters: */
     26        int  hydrology_model;
     27        iomodel->Constant(&hydrology_model,HydrologyModelEnum);
     28
     29        /*Now, do we really want Sommers?*/
     30        if(hydrology_model!=HydrologysommersEnum) return;
     31
     32        //create penalties for nodes: no node can have water above the max
     33        CreateSingleNodeToElementConnectivity(iomodel);
     34        for(int i=0;i<iomodel->numberofvertices;i++){
     35                if (iomodel->domaintype!=Domain3DEnum){
     36                        /*keep only this partition's nodes:*/
     37                        if(iomodel->my_vertices[i]){
     38                                loads->AddObject(new Moulin(iomodel->loadcounter+i+1,i,iomodel,HydrologySommersAnalysisEnum));
     39                        }
     40                }
     41                else if(reCast<int>(iomodel->Data(MeshVertexonbaseEnum)[i])){
     42                        if(iomodel->my_vertices[i]){
     43                                loads->AddObject(new Moulin(iomodel->loadcounter+i+1,i,iomodel,HydrologySommersAnalysisEnum));
     44                        }       
     45                }
     46        }
     47        iomodel->DeleteData(1,MeshVertexonbaseEnum);
     48
    2549}/*}}}*/
    2650void HydrologySommersAnalysis::CreateNodes(Nodes* nodes,IoModel* iomodel){/*{{{*/
     
    7296        iomodel->FetchDataToInput(elements,HydrologyGapHeightEnum);
    7397        iomodel->FetchDataToInput(elements,HydrologyEnglacialInputEnum);
     98        iomodel->FetchDataToInput(elements,HydrologyMoulinInputEnum);
    7499        iomodel->FetchDataToInput(elements,HydrologyBumpSpacingEnum);
    75100        iomodel->FetchDataToInput(elements,HydrologyBumpHeightEnum);
Note: See TracChangeset for help on using the changeset viewer.