Changeset 14588


Ignore:
Timestamp:
04/15/13 15:39:11 (12 years ago)
Author:
Eric.Larour
Message:

CHG: initial gia solution, returning 0 deflection vector

Location:
issm/trunk-jpl
Files:
7 added
7 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk-jpl/src/c/Makefile.am

    r14562 r14588  
    491491#}}}
    492492#Gia sources  {{{
    493 gia_sources =  ./solutions/gia_core.cpp
     493gia_sources =  ./solutions/gia_core.cpp\
     494                           ./modules/ModelProcessorx/Gia/UpdateElementsGia.cpp\
     495                           ./modules/ModelProcessorx/Gia/CreateNodesGia.cpp \
     496                           ./modules/ModelProcessorx/Gia/CreateConstraintsGia.cpp\
     497                           ./modules/ModelProcessorx/Gia/CreateLoadsGia.cpp
     498
    494499#}}}
    495500#Groundingline sources  {{{
  • issm/trunk-jpl/src/c/classes/objects/Elements/Tria.cpp

    r14555 r14588  
    17341734                case BalancethicknessAnalysisEnum:
    17351735                        InputUpdateFromSolutionOneDof(solution,ThicknessEnum);
     1736                        break;
     1737                #endif
     1738                #ifdef _HAVE_GIA_
     1739                case GiaAnalysisEnum:
     1740                        InputUpdateFromSolutionOneDof(solution,GiaWEnum);
    17361741                        break;
    17371742                #endif
  • issm/trunk-jpl/src/c/modules/ModelProcessorx/CreateDataSets.cpp

    r13622 r14588  
    9696                #endif
    9797
     98                #ifdef _HAVE_GIA_
     99                case GiaAnalysisEnum:
     100                        CreateNodesGia(pnodes, iomodel);
     101                        CreateConstraintsGia(pconstraints,iomodel);
     102                        CreateLoadsGia(ploads,iomodel);
     103                        UpdateElementsGia(elements,iomodel,analysis_counter,analysis_type);
     104                        break;
     105                #endif
     106
    98107                #ifdef _HAVE_SLOPE_
    99108                case BedSlopeAnalysisEnum:
  • issm/trunk-jpl/src/c/modules/ModelProcessorx/DistributeNumDofs.cpp

    r13787 r14588  
    8989                numdofs=1;
    9090        }
     91        else if (analysis_type==GiaAnalysisEnum){
     92                numdofs=1;
     93        }
    9194        else if (analysis_type==BalancethicknessAnalysisEnum){
    9295                numdofs=1;
  • issm/trunk-jpl/src/c/modules/ModelProcessorx/ModelProcessorx.h

    r14562 r14588  
    4646void  CreateLoadsDiagnosticHutter(Loads** ploads, IoModel* iomodel);
    4747void    UpdateElementsDiagnosticHutter(Elements* elements,IoModel* iomodel,int analysis_counter,int analysis_type);
     48
     49#ifdef _HAVE_GIA_
     50/*gia*/
     51void    CreateNodesGia(Nodes** pnodes,IoModel* iomodel);
     52void    CreateConstraintsGia(Constraints** pconstraints,IoModel* iomodel);
     53void    CreateLoadsGia(Loads** ploads, IoModel* iomodel);
     54void    UpdateElementsGia(Elements* elements,IoModel* iomodel,int analysis_counter,int analysis_type);
     55#endif
    4856
    4957/*bed slope*/
  • issm/trunk-jpl/src/c/solutions/gia_core.cpp

    r14545 r14588  
    1212
    1313void gia_core(FemModel* femmodel){
     14       
     15        Vector<IssmDouble>*  wg  = NULL;
    1416
    1517        /*parameters: */
    1618        bool save_results;
     19        int  gsize;
     20        int  configuration_type;
    1721
    1822        /*Recover some parameters: */
    1923        femmodel->parameters->FindParam(&save_results,SaveResultsEnum);
    20 
     24        femmodel->parameters->FindParam(&configuration_type,ConfigurationTypeEnum);
     25       
    2126        if(VerboseSolution()) _pprintLine_("   computing GIA");
    2227
    2328        /*Call on core computations: */
    2429        femmodel->SetCurrentConfiguration(GiaAnalysisEnum);
    25         solver_linear(femmodel);
     30
     31        /*Figure out size of g-set deflection vector and allocate solution vector: */
     32        gsize      = femmodel->nodes->NumberOfDofs(configuration_type,GsetEnum);
     33        wg = new Vector<IssmDouble>(gsize);
     34
     35        /*call the main module: */
     36        //Deflection();
     37       
     38        InputUpdateFromSolutionx( femmodel->elements,femmodel->nodes, femmodel->vertices, femmodel->loads, femmodel->materials, femmodel->parameters,wg);
    2639
    2740        if(save_results){
  • issm/trunk-jpl/test/NightlyRun/test330.m

    r14538 r14588  
    44md=parameterize(md,'../Par/SquareShelfConstrained.par');
    55md=setflowequation(md,'macayeal','all');
    6 md.verbose=verbose('solution',true,'convergence',true,'mprocessor',true);
    7 md.cluster=generic('name',oshostname(),'np',3);
     6md.verbose=verbose('solution',true,'convergence',true,'mprocessor',true,'module',true);
     7md.cluster=generic('name',oshostname(),'np',1);
    88md=solve(md,GiaSolutionEnum());
    99
    1010%Fields and tolerances to track changes
    11 field_names     ={'W'};
     11field_names     ={'GiaW'};
    1212field_tolerances={1e-13};
    1313field_values={...
    14         (md.results.DiagnosticSolution.W)};
     14        (md.results.GiaSolution.GiaW)};
Note: See TracChangeset for help on using the changeset viewer.