Changeset 3633


Ignore:
Timestamp:
04/27/10 16:45:08 (15 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.