|
#******************************************************************* #** #** v e m b l d e x m 0 7 #** #** large deflection modeling of a 3-dimensional body. The mesh #** is read from an I-DEAS universal file. #** #** by L. Grosz Karlsruhe, Jan. 1995 #** #******************************************************************* #** #** The data set of this example has two parts (search for #** 'cut here'). The first part specifies the problem #** (please copy it to 'vembldexm07.equation') and the second part #** defines the control parameters (please copy it to #** 'vembldexm07.resource'). The FORTRAN code for the solution #** of the problem is generated by entering #** 'vembuild vembldexm07' into your shell. #** #******************************************************************* # cut here to get vembldexm07.equation <<<<<<<<<<<<<<<<<<<<<<<<< #******************************************************************* #** #** (u1,u2,u3) is the searched displacement vector of the #** 3-dimensional body. E is the modulus of elasticity in kN/mm^2 #** and ny the Poisson number. p [kN/mm^3] is the pressure on the #** face : #** E=1.93*10^2 ny=.3 p=.5 #** #** where the C-entries are given by the two values E and ny #** C11=E*(1.-ny)/(1+ny)/(1-2*ny) C44=E/2./(1+ny) C12=E*ny/(1+ny)/(1-2*ny) #** #** The restrain conditions are defined in the mesh data set : #** u1=prevalue u2=prevalue u3=prevalue #** #** The vector of distortions in the large deflection modlling #** in the global Cartesian coordinates is defined by #** eps1 = u1x1 + ( u1x1^2 + u2x1^2 + u3x1^2)/2 eps2 = u2x2 + ( u1x2^2 + u2x2^2 + u3x2^2)/2 eps3 = u3x3 + ( u1x3^2 + u2x3^2 + u3x3^2)/2 eps12 = (u2x1+u1x2 + u1x1*u1x2 + u2x1*u2x2 + u3x1*u3x2) eps23 = (u3x2+u2x3 + u1x2*u1x3 + u2x2*u2x3 + u3x2*u3x3) eps13 = (u3x1+u1x3 + u1x1*u1x3 + u2x1*u2x3 + u3x1*u3x3) #** #** the stress vector has the form (s1,s2,s3,s12,s23,s13). By #** the Hook law the stress and distortion vector corresponds #** for isotropic materials by #** s1 = C11*eps1 + C12*eps2 + C12*eps3 s2 = C12*eps1 + C11*eps2 + C12*eps3 s3 = C12*eps1 + C12*eps2 + C11*eps3 s12 = C44*eps12 s23 = C44*eps23 s13 = C44*eps13 #** #** this defines the face normal. the numbering of the area #** element nodes determines the direction: #** n1=tau21*tau32-tau22*tau31 n2=tau12*tau31-tau11*tau32 n3=tau11*tau22-tau12*tau21 n=sqrt(n1^2+n2^2+n3^2) #** #** the actual displacements has to minimize the internal energy: #** volume { (eps1 * s1 + eps2 * s2 + eps3 * s3 + eps12 * s12 + eps23 * s23 + eps13 * s13) / 2 } + area{ p * (u1*n1+u2*n2+u3*n3)/n } = min #** | #** |- this defines the load on the face of the body, #** where only faces are loaded, which are described #** by area elements. the load work in the normal #** direction. #** #******************************************************************* # cut here to get vembldexm07.resource <<<<<<<<<<<<<<<<<<<<<<<<< #******************************************************************* #** #** The problem has a three dimensional domain and three solution #** component: #** DIM=3 NK=3 #** #******************************************************************* #** #** One processor with maximal 80 Mbytes are used. Maximal 10000 #** nodes and 6000 elements are allowed: #** PROCESS_STORAGE=80 PROCESS_MAXNN=10000 PROCESS_MAXNE=6000 #** #******************************************************************* #** #** The pre- and the postprocessor is I-DEAS: #** MESH_PREP=i-deas MESH_POSTP=i-deas #** #******************************************************************* #** #** the is read from the I-DEAS universal file probe.unv. the #** domain is a block of length 50mm and 10mm x 10mm cross #** section. The vertices at the left hand side are fixed. the #** right hand side face is discretized by area elements. the #** mesh uses tetreheron elements of order 2. #** MESH_FILEIN=probe.unv #** #******************************************************************* #** #** The solution components are written to file disp.unv #** with the title 'displacements' and the error is written #** to file error.unv : #** OUTPUT_INDEX=111 OUTPUT_FILE=disp.unv OUTPUT_TITLE=displacements OUTPUT_ERRFILE=error.unv #** |