Salome HOME
Merge from V5_1_main branch 24/11/2010
[modules/smesh.git] / src / DriverUNV / UNV2412_Structure.cxx
index 893fa2391936c68d5fbee7e1ca3c1dfd7660a2bf..35cb62afe8cd553ad1515cd8596047ede9ab4b2d 100644 (file)
@@ -30,11 +30,155 @@ using namespace std;
 using namespace UNV;
 using namespace UNV2412;
 
-#ifdef _DEBUG_
-static int MYDEBUG = 1;
-#else
-static int MYDEBUG = 0;
-#endif
+// Universal Dataset Number 2412
+
+// Name:   Elements
+// Status: Current
+// Owner:  Simulation
+// Revision Date: 14-AUG-1992
+// -----------------------------------------------------------------------
+// Record 1:        FORMAT(6I10)
+//                  Field 1       -- element label
+//                  Field 2       -- fe descriptor id
+//                  Field 3       -- physical property table number
+//                  Field 4       -- material property table number
+//                  Field 5       -- color
+//                  Field 6       -- number of nodes on element
+// Record 2:  *** FOR NON-BEAM ELEMENTS ***
+//                  FORMAT(8I10)
+//                  Fields 1-n    -- node labels defining element
+// Record 2:  *** FOR BEAM ELEMENTS ONLY ***
+//                  FORMAT(3I10)
+//                  Field 1       -- beam orientation node number
+//                  Field 2       -- beam fore-end cross section number
+//                  Field 3       -- beam  aft-end cross section number
+// Record 3:  *** FOR BEAM ELEMENTS ONLY ***
+//                  FORMAT(8I10)
+//                  Fields 1-n    -- node labels defining element
+// Records 1 and 2 are repeated for each non-beam element in the model.
+// Records 1 - 3 are repeated for each beam element in the model.
+// Example:
+//     -1
+//   2412
+//          1        11         1      5380         7         2
+//          0         1         1
+//          1         2
+//          2        21         2      5380         7         2
+//          0         1         1
+//          3         4
+//          3        22         3      5380         7         2
+//          0         1         2
+//          5         6
+//          6        91         6      5380         7         3
+//         11        18        12
+//          9        95         6      5380         7         8
+//         22        25        29        30        31        26        24        23
+//         14       136         8         0         7         2
+//         53        54
+//         36       116        16      5380         7        20
+//        152       159       168       167       166       158       150       151
+//        154       170       169       153       157       161       173       172
+//        171       160       155       156
+//     -1
+
+// FE Descriptor Id definitions
+// ____________________________
+
+//    11  Rod
+//    21  Linear beam
+//    22  Tapered beam
+//    23  Curved beam
+//    24  Parabolic beam
+//    31  Straight pipe
+//    32  Curved pipe
+//    41  Plane Stress Linear Triangle
+//    42  Plane Stress Parabolic Triangle
+//    43  Plane Stress Cubic Triangle
+//    44  Plane Stress Linear Quadrilateral
+//    45  Plane Stress Parabolic Quadrilateral
+//    46  Plane Strain Cubic Quadrilateral
+//    51  Plane Strain Linear Triangle
+//    52  Plane Strain Parabolic Triangle
+//    53  Plane Strain Cubic Triangle
+//    54  Plane Strain Linear Quadrilateral
+//    55  Plane Strain Parabolic Quadrilateral
+//    56  Plane Strain Cubic Quadrilateral
+//    61  Plate Linear Triangle
+//    62  Plate Parabolic Triangle
+//    63  Plate Cubic Triangle
+//    64  Plate Linear Quadrilateral
+//    65  Plate Parabolic Quadrilateral
+//    66  Plate Cubic Quadrilateral
+//    71  Membrane Linear Quadrilateral
+//    72  Membrane Parabolic Triangle
+//    73  Membrane Cubic Triangle
+//    74  Membrane Linear Triangle
+//    75  Membrane Parabolic Quadrilateral
+//    76  Membrane Cubic Quadrilateral
+//    81  Axisymetric Solid Linear Triangle
+//    82  Axisymetric Solid Parabolic Triangle
+//    84  Axisymetric Solid Linear Quadrilateral
+//    85  Axisymetric Solid Parabolic Quadrilateral
+//    91  Thin Shell Linear Triangle
+//    92  Thin Shell Parabolic Triangle
+//    93  Thin Shell Cubic Triangle
+//    94  Thin Shell Linear Quadrilateral
+//    95  Thin Shell Parabolic Quadrilateral
+//    96  Thin Shell Cubic Quadrilateral
+//    101 Thick Shell Linear Wedge
+//    102 Thick Shell Parabolic Wedge
+//    103 Thick Shell Cubic Wedge
+//    104 Thick Shell Linear Brick
+//    105 Thick Shell Parabolic Brick
+//    106 Thick Shell Cubic Brick
+//    111 Solid Linear Tetrahedron
+//    112 Solid Linear Wedge
+//    113 Solid Parabolic Wedge
+//    114 Solid Cubic Wedge
+//    115 Solid Linear Brick
+//    116 Solid Parabolic Brick
+//    117 Solid Cubic Brick
+//    118 Solid Parabolic Tetrahedron
+//    121 Rigid Bar
+//    122 Rigid Element
+//    136 Node To Node Translational Spring
+//    137 Node To Node Rotational Spring
+//    138 Node To Ground Translational Spring
+//    139 Node To Ground Rotational Spring
+//    141 Node To Node Damper
+//    142 Node To Gound Damper
+//    151 Node To Node Gap
+//    152 Node To Ground Gap
+//    161 Lumped Mass
+//    171 Axisymetric Linear Shell
+//    172 Axisymetric Parabolic Shell
+//    181 Constraint
+//    191 Plastic Cold Runner
+//    192 Plastic Hot Runner
+//    193 Plastic Water Line
+//    194 Plastic Fountain
+//    195 Plastic Baffle
+//    196 Plastic Rod Heater
+//    201 Linear node-to-node interface
+//    202 Linear edge-to-edge interface
+//    203 Parabolic edge-to-edge interface
+//    204 Linear face-to-face interface
+//    208 Parabolic face-to-face interface
+//    212 Linear axisymmetric interface
+//    213 Parabolic axisymmetric interface
+//    221 Linear rigid surface
+//    222 Parabolic rigin surface
+//    231 Axisymetric linear rigid surface
+//    232 Axisymentric parabolic rigid surface
+
+
 
 static string _label_dataset = "2412";
 
