Changeset 3403


Ignore:
Timestamp:
04/06/10 09:29:35 (15 years ago)
Author:
seroussi
Message:

Modified Hutter Model Processor for Hooks

File:
1 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk/src/c/ModelProcessorx/DiagnosticHutter/CreateElementsNodesAndMaterialsDiagnosticHutter.cpp

    r3332 r3403  
    1010#include "../../shared/shared.h"
    1111#include "../../MeshPartitionx/MeshPartitionx.h"
     12#include "../../include/typedefs.h"
    1213#include "../IoModel.h"
    1314
     
    3132        Beam*       beam   = NULL;
    3233        Sing*       sing   = NULL;
     34        ElementProperties* sing_properties=NULL;
     35        ElementProperties* beam_properties=NULL;
    3336
    3437        /*output: */
     
    4952        /*sing constructor input: */
    5053        int   sing_id;
    51         int   sing_mid;
    52         int   sing_mparid;
    53         int   sing_numparid;
    54         int   sing_g;
    55         double sing_h,sing_k;
     54        int   sing_matice_id;
     55        int   sing_matpar_id;
     56        int   sing_numpar_id;
     57        int   sing_node_ids[1];
     58        double sing_h[1],sing_k[1];
    5659
    5760        /*beam constructor input: */
    5861        int   beam_id;
    59         int   beam_mid;
    60         int   beam_mparid;
    61         int   beam_numparid;
    62         int   beam_g[2];
     62        int   beam_matice_id;
     63        int   beam_matpar_id;
     64        int   beam_numpar_id;
     65        int   beam_node_ids[2];
    6366        double beam_h[2];
    6467        double beam_s[2];
     
    112115        /*Width of elements: */
    113116        if(strcmp(iomodel->meshtype,"2d")==0){
    114                 elements_width=3; //tria elements
     117                elements_width=1; //sing elements
    115118        }
    116119        else{
    117                 elements_width=6; //penta elements
     120                elements_width=2; //beam elements
    118121        }
    119122
     
    222225                                /*Deal with sing element: */
    223226                                sing_id=i+1;
    224                                 sing_mid=i+1; //refers to the corresponding material property card
    225                                 sing_mparid=iomodel->numberofnodes+1;//refers to the corresponding matpar property card
    226                                 sing_numparid=1;
    227                                 sing_g=i+1;
    228                                 sing_h=iomodel->thickness[i];
    229                                 sing_k=iomodel->drag[i];
     227                                sing_matice_id=i+1; //refers to the corresponding material property card
     228                                sing_matpar_id=iomodel->numberofnodes+1;//refers to the corresponding matpar property card
     229                                sing_numpar_id=1;
     230                                sing_node_ids[0]=i+1;
     231                                sing_h[0]=iomodel->thickness[i];
     232                                sing_k[0]=iomodel->drag[i];
     233
     234                                /*Create properties: */
     235                                sing_properties=new ElementProperties(1,sing_h,NULL,NULL, sing_k,NULL,NULL, NULL, UNDEF, (double)UNDEF, (double)UNDEF, UNDEF, UNDEF,true, UNDEF,UNDEF,UNDEF);
    230236
    231237                                /*Create sing element using its constructor:*/
    232                                 sing=new Sing(sing_id, sing_mid, sing_mparid, sing_numparid, sing_g, sing_h, sing_k);
    233 
    234                                 /*Add tria element to elements dataset: */
     238                                sing=new Sing(sing_id, sing_node_ids, sing_matice_id, sing_matpar_id, sing_numpar_id, sing_properties);
     239
     240                                /*delete properties: */
     241                                delete sing_properties;
     242
     243                                /*Add sing element to elements dataset: */
    235244                                elements->AddObject(sing);
    236245
     
    267276                                        /*Deal with sing element: */
    268277                                        beam_id=i+1;
    269                                         beam_mid=i+1; //refers to the corresponding material property card
    270                                         beam_mparid=iomodel->numberofnodes-iomodel->numberofnodes2d+1;//refers to the corresponding matpar property card
    271                                         beam_numparid=1;
    272                                         beam_g[0]=i+1;
    273                                         beam_g[1]=(int)iomodel->uppernodes[i]; //grid that lays right on top
     278                                        beam_matice_id=i+1; //refers to the corresponding material property card
     279                                        beam_matpar_id=iomodel->numberofnodes-iomodel->numberofnodes2d+1;//refers to the corresponding matpar property card
     280                                        beam_numpar_id=1;
     281                                        beam_node_ids[0]=i+1;
     282                                        beam_node_ids[1]=(int)iomodel->uppernodes[i]; //grid that lays right on top
    274283                                        beam_h[0]=iomodel->thickness[i];
    275284                                        beam_h[1]=iomodel->thickness[(int)(iomodel->uppernodes[i]-1)];
     
    283292                                        beam_onbed=(bool)iomodel->gridonbed[i];
    284293
    285                                         /*Create beam element ubeam its constructor:*/
    286                                         beam=new Beam(beam_id, beam_mid, beam_mparid, beam_numparid,beam_g, beam_h, beam_s,beam_b,beam_k,beam_onbed);
     294                                        /*Create element properties: */
     295                                        beam_properties=new ElementProperties(2,beam_h, beam_s, beam_b, beam_k, NULL,NULL, NULL, UNDEF, NULL, NULL, UNDEF, beam_onbed, (bool)UNDEF, UNDEF, UNDEF, UNDEF);
     296
     297                                        /*Create Beam using its constructor:*/
     298                                        beam= new Beam(beam_id,beam_node_ids, beam_matice_id, beam_matpar_id, beam_numpar_id, beam_properties);
     299
     300                                        /*delete properties: */
     301                                        delete beam_properties;
    287302
    288303                                        /*Add tria element to elements dataset: */
Note: See TracChangeset for help on using the changeset viewer.