Changeset 4522


Ignore:
Timestamp:
07/12/10 10:19:02 (15 years ago)
Author:
Mathieu Morlighem
Message:

Fixed solver_thermal: UpdateFromSolution needs to be called before Penalty constrain

Location:
issm/trunk/src
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk/src/c/solvers/solver_thermal_nonlinear.cpp

    r4473 r4522  
    8383                MatFree(&Kgg);
    8484       
     85                /*!Reduce load from g to f size: */
    8586                if (verbose) _printf_("   reducing load from g to f set\n");
    86                 /*!Reduce load from g to f size: */
    8787                Reduceloadfromgtofx(&pf, pg, fem->Gmn, Kfs, fem->ys, fem->nodesets);
    8888
     
    100100                MatFree(&Kff);VecFree(&pf);VecFree(&tg);
    101101
     102                //Merge back to g set
    102103                if (verbose) _printf_("   merging solution from f to g set\n");
    103                 //Merge back to g set
    104104                Mergesolutionfromftogx(&tg, tf,fem->Gmn,fem->ys,fem->nodesets);
     105
     106                //Update inputs using new solution:
     107                if (verbose) _printf_("   updating inputs\n");
     108                InputUpdateFromSolutionx(fem->elements,fem->nodes, fem->vertices, fem->loads, fem->materials, fem->parameters,tg);
    105109
    106110                //Deal with penalty loads
    107111                if (verbose) _printf_("   penalty constraints\n");
    108112                PenaltyConstraintsx(&constraints_converged, &num_unstable_constraints, fem->elements,fem->nodes,fem->vertices,fem->loads,fem->materials,fem->parameters);
    109                
    110                 //Update inputs using new solution:
    111                 InputUpdateFromVectorx( fem->elements,fem->nodes, fem->vertices, fem->loads, fem->materials, fem->parameters,tg,TemperatureEnum,VertexEnum);
    112                 InputUpdateFromSolutionx(fem->elements,fem->nodes, fem->vertices, fem->loads, fem->materials, fem->parameters,tg);
    113113
    114114                if (!converged){
  • issm/trunk/src/m/solvers/solver_thermal_nonlinear.m

    r4469 r4522  
    3939                t_g= Mergesolutionfromftog( t_f, femmodel.Gmn, femmodel.ys, femmodel.nodesets );
    4040
    41                 displaystring(femmodel.parameters.Verbose,'%s',['   update inputs']);
     41                displaystring(femmodel.parameters.Verbose,'%s',['   updating inputs']);
    4242                femmodel.elements=InputUpdateFromSolution(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,t_g);
    4343       
Note: See TracChangeset for help on using the changeset viewer.