@@ -158,31 +302,34 @@ bool UNV2412::IsBeam(int theFeDescriptorId){
 
 
 bool UNV2412::IsFace(int theFeDescriptorId){
-  switch (theFeDescriptorId){
+  return ( 41 <= theFeDescriptorId && theFeDescriptorId <= 96 );
+//   switch (theFeDescriptorId){
     
-  case 71: // TRI3
-  case 72:
-  case 74:
+//   case 71: // TRI3
+//   case 72:
+//   case 74:
 
-  case 41: // Plane Stress Linear Triangle - TRI3
-  case 91: // Thin Shell Linear Triangle - TRI3
+//   case 41: // Plane Stress Linear Triangle - TRI3
+//   case 51: // Plane Strain Linear Triangle
+//   case 91: // Thin Shell Linear Triangle - TRI3
 
-  case 42: // Plane Stress Quadratic Triangle - TRI6
-  case 92: // Thin Shell Quadratic Triangle - TRI6
+//   case 42: // Plane Stress Quadratic Triangle - TRI6
+//   case 52: // Plane Strain Parabolic Triangle
+//   case 92: // Thin Shell Quadratic Triangle - TRI6
 
-  case 43: // Plane Stress Cubic Triangle
+//   case 43: // Plane Stress Cubic Triangle
 
-  case 44: // Plane Stress Linear Quadrilateral - QUAD4
-  case 94: // Thin Shell   Linear Quadrilateral -  QUAD4
+//   case 44: // Plane Stress Linear Quadrilateral - QUAD4
+//   case 94: // Thin Shell   Linear Quadrilateral -  QUAD4
 
-  case 45: // Plane Stress Quadratic Quadrilateral - QUAD8
-  case 95: // Thin Shell   Quadratic Quadrilateral - QUAD8
+//   case 45: // Plane Stress Quadratic Quadrilateral - QUAD8
+//   case 95: // Thin Shell   Quadratic Quadrilateral - QUAD8
 
-  case 46: // Plane Stress Cubic Quadrilateral
+//   case 46: // Plane Stress Cubic Quadrilateral
 
-    return true;
-  }
-  return false;
+//     return true;
+//   }
+//  return false;
 }