Changeset 3633


Ignore:
Timestamp:
Apr 27, 2010, 4:45:08 PM (16 years ago)
Author:
Eric.Larour
Message:

temporary

Location:
issm/trunk/src/c
Files:
1 added
55 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk/src/c/ConfigureObjectsx/ConfigureObjectsx.cpp

    r3595 r3633  
    2323        loads->Configure(elements,loads,nodes,vertices,materials,parameters);
    2424        //_printf_("      Configuring nodes...\n");
    25         nodes->Configure(elements,loads,nodes,vertices,materials,parameters);
     25        nodes->Configure(nodes);
    2626        //_printf_("      Configuring parameters...\n");
    2727        parameters->Configure(elements,loads, nodes,vertices, materials,parameters);
  • issm/trunk/src/c/DataSet/DataSet.cpp

    r3621 r3633  
    633633                if(EnumIsLoad((*object)->Enum())){
    634634                        load=(Load*)(*object);
    635                         load->Configure(elements,nodes,materials);
     635                        load->Configure(elements,nodes,materials,parameters);
    636636                }
    637637
  • issm/trunk/src/c/DataSet/Inputs.cpp

    r3621 r3633  
    102102}
    103103/*}}}*/
     104/*FUNCTION Inputs::GetParameterValueAtNode(double* pvalue, Node* node, int enum_type){{{1*/
     105void Inputs::GetParameterValueAtNode(double* pvalue,Node* node,int enum_type){
     106
     107        /*given a node, instead of a gauss point, we want to recover a value: probably in an element!: */
     108
     109        vector<Object*>::iterator object;
     110        Input* input=NULL;
     111
     112        /*Go through inputs and check whether any input with the same name is already in: */
     113        for ( object=objects.begin() ; object < objects.end(); object++ ){
     114
     115                input=(Input*)(*object);
     116                if (input->EnumType()==enum_type)break;
     117        }
     118
     119        if (!input){
     120                /*we could not find an input with the correct enum type. No defaults values were provided,
     121                 * error out: */
     122                ISSMERROR("%s%i"," could not find input with enum type ",enum_type);
     123        }
     124
     125        /*Ok, we have an input if we made it here, request the input to return the values: */
     126        input->GetParameterValueAtNode(pvalue,node);
     127}
     128/*}}}*/
    104129/*FUNCTION Inputs::GetParameterValues(double* values,double* gauss_pointers, int numgauss,int enum_type,double* defaultvalues){{{1*/
    105130void GetParameterValues(double* values,double* gauss_pointers, int numgauss,int enum_type,double* defaultvalues){
  • issm/trunk/src/c/DataSet/Inputs.h

    r3621 r3633  
    77
    88class Input;
     9class Node;
    910#include "./DataSet.h"
     11#include "../objects/Node.h"
    1012
    1113class Inputs: public DataSet{
    … …  
    2224                void GetParameterValue(int* pvalue,int enum_type);
    2325                void GetParameterValue(double* pvalue,int enum_type);
     26                void GetParameterValueAtNode(double* pvalue,Node* node,int enum_type);
    2427                void GetParameterValue(double* pvalue,double* gauss,int enum_type);
    2528                void GetParameterValue(double* pvalue,double* gauss,int enum_type,double defaultvalue);
  • issm/trunk/src/c/EnumDefinitions/EnumDefinitions.h

    r3621 r3633  
    160160        SurfaceSlopexEnum,
    161161        SurfaceSlopeyEnum,
     162        BedSlopexEnum,
     163        BedSlopeyEnum,
    162164        WeightsEnum,
    163165        FitEnum,
    … …  
    167169        CollapseEnum,
    168170        TemperatureEnum,
    169         PressureEnum
     171        PressureEnum,
     172        NodeOnBedEnum,
     173        NodeOnSurfaceEnum,
     174        NodeOnIceShelfEnum,
     175        NodeOnIceSheetEnum,
     176        ResetPenaltiesEnum,
     177        MeltingOffsetEnum
    170178        /*}}}*/
    171179
  • issm/trunk/src/c/Makefile.am

    r3621 r3633  
    212212                                        ./EnumDefinitions/EnumDefinitions.h\
    213213                                        ./EnumDefinitions/EnumDefinitions.cpp\
     214                                        ./ModelProcessorx/ModelProcessorx.h\
    214215                                        ./ModelProcessorx/IoModel.h\
    215216                                        ./ModelProcessorx/IoModel.cpp\
    … …  
    625626                                        ./EnumDefinitions/EnumDefinitions.h\
    626627                                        ./EnumDefinitions/EnumDefinitions.cpp\
     628                                        ./ModelProcessorx/ModelProcessorx.h\
    627629                                        ./ModelProcessorx/IoModel.h\
    628630                                        ./ModelProcessorx/IoModel.cpp\
  • issm/trunk/src/c/ModelProcessorx/Balancedthickness/CreateConstraintsBalancedthickness.cpp

    r3588 r3633  
    88#include "../../objects/objects.h"
    99#include "../../shared/shared.h"
    10 #include "../IoModel.h"
     10#include "../ModelProcessorx.h"
    1111
    1212void    CreateConstraintsBalancedthickness(DataSet** pconstraints, IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/Balancedthickness/CreateElementsNodesAndMaterialsBalancedthickness.cpp

    r3625 r3633  
    1010#include "../../include/typedefs.h"
    1111#include "../../MeshPartitionx/MeshPartitionx.h"
    12 #include "../IoModel.h"
     12#include "../ModelProcessorx.h"
    1313
    1414void    CreateElementsNodesAndMaterialsBalancedthickness(DataSet** pelements,DataSet** pnodes, DataSet** pvertices, DataSet** pmaterials, IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/Balancedthickness/CreateLoadsBalancedthickness.cpp

    r3625 r3633  
    88#include "../../shared/shared.h"
    99#include "../../include/macros.h"
    10 #include "../IoModel.h"
     10#include "../ModelProcessorx.h"
    1111
    1212
  • issm/trunk/src/c/ModelProcessorx/Balancedthickness/CreateParametersBalancedthickness.cpp

    r3588 r3633  
    77#include "../../objects/objects.h"
    88#include "../../shared/shared.h"
    9 #include "../IoModel.h"
     9#include "../ModelProcessorx.h"
    1010
    1111void CreateParametersBalancedthickness(DataSet** pparameters,IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/Balancedthickness2/CreateConstraintsBalancedthickness2.cpp

    r3588 r3633  
    88#include "../../objects/objects.h"
    99#include "../../shared/shared.h"
    10 #include "../IoModel.h"
     10#include "../ModelProcessorx.h"
    1111
    1212void    CreateConstraintsBalancedthickness2(DataSet** pconstraints, IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/Balancedthickness2/CreateElementsNodesAndMaterialsBalancedthickness2.cpp

    r3625 r3633  
    1111#include "../../include/typedefs.h"
    1212#include "../../MeshPartitionx/MeshPartitionx.h"
    13 #include "../IoModel.h"
     13#include "../ModelProcessorx.h"
    1414
    1515void    CreateElementsNodesAndMaterialsBalancedthickness2(DataSet** pelements,DataSet** pnodes, DataSet** pvertices,DataSet** pmaterials, IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/Balancedthickness2/CreateLoadsBalancedthickness2.cpp

    r3588 r3633  
    99#include "../../include/macros.h"
    1010#include "../../include/typedefs.h"
    11 #include "../IoModel.h"
     11#include "../ModelProcessorx.h"
    1212
    1313void    CreateLoadsBalancedthickness2(DataSet** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/Balancedthickness2/CreateParametersBalancedthickness2.cpp

    r3588 r3633  
    88#include "../../objects/objects.h"
    99#include "../../shared/shared.h"
    10 #include "../IoModel.h"
     10#include "../ModelProcessorx.h"
    1111
    1212void CreateParametersBalancedthickness2(DataSet** pparameters,IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/Balancedvelocities/CreateConstraintsBalancedvelocities.cpp

    r3567 r3633  
    88#include "../../objects/objects.h"
    99#include "../../shared/shared.h"
    10 #include "../IoModel.h"
     10#include "../ModelProcessorx.h"
    1111
    1212void    CreateConstraintsBalancedvelocities(DataSet** pconstraints, IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/Balancedvelocities/CreateElementsNodesAndMaterialsBalancedvelocities.cpp

    r3625 r3633  
    1010#include "../../MeshPartitionx/MeshPartitionx.h"
    1111#include "../../include/typedefs.h"
    12 #include "../IoModel.h"
     12#include "../ModelProcessorx.h"
    1313
    1414void    CreateElementsNodesAndMaterialsBalancedvelocities(DataSet** pelements,DataSet** pnodes, DataSet** pvertices,DataSet** pmaterials, IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/Balancedvelocities/CreateLoadsBalancedvelocities.cpp

    r3625 r3633  
    88#include "../../shared/shared.h"
    99#include "../../include/macros.h"
    10 #include "../IoModel.h"
     10#include "../ModelProcessorx.h"
    1111
    1212
  • issm/trunk/src/c/ModelProcessorx/Balancedvelocities/CreateParametersBalancedvelocities.cpp

    r3460 r3633  
    88#include "../../objects/objects.h"
    99#include "../../shared/shared.h"
    10 #include "../IoModel.h"
     10#include "../ModelProcessorx.h"
    1111
    1212void CreateParametersBalancedvelocities(DataSet** pparameters,IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/Control/CreateParametersControl.cpp

    r3570 r3633  
    99#include "../../shared/shared.h"
    1010#include "../../include/macros.h"
    11 #include "../IoModel.h"
     11#include "../ModelProcessorx.h"
    1212
    1313void CreateParametersControl(DataSet** pparameters,IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/DiagnosticHoriz/CreateConstraintsDiagnosticHoriz.cpp

    r3567 r3633  
    88#include "../../objects/objects.h"
    99#include "../../shared/shared.h"
    10 #include "../IoModel.h"
     10#include "../ModelProcessorx.h"
    1111
    1212
  • issm/trunk/src/c/ModelProcessorx/DiagnosticHoriz/CreateElementsNodesAndMaterialsDiagnosticHoriz.cpp

    r3625 r3633  
    1010#include "../../MeshPartitionx/MeshPartitionx.h"
    1111#include "../../include/typedefs.h"
    12 #include "../IoModel.h"
     12#include "../ModelProcessorx.h"
    1313
    1414void    CreateElementsNodesAndMaterialsDiagnosticHoriz(DataSet** pelements,DataSet** pnodes, DataSet** pvertices,DataSet** pmaterials, IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/DiagnosticHoriz/CreateLoadsDiagnosticHoriz.cpp

    r3625 r3633  
    88#include "../../shared/shared.h"
    99#include "../../include/macros.h"
    10 #include "../IoModel.h"
     10#include "../ModelProcessorx.h"
    1111
    1212void    CreateLoadsDiagnosticHoriz(DataSet** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/DiagnosticHoriz/CreateParametersDiagnosticHoriz.cpp

    r3458 r3633  
    88#include "../../objects/objects.h"
    99#include "../../shared/shared.h"
    10 #include "../IoModel.h"
     10#include "../ModelProcessorx.h"
    1111
    1212void CreateParametersDiagnosticHoriz(DataSet** pparameters,IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/DiagnosticHutter/CreateConstraintsDiagnosticHutter.cpp

    r3567 r3633  
    88#include "../../objects/objects.h"
    99#include "../../shared/shared.h"
    10 #include "../IoModel.h"
     10#include "../ModelProcessorx.h"
    1111
    1212void    CreateConstraintsDiagnosticHutter(DataSet** pconstraints, IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/DiagnosticHutter/CreateElementsNodesAndMaterialsDiagnosticHutter.cpp

    r3625 r3633  
    1010#include "../../MeshPartitionx/MeshPartitionx.h"
    1111#include "../../include/typedefs.h"
    12 #include "../IoModel.h"
     12#include "../ModelProcessorx.h"
    1313
    1414void    CreateElementsNodesAndMaterialsDiagnosticHutter(DataSet** pelements,DataSet** pnodes, DataSet** pvertices,DataSet** pmaterials, IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/DiagnosticHutter/CreateLoadsDiagnosticHutter.cpp

    r3567 r3633  
    88#include "../../shared/shared.h"
    99#include "../../include/macros.h"
    10 #include "../IoModel.h"
     10#include "../ModelProcessorx.h"
    1111
    1212void    CreateLoadsDiagnosticHutter(DataSet** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/DiagnosticStokes/CreateConstraintsDiagnosticStokes.cpp

    r3567 r3633  
    88#include "../../objects/objects.h"
    99#include "../../shared/shared.h"
    10 #include "../IoModel.h"
     10#include "../ModelProcessorx.h"
    1111
    1212void    CreateConstraintsDiagnosticStokes(DataSet** pconstraints, IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/DiagnosticStokes/CreateElementsNodesAndMaterialsDiagnosticStokes.cpp

    r3625 r3633  
    1111#include "../../include/typedefs.h"
    1212#include "../../MeshPartitionx/MeshPartitionx.h"
    13 #include "../IoModel.h"
     13#include "../ModelProcessorx.h"
    1414
    1515void    CreateElementsNodesAndMaterialsDiagnosticStokes(DataSet** pelements,DataSet** pnodes, DataSet** pvertices,DataSet** pmaterials, IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/DiagnosticStokes/CreateLoadsDiagnosticStokes.cpp

    r3625 r3633  
    88#include "../../shared/shared.h"
    99#include "../../include/macros.h"
    10 #include "../IoModel.h"
     10#include "../ModelProcessorx.h"
    1111
    1212void    CreateLoadsDiagnosticStokes(DataSet** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/DiagnosticVert/CreateConstraintsDiagnosticVert.cpp

    r3567 r3633  
    88#include "../../objects/objects.h"
    99#include "../../shared/shared.h"
    10 #include "../IoModel.h"
     10#include "../ModelProcessorx.h"
    1111
    1212void    CreateConstraintsDiagnosticVert(DataSet** pconstraints, IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/DiagnosticVert/CreateElementsNodesAndMaterialsDiagnosticVert.cpp

    r3625 r3633  
    1010#include "../../MeshPartitionx/MeshPartitionx.h"
    1111#include "../../include/typedefs.h"
    12 #include "../IoModel.h"
     12#include "../ModelProcessorx.h"
    1313
    1414void    CreateElementsNodesAndMaterialsDiagnosticVert(DataSet** pelements,DataSet** pnodes, DataSet** pvertices,DataSet** pmaterials, IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/DiagnosticVert/CreateLoadsDiagnosticVert.cpp

    r3567 r3633  
    88#include "../../shared/shared.h"
    99#include "../../include/macros.h"
    10 #include "../IoModel.h"
     10#include "../ModelProcessorx.h"
    1111
    1212void    CreateLoadsDiagnosticVert(DataSet** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/IoModel.cpp

    r3612 r3633  
    11/*! \file IoModel.cpp
    2  * \brief  IoModel structure that mirrors the matlab workspace structure. Servers for the serial
    3  * and parallel runs.
     2 * \brief  file containing the methods that will help in processing the input data coming
     3 * into ISSM, from Matlab, or through a binary file opened for reading.
    44 */
    55
    … …  
    1414#include "../include/globals.h"
    1515#include "../include/macros.h"
    16 
    1716#include <string.h>
    1817#include "stdio.h"
    … …  
    2019#include "./IoModel.h"
    2120
    22 
    23 /*!--------------------------------------------------
    24         NewIoModel
    25   --------------------------------------------------*/
    26 
    27 IoModel* NewIoModel(void) {
    28         /*! create a new IoModel object */
    29         IoModel* iomodel=NULL;
    30 
    31         iomodel=(IoModel*)xmalloc(sizeof(IoModel));
    32 
    33         /*!initialize all pointers to 0: */
    34         iomodel->name=NULL;
    35         iomodel->inputfilename=NULL;
    36         iomodel->outputfilename=NULL;
    37         iomodel->repository=NULL;
    38         iomodel->meshtype=NULL;
    39         iomodel->analysis_type=0;
    40         iomodel->sub_analysis_type=0;
    41         iomodel->qmu_analysis=0;
    42         iomodel->control_analysis=0;
    43         iomodel->solverstring=NULL;
    44         iomodel->numberofresponses=0;
    45         iomodel->numberofvariables=0;
    46         iomodel->qmu_npart=0;
    47         iomodel->numberofelements=0;
    48         iomodel->numberofvertices=0;
    49         iomodel->x=NULL;
    50         iomodel->y=NULL;
    51         iomodel->z=NULL;
    52         iomodel->elements=NULL;
    53         iomodel->elements_type=NULL;
    54         iomodel->numberofvertices2d=0;
    55         iomodel->elements2d=NULL;
    56         iomodel->deadgrids=NULL;
    57         iomodel->numlayers=0;
    58         iomodel->uppernodes=NULL;
    59         iomodel->gridonhutter=NULL;
    60         iomodel->gridonmacayeal=NULL;
    61         iomodel->gridonpattyn=NULL;
    62        
    63         iomodel->vx_obs=NULL;
    64         iomodel->vy_obs=NULL;
    65         iomodel->vx=NULL;
    66         iomodel->vy=NULL;
    67         iomodel->vz=NULL;
    68         iomodel->pressure=NULL;
    69         iomodel->temperature=NULL;
    70         iomodel->melting=NULL;
    71         iomodel->geothermalflux=NULL;
    72         iomodel->elementonbed=NULL;
    73         iomodel->elementonsurface=NULL;
    74         iomodel->gridonbed=NULL;
    75         iomodel->gridonsurface=NULL;
    76         iomodel->gridonstokes=NULL;
    77         iomodel->borderstokes=NULL;
    78         iomodel->thickness=NULL;
    79         iomodel->surface=NULL;
    80         iomodel->bed=NULL;
    81         iomodel->elementoniceshelf=NULL;
    82         iomodel->elementonwater=NULL;
    83         iomodel->gridonicesheet=NULL;
    84         iomodel->gridoniceshelf=NULL;
    85 
    86         iomodel->drag_type=0;
    87         iomodel->drag_cofficient=NULL;
    88         iomodel->drag_p=NULL;
    89         iomodel->drag_q=NULL;
    90        
    91        
    92         iomodel->numberofpressureloads=0;
    93         iomodel->pressureload=NULL;
    94         iomodel-> spcvelocity=NULL;
    95         iomodel-> spctemperature=NULL;
    96         iomodel-> spcthickness=NULL;
    97         iomodel->numberofedges=0;
    98         iomodel->edges=NULL;
    99        
    100         /*!materials: */
    101         iomodel->rho_water=0;
    102         iomodel->rho_ice=0;
    103         iomodel->g=0;
    104         iomodel->rheology_n=NULL;
    105         iomodel->rheology_B=NULL;
    106 
    107         /*!control methods: */
    108         iomodel->control_type=NULL;
    109 
    110         /*!solution parameters: */
    111         iomodel->fit=NULL;
    112         iomodel->weights=NULL;
    113         iomodel->cm_jump=NULL;
    114         iomodel->meanvel=0;
    115         iomodel->epsvel=0;
    116         iomodel->artificial_diffusivity=0;
    117         iomodel->nsteps=0;
    118         iomodel->eps_cm=0;
    119         iomodel->tolx=0;
    120         iomodel->maxiter=NULL;
    121         iomodel->cm_noisedmp=0;
    122         iomodel->cm_mindmp_value=0;
    123         iomodel->cm_mindmp_slope=0;
    124         iomodel->cm_maxdmp_value=0;
    125         iomodel->cm_maxdmp_slope=0;
    126         iomodel->cm_min=0;
    127         iomodel->cm_max=0;
    128         iomodel->cm_gradient=0;
    129         iomodel->verbose=0;
    130         iomodel->plot=0;
    131         iomodel->eps_res=0;
    132         iomodel->eps_rel=0;
    133         iomodel->eps_abs=0;
    134         iomodel->max_nonlinear_iterations=0;
    135         iomodel->dt=0;
    136         iomodel->ndt=0;
    137         iomodel->penalty_offset=0;
    138         iomodel->penalty_melting=0;
    139         iomodel->penalty_lock=0;
    140         iomodel->sparsity=0;
    141         iomodel->connectivity=0;
    142         iomodel->lowmem=0;
    143         iomodel->optscal=NULL;
    144         iomodel->yts=0;
    145         iomodel->viscosity_overshoot=0;
    146         iomodel->artdiff=0;
    147         iomodel->stokesreconditioning=0;
    148         iomodel->waitonlock=0;
    149 
    150         /*!thermal parameters: */
    151         iomodel->beta=0;
    152         iomodel->meltingpoint=0;
    153         iomodel->latentheat=0;
    154         iomodel->heatcapacity=0;
    155         iomodel->thermalconductivity=0;
    156         iomodel->min_thermal_constraints=0;
    157         iomodel->min_mechanical_constraints=0;
    158         iomodel->stabilize_constraints=0;
    159         iomodel->mixed_layer_capacity=0;
    160         iomodel->thermal_exchange_velocity=0;
    161 
    162        
    163         iomodel->numrifts=0;
    164         iomodel->riftinfo=NULL;
    165 
    166         /*!penalties: */
    167         iomodel->numpenalties=0;
    168         iomodel->penalties=NULL;
    169         iomodel->penaltypartitioning=NULL;
    170 
    171         /*!basal: */
    172         iomodel->accumulation_rate=NULL;
    173         iomodel->dhdt=NULL;
    174        
    175         /*parameter output: */
    176         iomodel->numoutput=0;
    177 
    178         /*elements type: */
    179         iomodel->ishutter=0;
    180         iomodel->ismacayealpattyn=0;
    181         iomodel->isstokes=0;
    182 
    183         /*exterior data: */
    184         iomodel->my_elements=NULL;
    185         iomodel->my_vertices=NULL;
    186         iomodel->my_nodes=NULL;
    187         iomodel->my_bordervertices=NULL;
    188         iomodel->penaltypartitioning=NULL;
    189 
    190         return iomodel;
     21/*FUNCTION IoModel::IoModel(){{{1*/
     22IoModel::IoModel(){
     23        this->IoModelInit();
    19124}
    192 
    193 
    194 /*!--------------------------------------------------
    195         DeleteIoModel
    196   --------------------------------------------------*/
    197 
    198 void DeleteIoModel(IoModel** piomodel){
    199 
    200         /*!Recover structure: */
    201         IoModel* iomodel = *piomodel;
     25/*}}}*/
     26/*FUNCTION IoModel::~IoModel(){{{1*/
     27IoModel::~IoModel(){
    20228       
    20329        int i;
    … …  
    285111        xfree((void**)&iomodel->my_bordervertices);
    286112        xfree((void**)&iomodel->penaltypartitioning);
    287 
    288         /*!Delete entire structure: */
    289         xfree((void**)piomodel);
    290113        #endif
    291114}
    292 
    293 /*!--------------------------------------------------
    294         IoModelInit
    295   --------------------------------------------------*/
    296 
    297 int     IoModelInit(IoModel** piomodel,ConstDataHandle iomodel_handle){
    298 
     115/*}}}*/
     116/*FUNCTION IoModel::IoModel(ConstDataHandle iomodel_handle){{{1*/
     117IoModel::IoModel(ConstDataHandle iomodel_handle){
     118       
    299119        int i,j;
    300        
    301         /*output: */
    302         IoModel* iomodel=NULL;
    303 
    304         /*Allocate iomodel: */
    305         iomodel=NewIoModel();
    306 
    307         /*In IoModelInit, we get all the data that is not difficult to get, and that is small: */
     120               
     121        /*First, initialize the structure: */
     122        this->IoModelInit();
     123       
     124        /*Get all the data that consists of scalars, integers and strings: */
     125
    308126        IoModelFetchData(&iomodel->name,iomodel_handle,"name");
    309127        IoModelFetchData(&iomodel->inputfilename,iomodel_handle,"inputfilename");
    … …  
    406224        return 1;
    407225}
    408 
    409 /*!--------------------------------------------------
    410         IoModelEcho
    411   --------------------------------------------------*/
    412 void IoModelEcho(IoModel* iomodel,int which_part,int rank) {
     226/*}}}*/
     227/*FUNCTION IoModel::IoModelInit(void){{{1*/
     228void IoModel::IoModelInit(void){
     229       
     230        /*!initialize all pointers to 0: */
     231        iomodel->name=NULL;
     232        iomodel->inputfilename=NULL;
     233        iomodel->outputfilename=NULL;
     234        iomodel->repository=NULL;
     235        iomodel->meshtype=NULL;
     236        iomodel->analysis_type=0;
     237        iomodel->sub_analysis_type=0;
     238        iomodel->qmu_analysis=0;
     239        iomodel->control_analysis=0;
     240        iomodel->solverstring=NULL;
     241        iomodel->numberofresponses=0;
     242        iomodel->numberofvariables=0;
     243        iomodel->qmu_npart=0;
     244        iomodel->numberofelements=0;
     245        iomodel->numberofvertices=0;
     246        iomodel->x=NULL;
     247        iomodel->y=NULL;
     248        iomodel->z=NULL;
     249        iomodel->elements=NULL;
     250        iomodel->elements_type=NULL;
     251        iomodel->numberofvertices2d=0;
     252        iomodel->elements2d=NULL;
     253        iomodel->deadgrids=NULL;
     254        iomodel->numlayers=0;
     255        iomodel->uppernodes=NULL;
     256        iomodel->gridonhutter=NULL;
     257        iomodel->gridonmacayeal=NULL;
     258        iomodel->gridonpattyn=NULL;
     259       
     260        iomodel->vx_obs=NULL;
     261        iomodel->vy_obs=NULL;
     262        iomodel->vx=NULL;
     263        iomodel->vy=NULL;
     264        iomodel->vz=NULL;
     265        iomodel->pressure=NULL;
     266        iomodel->temperature=NULL;
     267        iomodel->melting=NULL;
     268        iomodel->geothermalflux=NULL;
     269        iomodel->elementonbed=NULL;
     270        iomodel->elementonsurface=NULL;
     271        iomodel->gridonbed=NULL;
     272        iomodel->gridonsurface=NULL;
     273        iomodel->gridonstokes=NULL;
     274        iomodel->borderstokes=NULL;
     275        iomodel->thickness=NULL;
     276        iomodel->surface=NULL;
     277        iomodel->bed=NULL;
     278        iomodel->elementoniceshelf=NULL;
     279        iomodel->elementonwater=NULL;
     280        iomodel->gridonicesheet=NULL;
     281        iomodel->gridoniceshelf=NULL;
     282
     283        iomodel->drag_type=0;
     284        iomodel->drag_cofficient=NULL;
     285        iomodel->drag_p=NULL;
     286        iomodel->drag_q=NULL;
     287       
     288       
     289        iomodel->numberofpressureloads=0;
     290        iomodel->pressureload=NULL;
     291        iomodel-> spcvelocity=NULL;
     292        iomodel-> spctemperature=NULL;
     293        iomodel-> spcthickness=NULL;
     294        iomodel->numberofedges=0;
     295        iomodel->edges=NULL;
     296       
     297        /*!materials: */
     298        iomodel->rho_water=0;
     299        iomodel->rho_ice=0;
     300        iomodel->g=0;
     301        iomodel->rheology_n=NULL;
     302        iomodel->rheology_B=NULL;
     303
     304        /*!control methods: */
     305        iomodel->control_type=NULL;
     306
     307        /*!solution parameters: */
     308        iomodel->fit=NULL;
     309        iomodel->weights=NULL;
     310        iomodel->cm_jump=NULL;
     311        iomodel->meanvel=0;
     312        iomodel->epsvel=0;
     313        iomodel->artificial_diffusivity=0;
     314        iomodel->nsteps=0;
     315        iomodel->eps_cm=0;
     316        iomodel->tolx=0;
     317        iomodel->maxiter=NULL;
     318        iomodel->cm_noisedmp=0;
     319        iomodel->cm_mindmp_value=0;
     320        iomodel->cm_mindmp_slope=0;
     321        iomodel->cm_maxdmp_value=0;
     322        iomodel->cm_maxdmp_slope=0;
     323        iomodel->cm_min=0;
     324        iomodel->cm_max=0;
     325        iomodel->cm_gradient=0;
     326        iomodel->verbose=0;
     327        iomodel->plot=0;
     328        iomodel->eps_res=0;
     329        iomodel->eps_rel=0;
     330        iomodel->eps_abs=0;
     331        iomodel->max_nonlinear_iterations=0;
     332        iomodel->dt=0;
     333        iomodel->ndt=0;
     334        iomodel->penalty_offset=0;
     335        iomodel->penalty_melting=0;
     336        iomodel->penalty_lock=0;
     337        iomodel->sparsity=0;
     338        iomodel->connectivity=0;
     339        iomodel->lowmem=0;
     340        iomodel->optscal=NULL;
     341        iomodel->yts=0;
     342        iomodel->viscosity_overshoot=0;
     343        iomodel->artdiff=0;
     344        iomodel->stokesreconditioning=0;
     345        iomodel->waitonlock=0;
     346
     347        /*!thermal parameters: */
     348        iomodel->beta=0;
     349        iomodel->meltingpoint=0;
     350        iomodel->latentheat=0;
     351        iomodel->heatcapacity=0;
     352        iomodel->thermalconductivity=0;
     353        iomodel->min_thermal_constraints=0;
     354        iomodel->min_mechanical_constraints=0;
     355        iomodel->stabilize_constraints=0;
     356        iomodel->mixed_layer_capacity=0;
     357        iomodel->thermal_exchange_velocity=0;
     358
     359       
     360        iomodel->numrifts=0;
     361        iomodel->riftinfo=NULL;
     362
     363        /*!penalties: */
     364        iomodel->numpenalties=0;
     365        iomodel->penalties=NULL;
     366        iomodel->penaltypartitioning=NULL;
     367
     368        /*!basal: */
     369        iomodel->accumulation_rate=NULL;
     370        iomodel->dhdt=NULL;
     371       
     372        /*parameter output: */
     373        iomodel->numoutput=0;
     374
     375        /*elements type: */
     376        iomodel->ishutter=0;
     377        iomodel->ismacayealpattyn=0;
     378        iomodel->isstokes=0;
     379
     380        /*exterior data: */
     381        iomodel->my_elements=NULL;
     382        iomodel->my_vertices=NULL;
     383        iomodel->my_nodes=NULL;
     384        iomodel->my_bordervertices=NULL;
     385        iomodel->penaltypartitioning=NULL;
     386}
     387/*}}}*/
     388/*FUNCTION IoModel::Echo(int which_part,int rank){{{1*/
     389void IoModel::Echo(int which_part,int rank) {
    413390
    414391        //which_part  determines what gets echoed, otherwise, we'll get too much output.
    … …  
    429406                }
    430407        }
    431        
    432         return;
    433408}
     409/*}}}*/
  • issm/trunk/src/c/ModelProcessorx/IoModel.h

    r3621 r3633  
    11/* \file IoModel.h
    2  * \brief  Header file defining the IoModel structure and processing of input data.
     2 * \brief  Header file defining the IoModel structure that will help in processing the input data coming
     3 * into ISSM, from Matlab, or through a binary file opened for reading.
    34 * \sa IoModel.cpp
    45 */
    … …  
    89
    910#include "../io/io.h"
    10 #include "../DataSet/DataSet.h"
    11 #include "../DataSet/Parameters.h"
    12 #include "../toolkits/toolkits.h"
    1311
    14 #define RIFTINFOSIZE 11
     12class IoModel {
    1513
    16 struct IoModel {
     14        public:
    1715
    18         char*   name;
    19         char*     inputfilename;
    20         char*     outputfilename;
    21         char*   repository;
    22         char*   meshtype;
    23         int     analysis_type;
    24         int     sub_analysis_type;
    25         int     qmu_analysis;
    26         int     control_analysis;
    27         char*   solverstring;
     16                /*Data: {{{1*/
     17                char*   name;
     18                char*     inputfilename;
     19                char*     outputfilename;
     20                char*   repository;
     21                char*   meshtype;
     22                int     analysis_type;
     23                int     sub_analysis_type;
     24                int     qmu_analysis;
     25                int     control_analysis;
     26                char*   solverstring;
    2827
    29         /*2d mesh: */
    30         int     numberofelements;
    31         int     numberofvertices;
    32         double* x;
    33         double* y;
    34         double* z;
    35         double* elements;
    36         double* elements_type;
     28                /*2d mesh: */
     29                int     numberofelements;
     30                int     numberofvertices;
     31                double* x;
     32                double* y;
     33                double* z;
     34                double* elements;
     35                double* elements_type;
    3736
    38         /*3d mesh: */
    39         int     numberofvertices2d;
    40         int     numberofelements2d;
    41         double* elements2d;
    42         double* deadgrids;
    43         int     numlayers;
    44         double* uppernodes;
     37                /*3d mesh: */
     38                int     numberofvertices2d;
     39                int     numberofelements2d;
     40                double* elements2d;
     41                double* deadgrids;
     42                int     numlayers;
     43                double* uppernodes;
    4544
    46         /*elements type: */
    47         int     ishutter;
    48         int     ismacayealpattyn;
    49         int     isstokes;
    50         double* gridonhutter;
    51         double* gridonmacayeal;
    52         double* gridonpattyn;
     45                /*elements type: */
     46                int     ishutter;
     47                int     ismacayealpattyn;
     48                int     isstokes;
     49                double* gridonhutter;
     50                double* gridonmacayeal;
     51                double* gridonpattyn;
    5352
    54         /*results: */
    55         double* vx;
    56         double* vy;
    57         double* vz;
    58         double* pressure;
    59         double* temperature;
     53                /*results: */
     54                double* vx;
     55                double* vy;
     56                double* vz;
     57                double* pressure;
     58                double* temperature;
    6059
    61         /*observations: */
    62         double*  vx_obs;
    63         double*  vy_obs;
     60                /*observations: */
     61                double*  vx_obs;
     62                double*  vy_obs;
    6463
    65         /*qmu: */
    66         int      numberofresponses;
    67         int      numberofvariables;
    68         int      qmu_npart;
     64                /*qmu: */
     65                int      numberofresponses;
     66                int      numberofvariables;
     67                int      qmu_npart;
    6968
    70         /*geometry: */
    71         double* elementonbed;
    72         double* elementonsurface;
    73         double* gridonbed;
    74         double* gridonsurface;
    75         double* gridonstokes;
    76         double* borderstokes;
    77         double* thickness;
    78         double* surface;
    79         double* bed;
    80         double* elementoniceshelf;
    81         double* elementonwater;
    82         double* gridonicesheet;
    83         double* gridoniceshelf;
     69                /*geometry: */
     70                double* elementonbed;
     71                double* elementonsurface;
     72                double* gridonbed;
     73                double* gridonsurface;
     74                double* gridonstokes;
     75                double* borderstokes;
     76                double* thickness;
     77                double* surface;
     78                double* bed;
     79                double* elementoniceshelf;
     80                double* elementonwater;
     81                double* gridonicesheet;
     82                double* gridoniceshelf;
    8483
    85         /*friction: */
    86         int     drag_type;
    87         double* drag_coefficient;
    88         double* drag_p;
    89         double* drag_q;
     84                /*friction: */
     85                int     drag_type;
     86                double* drag_coefficient;
     87                double* drag_p;
     88                double* drag_q;
    9089
    91         /*boundary conditions: */
    92         int     numberofpressureloads;
    93         double* pressureload;
    94         double* spcvelocity;
    95         double* spctemperature;
    96         double* spcthickness;
    97         double* geothermalflux;
    98         int     numberofedges;
    99         double* edges;
    100        
    101         /*materials: */
    102         double  rho_water,rho_ice;
    103         double  g;
    104         double* rheology_B;
    105         double* rheology_n;
     90                /*boundary conditions: */
     91                int     numberofpressureloads;
     92                double* pressureload;
     93                double* spcvelocity;
     94                double* spctemperature;
     95                double* spcthickness;
     96                double* geothermalflux;
     97                int     numberofedges;
     98                double* edges;
    10699
    107         /*numerical parameters: */
    108         double  meanvel;
    109         double  epsvel;
    110         int     artdiff;
    111         double  viscosity_overshoot;
    112         double  stokesreconditioning;
    113         double  cm_noisedmp;
    114         double  cm_mindmp_value;
    115         double  cm_mindmp_slope;
    116         double  cm_maxdmp_value;
    117         double  cm_maxdmp_slope;
    118         double  cm_min;
    119         double  cm_max;
    120         int     cm_gradient;;
     100                /*materials: */
     101                double  rho_water,rho_ice;
     102                double  g;
     103                double* rheology_B;
     104                double* rheology_n;
    121105
    122         double  cm_noisedampening;
     106                /*numerical parameters: */
     107                double  meanvel;
     108                double  epsvel;
     109                int     artdiff;
     110                double  viscosity_overshoot;
     111                double  stokesreconditioning;
     112                double  cm_noisedmp;
     113                double  cm_mindmp_value;
     114                double  cm_mindmp_slope;
     115                double  cm_maxdmp_value;
     116                double  cm_maxdmp_slope;
     117                double  cm_min;
     118                double  cm_max;
     119                int     cm_gradient;;
    123120
    124         /*control methods: */
    125         char*   control_type;
     121                double  cm_noisedampening;
    126122
    127         /*solution parameters: */
    128         double* fit;
    129         double* weights;
    130         double* cm_jump;
    131         int     artificial_diffusivity;
    132         int     nsteps;
    133         double  eps_cm;
    134         double  tolx;
    135         double* maxiter;
    136         int     verbose;
    137         int     plot;
    138         double  eps_res;
    139         double  eps_rel;
    140         double  eps_abs;
    141         double  max_nonlinear_iterations;
    142         double  dt,ndt;
    143         double  penalty_offset;
    144         double  penalty_melting;
    145         int     penalty_lock;
    146         double  sparsity;
    147         int     connectivity;
    148         int     lowmem;
    149         double* optscal;
    150         double  yts;
    151         double  waitonlock;
     123                /*control methods: */
     124                char*   control_type;
    152125
    153         /*thermal parameters: */
    154         double beta;
    155         double meltingpoint;
    156         double latentheat;
    157         double  heatcapacity,thermalconductivity;
    158         int    min_thermal_constraints;
    159         int    min_mechanical_constraints;
    160         int    stabilize_constraints;
    161         double mixed_layer_capacity;
    162         double thermal_exchange_velocity;
     126                /*solution parameters: */
     127                double* fit;
     128                double* weights;
     129                double* cm_jump;
     130                int     artificial_diffusivity;
     131                int     nsteps;
     132                double  eps_cm;
     133                double  tolx;
     134                double* maxiter;
     135                int     verbose;
     136                int     plot;
     137                double  eps_res;
     138                double  eps_rel;
     139                double  eps_abs;
     140                double  max_nonlinear_iterations;
     141                double  dt,ndt;
     142                double  penalty_offset;
     143                double  penalty_melting;
     144                int     penalty_lock;
     145                double  sparsity;
     146                int     connectivity;
     147                int     lowmem;
     148                double* optscal;
     149                double  yts;
     150                double  waitonlock;
    163151
    164         /*rifts: */
    165         int      numrifts;
    166         double*  riftinfo;
     152                /*thermal parameters: */
     153                double beta;
     154                double meltingpoint;
     155                double latentheat;
     156                double  heatcapacity,thermalconductivity;
     157                int    min_thermal_constraints;
     158                int    min_mechanical_constraints;
     159                int    stabilize_constraints;
     160                double mixed_layer_capacity;
     161                double thermal_exchange_velocity;
    167162
    168         /*penalties: */
    169         int      numpenalties;
    170         double*  penalties;
    171        
    172         /*basal: */
    173         double*  melting_rate;
    174         double*  accumulation_rate;
    175         double*  dhdt;
     163                /*rifts: */
     164                int      numrifts;
     165                double*  riftinfo;
    176166
    177         /*parameter output: */
    178         int      numoutput;
     167                /*penalties: */
     168                int      numpenalties;
     169                double*  penalties;
    179170
    180         /*exterior partitioning data, to be carried around: */
    181         bool*   my_elements;
    182         bool*   my_vertices;
    183         bool*   my_nodes;
    184         bool*   my_bordervertices;
    185         int*    penaltypartitioning;
     171                /*basal: */
     172                double*  melting_rate;
     173                double*  accumulation_rate;
     174                double*  dhdt;
     175
     176                /*parameter output: */
     177                int      numoutput;
     178
     179                /*exterior partitioning data, to be carried around: */
     180                bool*   my_elements;
     181                bool*   my_vertices;
     182                bool*   my_nodes;
     183                bool*   my_bordervertices;
     184                int*    penaltypartitioning;
     185                int*    singlenodetoelementconnectivity;
     186                /*}}}*/
     187                /*Methods: {{{1*/
     188                ~IoModel();
     189                IoModel();
     190                IoModel(ConstDataHandle iomodel_handle);
     191                void IoModelInit(void);
     192                void Echo(int which_part,int rank);
     193                /*}}}*/
    186194
    187195};
    188196
    189 
    190         /*constructor and destructor: */
    191         IoModel*        NewIoModel(void);
    192         void     DeleteIoModel( IoModel** pthis);
    193 
    194         /*Echo: */
    195         void  IoModelEcho(IoModel* iomodel,int which_part,int rank);
    196 
    197         /*Initialization with matlab workspace data, or marshall binary data: */
    198         int     IoModelInit(IoModel** piomodel,ConstDataHandle iomodel_handle);
    199 
    200         /*Creation of fem datasets: general drivers*/
    201         void  CreateDataSets(DataSet** pelements,DataSet** pnodes, DataSet** pvertices, DataSet** pmaterials, DataSet** pconstraints, DataSet** ploads,Parameters** pparameters,IoModel* iomodel,ConstDataHandle iomodel_handle);
    202         void  CreateParameters(Parameters** pparameters,IoModel* iomodel,ConstDataHandle iomodel_handle);
    203 
    204        
    205         /*Create of fem datasets: specialised drivers: */
    206        
    207         /*diagnostic horizontal*/
    208         void    CreateElementsNodesAndMaterialsDiagnosticHoriz(DataSet** pelements,DataSet** pnodes, DataSet** pvertices, DataSet** pmaterials, IoModel* iomodel,ConstDataHandle iomodel_handle);
    209         void    CreateConstraintsDiagnosticHoriz(DataSet** pconstraints,IoModel* iomodel,ConstDataHandle iomodel_handle);
    210         void  CreateLoadsDiagnosticHoriz(DataSet** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
    211         void  CreateParametersDiagnosticHoriz(Parameters** pparameters,IoModel* iomodel,ConstDataHandle iomodel_handle);
    212 
    213         /*diagnostic vertical*/
    214         void    CreateElementsNodesAndMaterialsDiagnosticVert(DataSet** pelements,DataSet** pnodes, DataSet** pvertices, DataSet** pmaterials, IoModel* iomodel,ConstDataHandle iomodel_handle);
    215         void    CreateConstraintsDiagnosticVert(DataSet** pconstraints,IoModel* iomodel,ConstDataHandle iomodel_handle);
    216         void  CreateLoadsDiagnosticVert(DataSet** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
    217 
    218         /*diagnostic hutter*/
    219         void    CreateElementsNodesAndMaterialsDiagnosticHutter(DataSet** pelements,DataSet** pnodes, DataSet** pvertices, DataSet** pmaterials, IoModel* iomodel,ConstDataHandle iomodel_handle);
    220         void    CreateConstraintsDiagnosticHutter(DataSet** pconstraints,IoModel* iomodel,ConstDataHandle iomodel_handle);
    221         void  CreateLoadsDiagnosticHutter(DataSet** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
    222 
    223         /*diagnostic stokes*/
    224         void    CreateElementsNodesAndMaterialsDiagnosticStokes(DataSet** pelements,DataSet** pnodes, DataSet** pvertices, DataSet** pmaterials, IoModel* iomodel,ConstDataHandle iomodel_handle);
    225         void    CreateConstraintsDiagnosticStokes(DataSet** pconstraints,IoModel* iomodel,ConstDataHandle iomodel_handle);
    226         void  CreateLoadsDiagnosticStokes(DataSet** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
    227 
    228         /*slope compute*/
    229         void    CreateElementsNodesAndMaterialsSlopeCompute(DataSet** pelements,DataSet** pnodes, DataSet** pvertices, DataSet** pmaterials, IoModel* iomodel,ConstDataHandle iomodel_handle);
    230         void    CreateConstraintsSlopeCompute(DataSet** pconstraints,IoModel* iomodel,ConstDataHandle iomodel_handle);
    231         void  CreateLoadsSlopeCompute(DataSet** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
    232 
    233         /*control:*/
    234         void  CreateParametersControl(Parameters** pparameters,IoModel* iomodel,ConstDataHandle iomodel_handle);
    235 
    236         /*thermal:*/
    237         void    CreateElementsNodesAndMaterialsThermal(DataSet** pelements,DataSet** pnodes, DataSet** pvertices, DataSet** pmaterials, IoModel* iomodel,ConstDataHandle iomodel_handle);
    238         void    CreateConstraintsThermal(DataSet** pconstraints,IoModel* iomodel,ConstDataHandle iomodel_handle);
    239         void  CreateLoadsThermal(DataSet** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
    240         void  CreateParametersThermal(Parameters** pparameters,IoModel* iomodel,ConstDataHandle iomodel_handle);
    241 
    242         /*melting:*/
    243         void    CreateElementsNodesAndMaterialsMelting(DataSet** pelements,DataSet** pnodes, DataSet** pvertices, DataSet** pmaterials, IoModel* iomodel,ConstDataHandle iomodel_handle);
    244         void    CreateConstraintsMelting(DataSet** pconstraints,IoModel* iomodel,ConstDataHandle iomodel_handle);
    245         void  CreateLoadsMelting(DataSet** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
    246         void  CreateParametersMelting(Parameters** pparameters,IoModel* iomodel,ConstDataHandle iomodel_handle);
    247 
    248         /*prognostic:*/
    249         void    CreateElementsNodesAndMaterialsPrognostic(DataSet** pelements,DataSet** pnodes, DataSet** pvertices, DataSet** pmaterials, IoModel* iomodel,ConstDataHandle iomodel_handle);
    250         void    CreateConstraintsPrognostic(DataSet** pconstraints,IoModel* iomodel,ConstDataHandle iomodel_handle);
    251         void  CreateLoadsPrognostic(DataSet** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
    252         void  CreateParametersPrognostic(Parameters** pparameters,IoModel* iomodel,ConstDataHandle iomodel_handle);
    253 
    254         /*prognostic2:*/
    255         void    CreateElementsNodesAndMaterialsPrognostic2(DataSet** pelements,DataSet** pnodes, DataSet** pvertices, DataSet** pmaterials, IoModel* iomodel,ConstDataHandle iomodel_handle);
    256         void    CreateConstraintsPrognostic2(DataSet** pconstraints,IoModel* iomodel,ConstDataHandle iomodel_handle);
    257         void  CreateLoadsPrognostic2(DataSet** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
    258         void  CreateParametersPrognostic2(Parameters** pparameters,IoModel* iomodel,ConstDataHandle iomodel_handle);
    259 
    260         /*balancedthickness:*/
    261         void    CreateElementsNodesAndMaterialsBalancedthickness(DataSet** pelements,DataSet** pnodes, DataSet** pvertices, DataSet** pmaterials, IoModel* iomodel,ConstDataHandle iomodel_handle);
    262         void    CreateConstraintsBalancedthickness(DataSet** pconstraints,IoModel* iomodel,ConstDataHandle iomodel_handle);
    263         void  CreateLoadsBalancedthickness(DataSet** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
    264         void  CreateParametersBalancedthickness(Parameters** pparameters,IoModel* iomodel,ConstDataHandle iomodel_handle);
    265 
    266         /*balancedthickness2:*/
    267         void    CreateElementsNodesAndMaterialsBalancedthickness2(DataSet** pelements,DataSet** pnodes, DataSet** pvertices, DataSet** pmaterials, IoModel* iomodel,ConstDataHandle iomodel_handle);
    268         void    CreateConstraintsBalancedthickness2(DataSet** pconstraints,IoModel* iomodel,ConstDataHandle iomodel_handle);
    269         void  CreateLoadsBalancedthickness2(DataSet** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
    270         void  CreateParametersBalancedthickness2(Parameters** pparameters,IoModel* iomodel,ConstDataHandle iomodel_handle);
    271 
    272         /*balancedvelocities:*/
    273         void    CreateElementsNodesAndMaterialsBalancedvelocities(DataSet** pelements,DataSet** pnodes, DataSet** pvertices, DataSet** pmaterials, IoModel* iomodel,ConstDataHandle iomodel_handle);
    274         void    CreateConstraintsBalancedvelocities(DataSet** pconstraints,IoModel* iomodel,ConstDataHandle iomodel_handle);
    275         void  CreateLoadsBalancedvelocities(DataSet** ploads, IoModel* iomodel, ConstDataHandle iomodel_handle);
    276         void  CreateParametersBalancedvelocities(Parameters** pparameters,IoModel* iomodel,ConstDataHandle iomodel_handle);
    277 
    278         /*qmu: */
    279         void CreateParametersQmu(Parameters** pparameters,IoModel* iomodel,ConstDataHandle iomodel_handle);
    280 
    281        
    282         /*partitioning: */
    283         void  Partitioning(bool** pmy_elements, bool** pmy_vertices, bool** pmy_nodes, bool** pmy_bordervertices, IoModel* iomodel, ConstDataHandle iomodel_handle);
    284 
    285197#endif  /* _IOMODEL_H */
  • issm/trunk/src/c/ModelProcessorx/Melting/CreateConstraintsMelting.cpp

    r3567 r3633  
    88#include "../../objects/objects.h"
    99#include "../../shared/shared.h"
    10 #include "../IoModel.h"
     10#include "../ModelProcessorx.h"
    1111
    1212void    CreateConstraintsMelting(DataSet** pconstraints, IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/Melting/CreateElementsNodesAndMaterialsMelting.cpp

    r3625 r3633  
    1010#include "../../shared/shared.h"
    1111#include "../../MeshPartitionx/MeshPartitionx.h"
    12 #include "../IoModel.h"
     12#include "../ModelProcessorx.h"
    1313
    1414void    CreateElementsNodesAndMaterialsMelting(DataSet** pelements,DataSet** pnodes, DataSet** pvertices,DataSet** pmaterials, IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/Melting/CreateLoadsMelting.cpp

    r3625 r3633  
    88#include "../../shared/shared.h"
    99#include "../../include/macros.h"
    10 #include "../IoModel.h"
     10#include "../ModelProcessorx.h"
    1111
    1212void    CreateLoadsMelting(DataSet** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/Melting/CreateParametersMelting.cpp

    r3460 r3633  
    88#include "../../objects/objects.h"
    99#include "../../shared/shared.h"
    10 #include "../IoModel.h"
     10#include "../ModelProcessorx.h"
    1111
    1212void CreateParametersMelting(DataSet** pparameters,IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/Prognostic/CreateConstraintsPrognostic.cpp

    r3567 r3633  
    88#include "../../objects/objects.h"
    99#include "../../shared/shared.h"
    10 #include "../IoModel.h"
     10#include "../ModelProcessorx.h"
    1111
    1212void    CreateConstraintsPrognostic(DataSet** pconstraints, IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/Prognostic/CreateElementsNodesAndMaterialsPrognostic.cpp

    r3625 r3633  
    1010#include "../../MeshPartitionx/MeshPartitionx.h"
    1111#include "../../include/typedefs.h"
    12 #include "../IoModel.h"
     12#include "../ModelProcessorx.h"
    1313
    1414void    CreateElementsNodesAndMaterialsPrognostic(DataSet** pelements,DataSet** pnodes, DataSet** pvertices,DataSet** pmaterials, IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/Prognostic/CreateLoadsPrognostic.cpp

    r3625 r3633  
    88#include "../../shared/shared.h"
    99#include "../../include/macros.h"
    10 #include "../IoModel.h"
     10#include "../ModelProcessorx.h"
    1111
    1212void    CreateLoadsPrognostic(DataSet** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/Prognostic/CreateParametersPrognostic.cpp

    r3462 r3633  
    99#include "../../objects/objects.h"
    1010#include "../../shared/shared.h"
    11 #include "../IoModel.h"
     11#include "../ModelProcessorx.h"
    1212
    1313void CreateParametersPrognostic(DataSet** pparameters,IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/Prognostic2/CreateConstraintsPrognostic2.cpp

    r3567 r3633  
    88#include "../../objects/objects.h"
    99#include "../../shared/shared.h"
    10 #include "../IoModel.h"
     10#include "../ModelProcessorx.h"
    1111
    1212void    CreateConstraintsPrognostic2(DataSet** pconstraints, IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/Prognostic2/CreateElementsNodesAndMaterialsPrognostic2.cpp

    r3625 r3633  
    1111#include "../../include/typedefs.h"
    1212#include "../../MeshPartitionx/MeshPartitionx.h"
    13 #include "../IoModel.h"
     13#include "../ModelProcessorx.h"
    1414
    1515void    CreateElementsNodesAndMaterialsPrognostic2(DataSet** pelements,DataSet** pnodes, DataSet** pvertices,DataSet** pmaterials, IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/Prognostic2/CreateLoadsPrognostic2.cpp

    r3570 r3633  
    99#include "../../include/macros.h"
    1010#include "../../include/typedefs.h"
    11 #include "../IoModel.h"
     11#include "../ModelProcessorx.h"
    1212
    1313void    CreateLoadsPrognostic2(DataSet** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/Prognostic2/CreateParametersPrognostic2.cpp

    r3534 r3633  
    99#include "../../objects/objects.h"
    1010#include "../../shared/shared.h"
    11 #include "../IoModel.h"
     11#include "../ModelProcessorx.h"
    1212
    1313void CreateParametersPrognostic2(DataSet** pparameters,IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/Qmu/CreateParametersQmu.cpp

    r3595 r3633  
    1010#include "../../include/macros.h"
    1111#include "../../MeshPartitionx/MeshPartitionx.h"
    12 #include "../IoModel.h"
     12#include "../ModelProcessorx.h"
    1313
    1414void CreateParametersQmu(DataSet** pparameters,IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/SlopeCompute/CreateConstraintsSlopeCompute.cpp

    r3567 r3633  
    88#include "../../objects/objects.h"
    99#include "../../shared/shared.h"
    10 #include "../IoModel.h"
     10#include "../ModelProcessorx.h"
    1111
    1212void    CreateConstraintsSlopeCompute(DataSet** pconstraints, IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/SlopeCompute/CreateElementsNodesAndMaterialsSlopeCompute.cpp

    r3625 r3633  
    1010#include "../../include/typedefs.h"
    1111#include "../../MeshPartitionx/MeshPartitionx.h"
    12 #include "../IoModel.h"
     12#include "../ModelProcessorx.h"
    1313
    1414void    CreateElementsNodesAndMaterialsSlopeCompute(DataSet** pelements,DataSet** pnodes, DataSet** pvertices,DataSet** pmaterials, IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/SlopeCompute/CreateLoadsSlopeCompute.cpp

    r3567 r3633  
    88#include "../../shared/shared.h"
    99#include "../../include/macros.h"
    10 #include "../IoModel.h"
     10#include "../ModelProcessorx.h"
    1111
    1212void    CreateLoadsSlopeCompute(DataSet** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/Thermal/CreateConstraintsThermal.cpp

    r3567 r3633  
    88#include "../../objects/objects.h"
    99#include "../../shared/shared.h"
    10 #include "../IoModel.h"
     10#include "../ModelProcessorx.h"
    1111
    1212void    CreateConstraintsThermal(DataSet** pconstraints, IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/Thermal/CreateElementsNodesAndMaterialsThermal.cpp

    r3625 r3633  
    1010#include "../../shared/shared.h"
    1111#include "../../MeshPartitionx/MeshPartitionx.h"
    12 #include "../IoModel.h"
     12#include "../ModelProcessorx.h"
    1313
    1414void    CreateElementsNodesAndMaterialsThermal(DataSet** pelements,DataSet** pnodes, DataSet** pvertices,DataSet** pmaterials, IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/Thermal/CreateLoadsThermal.cpp

    r3625 r3633  
    88#include "../../shared/shared.h"
    99#include "../../include/macros.h"
    10 #include "../IoModel.h"
     10#include "../ModelProcessorx.h"
    1111
    1212void    CreateLoadsThermal(DataSet** ploads, IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/ModelProcessorx/Thermal/CreateParametersThermal.cpp

    r3570 r3633  
    99#include "../../shared/shared.h"
    1010#include "../../include/macros.h"
    11 #include "../IoModel.h"
     11#include "../ModelProcessorx.h"
    1212
    1313void CreateParametersThermal(DataSet** pparameters,IoModel* iomodel,ConstDataHandle iomodel_handle){
  • issm/trunk/src/c/issm.h

    r3612 r3633  
    1919
    2020/*Modules: */
    21 #include "./ModelProcessorx/IoModel.h"
     21#include "./ModelProcessorx/ModelProcessorx.h"
    2222#include "./Dofx/Dofx.h"
    2323#include "./Dux/Dux.h"
Note: See TracChangeset for help on using the changeset viewer.