Google

#*******************************************************************
#**
#**        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
#**