Ignore:
Timestamp:
08/25/09 13:04:05 (16 years ago)
Author:
Eric.Larour
Message:

Model and FemModel are now classes in their own right.
This changes the cores quite a bit.

File:
1 edited

Legend:

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

    r1831 r1881  
    5757        int dof3[1]={3};
    5858
    59         /*recover fem models: */
    60         fem_dh=model->DiagnosticHorizontal();
    61         fem_dv=model->DiagnosticVertical();
    62         fem_ds=model->DiagnosticStokes();
    63         fem_dhu=model->DiagnosticHutter();
    64         fem_sl=model->Slope();
    6559
    6660        //first recover parameters common to all solutions
    67         fem_dh->parameters->FindParam((void*)&debug,"debug");
    68         fem_dh->parameters->FindParam((void*)&dim,"dim");
    69         fem_dhu->parameters->FindParam((void*)&ishutter,"ishutter");
    70         fem_dh->parameters->FindParam((void*)&ismacayealpattyn,"ismacayealpattyn");
    71         fem_dh->parameters->FindParam((void*)&numberofnodes,"numberofnodes");
    72         fem_ds->parameters->FindParam((void*)&isstokes,"isstokes");
    73         fem_ds->parameters->FindParam((void*)&stokesreconditioning,"stokesreconditioning");
    74         fem_dh->parameters->FindParam((void*)&numrifts,"numrifts");
     61        model->FindParam(&debug,"debug");
     62        model->FindParam(&dim,"dim");
     63        model->FindParam(&ishutter,"ishutter");
     64        model->FindParam(&ismacayealpattyn,"ismacayealpattyn");
     65        model->FindParam(&numberofnodes,"numberofnodes");
     66        model->FindParam(&isstokes,"isstokes");
     67        model->FindParam(&stokesreconditioning,"stokesreconditioning");
     68        model->FindParam(&numrifts,"numrifts");
     69
     70        /*recover fem models: */
     71        fem_dh=model->GetFormulation(DiagnosticAnalysisEnum(),HorizAnalysisEnum());
     72        fem_dv=model->GetFormulation(DiagnosticAnalysisEnum(),VertAnalysisEnum());
     73        fem_ds=model->GetFormulation(DiagnosticAnalysisEnum(),StokesAnalysisEnum());
     74        fem_dhu=model->GetFormulation(DiagnosticAnalysisEnum(),HutterAnalysisEnum());
     75        fem_sl=model->GetFormulation(SlopeComputeAnalysisEnum(),NoneAnalysisEnum());
    7576
    7677        //specific parameters for specific models
    77         fem_dh->parameters->FindParam((void*)&numberofdofspernode_dh,"numberofdofspernode");
    78         fem_sl->parameters->FindParam((void*)&numberofdofspernode_sl,"numberofdofspernode");
    79         fem_ds->parameters->FindParam((void*)&numberofdofspernode_ds,"numberofdofspernode");
     78        fem_dh->FindParam((void*)&numberofdofspernode_dh,"numberofdofspernode");
     79        fem_sl->FindParam((void*)&numberofdofspernode_sl,"numberofdofspernode");
     80        fem_ds->FindParam((void*)&numberofdofspernode_ds,"numberofdofspernode");
    8081
    8182        if(ishutter){
     
    126127
    127128                if(debug)_printf_("%s\n"," extruding horizontal velocities...");
    128                 VecDuplicatePatch(&ug_horiz,ug); FieldExtrudex( ug_horiz,fem_dh->elements,fem_dh->nodes, fem_dh->loads,fem_dh-> materials,"velocity",1);
     129                VecDuplicatePatch(&ug_horiz,ug); FieldExtrudex( ug_horiz,fem_dh->elements,fem_dh->nodes, fem_dh->loads,fem_dh->materials,"velocity",1);
    129130
    130131                if(debug)_printf_("%s\n"," computing vertical velocities...");
Note: See TracChangeset for help on using the changeset viewer.