Changeset 16900


Ignore:
Timestamp:
11/22/13 16:59:29 (11 years ago)
Author:
bdef
Message:

CHG : Changing the position of the transfer computation in Hydrologydc

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

Legend:

Unmodified
Added
Removed
  • issm/trunk-jpl/src/c/classes/Elements/Tria.cpp

    r16891 r16900  
    71677167                                        /*Assign output pointer*/
    71687168                                        transfer->SetValue(doflist[i],wh_trans,INS_VAL);
    7169 
    71707169                                }
    71717170                        }
  • issm/trunk-jpl/src/c/solutionsequences/solutionsequence_hydro_nonlinear.cpp

    r16870 r16900  
    5757                femmodel->SetCurrentConfiguration(HydrologyDCEfficientAnalysisEnum);
    5858                GetSolutionFromInputsx(&ug_epl,femmodel);
     59                /*Initialize the transfer input*/
     60                HydrologyDCInefficientAnalysis* analysis = new HydrologyDCInefficientAnalysis();
     61                analysis->ElementizeEplMask(femmodel);
     62                delete analysis;
     63                femmodel->HydrologyTransferx();
    5964        }
    6065
     
    8388                sedconverged=false;
    8489                for(;;){
    85                         if(isefficientlayer){
    86                                 /*Updating Nodal Mask*/
    87                                 HydrologyDCInefficientAnalysis* analysis = new HydrologyDCInefficientAnalysis();
    88                                 analysis->ElementizeEplMask(femmodel);
    89                                 delete analysis;
    90                         }
    91                         femmodel->HydrologyTransferx();
    92 
    9390                        SystemMatricesx(&Kff,&Kfs,&pf,&df,&sediment_kmax,femmodel);
    9491                        CreateNodalConstraintsx(&ys,femmodel->nodes,HydrologyDCInefficientAnalysisEnum);
     
    104101                        InputUpdateFromSolutionx(femmodel,ug_sed);
    105102                        ConstraintsStatex(&constraints_converged,&num_unstable_constraints,femmodel);
     103
    106104                        if (!sedconverged){
    107105                                if(VerboseConvergence()) _printf0_("   # Sediment unstable constraints = " << num_unstable_constraints << "\n");
     
    114112
    115113                        if(sedconverged){
     114                                if(isefficientlayer){
     115                                        /*Updating Nodal Mask*/
     116                                        HydrologyDCInefficientAnalysis* analysis = new HydrologyDCInefficientAnalysis();
     117                                        analysis->ElementizeEplMask(femmodel);
     118                                        delete analysis;
     119                                        femmodel->HydrologyTransferx();
     120                                }
    116121                                femmodel->parameters->SetParam(sediment_kmax,HydrologySedimentKmaxEnum);
    117122                                InputUpdateFromConstantx(femmodel,sedconverged,ConvergedEnum);
     
    147152
    148153                                femmodel->SetCurrentConfiguration(HydrologyDCEfficientAnalysisEnum);
    149                                 //                              femmodel->HydrologyEPLThicknessx();
     154
    150155                                //updating mask after the computation of the epl thickness (Allow to close too thin EPL)
    151156                                femmodel->HydrologyEPLupdateDomainx();
    152                                 /*Updating Nodal Mask*/
    153                                 HydrologyDCInefficientAnalysis* analysis = new HydrologyDCInefficientAnalysis();
    154                                 analysis->ElementizeEplMask(femmodel);
    155                                 delete analysis;
    156 
    157                                 femmodel->HydrologyTransferx();
     157
    158158                                SystemMatricesx(&Kff,&Kfs,&pf,&df,NULL,femmodel);
    159159                                CreateNodalConstraintsx(&ys,femmodel->nodes,HydrologyDCEfficientAnalysisEnum);
     
    183183
    184184                                if(eplconverged){
     185
     186                                        Updating Nodal Mask
     187                                        HydrologyDCInefficientAnalysis* analysis = new HydrologyDCInefficientAnalysis();
     188                                        analysis->ElementizeEplMask(femmodel);
     189                                        delete analysis;
     190                                        femmodel->HydrologyTransferx();
     191
    185192                                        InputUpdateFromConstantx(femmodel,eplconverged,ConvergedEnum);
    186193                                        InputUpdateFromConstantx(femmodel,sediment_kmax,MeltingOffsetEnum);
     
    190197                        }
    191198                }
     199               
     200               
    192201                /*System convergence check*/
    193202                if(!hydroconverged){
Note: See TracChangeset for help on using the changeset viewer.