Changeset 1827


Ignore:
Timestamp:
08/24/09 17:47:13 (16 years ago)
Author:
Eric.Larour
Message:

Brachning back from issm.controlstatic, by hand

File:
1 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk/src/c/parallel/prognostic.cpp

    r1719 r1827  
    2626        int   waitonlock=0;
    2727
    28         FemModel fem;
     28        Model* model=NULL;
    2929
    3030        Vec     h_g=NULL;
     
    6565        fid=pfopen(inputfilename,"rb");
    6666
     67        /*Initialize model structure: */
     68        model=new Model();
     69
    6770        _printf_("read and create finite element model:\n");
    68         CreateFemModel(&fem,fid,PrognosticAnalysisEnum(),NoneAnalysisEnum());
     71        CreateFemModel(model->Prognostic(),fid,PrognosticAnalysisEnum(),NoneAnalysisEnum());
    6972
    7073        //retrieve parameters used to fill inputs
    71         fem.parameters->FindParam((void*)&u_g_serial,"u_g");
    72         fem.parameters->FindParam((void*)&h_g_initial,"h_g");
    73         fem.parameters->FindParam((void*)&melting_g,"m_g");
    74         fem.parameters->FindParam((void*)&accumulation_g,"a_g");
    75         fem.parameters->FindParam((void*)&dt,"dt");
    76         fem.parameters->FindParam((void*)&yts,"yts");
    77         fem.parameters->FindParam((void*)&numberofnodes,"numberofnodes");
     74        model->Prognostic()->parameters->FindParam((void*)&u_g_serial,"u_g");
     75        model->Prognostic()->parameters->FindParam((void*)&h_g_initial,"h_g");
     76        model->Prognostic()->parameters->FindParam((void*)&melting_g,"m_g");
     77        model->Prognostic()->parameters->FindParam((void*)&accumulation_g,"a_g");
     78        model->Prognostic()->parameters->FindParam((void*)&dt,"dt");
     79        model->Prognostic()->parameters->FindParam((void*)&yts,"yts");
     80        model->Prognostic()->parameters->FindParam((void*)&numberofnodes,"numberofnodes");
    7881
    7982        _printf_("initialize inputs:\n");
     
    8992
    9093        /*are we running the solutoin sequence, or a qmu wrapper around it? : */
    91         fem.parameters->FindParam((void*)&qmu_analysis,"qmu_analysis");
     94        model->Prognostic()->parameters->FindParam((void*)&qmu_analysis,"qmu_analysis");
    9295        if(!qmu_analysis){
    9396
    9497                /*run prognostic analysis: */
    9598                _printf_("call computational core:\n");
    96                 prognostic_core(results,&fem,inputs);
     99                prognostic_core(results,model,inputs);
    97100
    98101        }
     
    103106       
    104107                #ifdef _HAVE_DAKOTA_
    105                 Qmux(&fem,inputs,PrognosticAnalysisEnum(),NoneAnalysisEnum());
     108                Qmux(model,inputs,PrognosticAnalysisEnum(),NoneAnalysisEnum());
    106109                #else
    107110                throw ErrorException(__FUNCT__," Dakota not present, cannot do qmu!");
     
    114117       
    115118        _printf_("process results:\n");
    116         ProcessResults(&results,&fem,PrognosticAnalysisEnum());
     119        ProcessResults(&results,model,PrognosticAnalysisEnum());
    117120       
    118121        _printf_("write results to disk:\n");
     
    120123
    121124        _printf_("write lock file:\n");
    122         fem.parameters->FindParam((void*)&waitonlock,"waitonlock");
     125        model->Prognostic()->parameters->FindParam((void*)&waitonlock,"waitonlock");
    123126        if (waitonlock){
    124127                WriteLockFile(lockname);
Note: See TracChangeset for help on using the changeset viewer.