44#include <sys/resource.h>
56#include "h3dpublic_defs.h"
57#include "h3dpublic_export.h"
61#include "h3d_values.h"
69void c_h3d_create_rbe2_(
int *ITAB,
int *NUMNOD,
int *IRBE2,
int *NRBE2L,
int *LRBE2,
int *NRBE2,
int *COMPID_RBE2S)
79 char RBE2POOL[] =
"Rbe2";
83 char RIGIDPOOL[] =
"Rigid";
87 unsigned int elem_count = 1;
92 if(*COMPID_RBE2S != 0 && *NRBE2 != 0)
95 H3D_ELEM_CONFIG_RIGIDLINK, *COMPID_RBE2S,
99 elem_id = IRBE2[*NRBE2L * i + 1];
100 nsn = IRBE2[*NRBE2L * i + 4];
103 conn =(
unsigned int *)malloc(nsn*
sizeof(
unsigned int));
104 coef =(
double *)malloc(nsn*
sizeof(
double));
105 dof =(
int *)malloc(nsn*
sizeof(
int));
107 for(j=0;j<nsn;j++) conn[j] = ITAB[LRBE2[IRBE2[*NRBE2L * i ] + j ] - 1 ];
109 RigidElem = IRBE2[*NRBE2L * i + 1] ;
111 unsigned int conn1[1];
112 double coef1[1] = {1.0};
114 conn1[0] = ITAB[IRBE2[*NRBE2L * i + 2]-1];
129 for(i=0;i<*NRBE2;i++)
131 elem_id = IRBE2[*NRBE2L * i + 1];
132 nsn = IRBE2[*NRBE2L * i + 4];
135 conn =(
unsigned int *)malloc(nsn*
sizeof(
unsigned int));
136 coef =(
double *)malloc(nsn*
sizeof(
double));
137 dof =(
int *)malloc(nsn*
sizeof(
int));
139 for(j=0;j<nsn;j++) conn[j] = ITAB[LRBE2[IRBE2[*NRBE2L * i ] + j ] - 1 ];
141 RigidElem = IRBE2[*NRBE2L * i + 1] ;
143 unsigned int conn1[1];
144 double coef1[1] = {1.0};
146 conn1[0] = ITAB[IRBE2[*NRBE2L * i + 2]-1];
150 H3D_ELEM_CONFIG_RIGIDLINK, RigidElem,
177void c_h3d_create_rbe2__ (
int *ITAB,
int *NUMNOD,
int *IRBE2,
int *NRBE2L,
int *LRBE2,
int *NRBE2,
int *COMPID_RBE2S)
180void c_h3d_create_rbe2 (
int *ITAB,
int *NUMNOD,
int *IRBE2,
int *NRBE2L,
int *LRBE2,
int *NRBE2,
int *COMPID_RBE2S)
188 int *ID_RBE2,
int *COMPID_RBE2S)
197 int i,j,
n,p,nsn,nsn_loc,ptr,iadg;
200 char RBE2POOL[] =
"Rbe2";
204 char RIGIDPOOL[] =
"Rigid";
211 unsigned int elem_count = 1;
214 if(*COMPID_RBE2S != 0 && *NRBE2 != 0)
217 H3D_ELEM_CONFIG_RIGIDLINK, *COMPID_RBE2S,
219 for(i=0;i<*NRBE2;i++)
221 elem_id = ID_RBE2[i];
222 nsn =IADRBE2[i+1] - IADRBE2[i];
226 conn =(
unsigned int *)malloc(nsn*
sizeof(
unsigned int));
227 coef =(
double *)malloc(nsn*
sizeof(
double));
228 dof =(
int *)malloc(nsn*
sizeof(
int));
229 unsigned int conn1[1];
231 double coef1[1] = {1.0};
234 conn1[0] = MASTERNODS[i];
238 conn[
n] = P0RBE2BUF[iadg +
n];
255 for(i=0;i<*NRBE2;i++)
257 elem_id = ID_RBE2[i];
258 nsn =IADRBE2[i+1] - IADRBE2[i];
262 conn =(
unsigned int *)malloc(nsn*
sizeof(
unsigned int));
263 coef =(
double *)malloc(nsn*
sizeof(
double));
264 dof =(
int *)malloc(nsn*
sizeof(
int));
265 unsigned int conn1[1];
267 double coef1[1] = {1.0};
270 conn1[0] = MASTERNODS[i];
274 conn[
n] = P0RBE2BUF[iadg +
n];
280 H3D_ELEM_CONFIG_RIGIDLINK, elem_id,
303 int *ID_RBE2,
int *COMPID_RBE2S)
307 int *ID_RBE2,
int *COMPID_RBE2S)
311 int *ID_RBE2,
int *COMPID_RBE2S)
void c_h3d_create_rbe2_impi__(int *ITAB, int *NRBE2, int *IADRBE2, int *MASTERNODS, int *P0RBE2BUF, int *ID_RBE2, int *COMPID_RBE2S)
void _FCALL C_H3D_CREATE_RBE2_IMPI(int *ITAB, int *NRBE2, int *IADRBE2, int *MASTERNODS, int *P0RBE2BUF, int *ID_RBE2, int *COMPID_RBE2S)
void c_h3d_create_rbe2_impi_(int *ITAB, int *NRBE2, int *IADRBE2, int *MASTERNODS, int *P0RBE2BUF, int *ID_RBE2, int *COMPID_RBE2S)
void c_h3d_create_rbe2(int *ITAB, int *NUMNOD, int *IRBE2, int *NRBE2L, int *LRBE2, int *NRBE2, int *COMPID_RBE2S)
void c_h3d_create_rbe2_impi(int *ITAB, int *NRBE2, int *IADRBE2, int *MASTERNODS, int *P0RBE2BUF, int *ID_RBE2, int *COMPID_RBE2S)
void c_h3d_create_rbe2_(int *ITAB, int *NUMNOD, int *IRBE2, int *NRBE2L, int *LRBE2, int *NRBE2, int *COMPID_RBE2S)
void _FCALL C_H3D_CREATE_RBE2(int *ITAB, int *NUMNOD, int *IRBE2, int *NRBE2L, int *LRBE2, int *NRBE2, int *COMPID_RBE2S)
void c_h3d_create_rbe2__(int *ITAB, int *NUMNOD, int *IRBE2, int *NRBE2L, int *LRBE2, int *NRBE2, int *COMPID_RBE2S)
bool Hyper3DElement2Write(H3DFileInfo *h3d_file, H3D_ID id, unsigned int *inode, int *idof, double *icoeff, unsigned int num_inodes, unsigned int *dnode, int *ddof, double *dcoeff, unsigned int num_dnodes)
bool Hyper3DAddString(H3DFileInfo *h3d_file, const char *const string, H3D_ID *const str_id)
bool Hyper3DExportClearError(H3DFileInfo *h3d_file)
bool Hyper3DElement2End(H3DFileInfo *h3d_file)
bool Hyper3DElement2Begin(H3DFileInfo *h3d_file, unsigned int count, H3D_ID poolname_id, H3D_ElementConfig config, H3D_ID parent_id, H3D_ID parent_poolname_id, H3D_ID node_poolname_id)