========
LOG-BOOK Version 2.11
========

09 Nov 1998	- removed mistake from anisotropic.f
		- faster code for orthotropic materials in stress.f and
		  elemmatr_pr.f (replacement of orthotropic.f); to be
		  implemented in elemmatr_la.f too.

10 Nov 1998	- definition of sets within *NODE and *ELEMENT.

11 Nov 1998	- several steps within one calculation.
		- no allocation of mast1 and mast2 for static calculations.

16 Nov 1998	- small correction to orientations.
		- correction to material transformation in kyrinput.

17 Nov 1998	- small corrections for multiple step calculations.

23 Nov 1998	- correction for second order frequency calculations.
		- resetting the loads for perturbative steps

24 Nov 1998	- check for second order static calculations OK.

26 Nov 1998	- frequency calculations with prestress works! At
		  buckling load the frequency reduces to zero.

10 Dec 1998	- corrected an error in kyrinput (call of nquickx2).

Jan 1999	- implemented LANSO for eigenvalue calculations:
	          did not work; abandoned.
		- implemented ARPACK for eigenvalue calculations:
	          problems under Linux, which do not occur on the
		  IRIX. TO BE ANALYZED!
		- implemented UMFPACK for static calculations: for
                  small problems half as fast as PROFILE; for big
                  problems too much memory grabbed; abandoned.
		- implemented SPOOLES for static calculations: works
	          fine; for big problems and nested dissection ordering
                  about 25% faster than PROFILE (18,000 equations).
                  Probably even faster for really big problems and low
                  fill-in (> 50,000 equations and < 5 % fill-in).

3 Feb 1999	- on a SGI, SPOOLES is about 7 times faster than the
		  profile method for about 110,000 degrees of freedom
		  (900 MB RAM needed).

7 Feb 1999	- started reorganization: (*) instead of (1), implicit
		  none instead of implicit real*8(a-h,o-z)

Mar 1999	- ARPACK works on Linux when compiled with FC=f77-f2c; reason
		  unclear; however, it is not necessarily faster than
	          LEVALH. Maybe calculating the largest eigenvalues of the
                  inverse matrix is faster?

27 Mar 1999	- MODAL DYNAMIC works. Testing of buckling with ARPACK started.

8 April 1999    - calculating frequencies in shift-invert mode with ARPACK/
                  SPOOLES works and is significantly faster than the direct
                  mode (factor 4 or 5).
	        - BUCKLING works!

18 April 1999   - checked shift-invert mode for big problems. Up to a factor
                  of 90 faster than the direct method!
                - refined output selection: U, NT, S or E.

21 April 1999   - united the routine composing the eigenvalue matrices
                  with the routine constructing the static stiffness matrix
                  (elemmatr_ei.f and elemmatr_st.f -> c_3d20.f)
                - automation of the test routine (compare)

20 May 1999     - reorganisation of the element topology information
                - inclusion of C3D8 elements.

7 juni 1999     - in previous releases 2nd order static calculations used
                  the large displacment stiffness only, 2nd order modal
                  calculations used the stress stiffness only. Now both
                  stiffnesses are used in any of these cases. What is
                  left to do is the use of the differential large deformation
                  matrix for buckling calculations (independent of iperturb),
                  in addition to the stress stiffness differential used now.

6 juli 1999     - correction of small errors

7 juli 1999     - removed lumping in modal analysis. Results match ABAQUS
                  results very well (deviation < 0.5 %).

10 juli 1999    - started removing lumping from linear dynamic calculations.
                  eigenmodes should be normalized with respect to the mass
                  matrix. To do!

11 juli 1999    - normalization with respect to the mass matrix done. Still
                  differences with ABAQUS for beta (damping coef) != 0. Maybe
                  there is still an error for the supercritical regime. To
                  check
	        - removed levalh and subprograms: default and only solver for
                  modal analysis is ARPACK

31 juli 1999    - took care of inhomogeneous equations: introduce a dummy
                  node with fixed displacements.

Sept. 1999      - started to work on geometrically nonlinear calculations

26 Oct. 1999    - geometrically nonlinear option implemented and checked.
                - in second order frequency calculations the material
                  temperatures from the previous nonperturbative step are
                  kept.

2 Dec. 1999     - changed the extrapolated stress and strain values in the
		  midpoints of the 20-node elements to the ABAQUS convention,
		  i.e. extrapolation is made within each element after which
		  the mean is taken of values in neighboring elements.

Dec. 1999       - started the implementation of hyperelastic solids,
                  hyperfoam materials and deformation plasticity.

25 Dec. 1999    - removed an error in mafillsm and mafillpr: introduced
                  a new variable idof3

Jan-Feb 2000    - check of the hyperelastic capabilities; merges disp and 
                  stress into one subroutine results to cover nonlinear
                  calculations with prescribed displacements.

7 Feb 2000      - corrected an error in materialdata for mixed isotropic/
                  orthotropic/anisotropic materials

20 Feb 2000     - accelerated hyperelastic calculations by a factor of 15

5 Mar 2000      - deformation plasticity works (mechanical forces)!

9 Mar 2000      - deformation plasticity subject to thermal forces works!
       
30 April 2000   - C3D20R seems to work very well for thick and thin shells
                  (just one layer of brick elements)
                - upgraded to SPOOLES.2.2.

19 May 2000     - started implementing implicit and explicit integration
                  dynamics

June 2000       - implementation nonlinear dynamics finished; 
                  needs checking
                - material data are determined in each integration point
                  separately instead of per element

3 July 2000     - corrected an error occurring in nonlinear calculations 
                  with mpc's

July 2000       - changed the stress-strain curve to be given for deformation
                  plasticity from 2nd Piola-Kirchhoff stress vs. Lagrangian 
                  strain to true stress vs. Eulerian strain.

18 July 2000    - included extrapolation of one increment to the next:
                  accelerates convergence

5 Aug 2000      - started implementing incremental plasticity with 
                  isotropic and/or kinematic hardening

Sept 2000       - started checking implicit and explicit dynamics

18 Sept 2000    - corrected the allocation of jq: 3*nk+1 (needed in
                  mastruct)
                - implicit and explicit dynamics seem to work!
                  However, the calculation of the initial acceleration due
                  to a sudden load change at the start of a step, requiring
                  the solution of a linear equation set with the full mass
                  matrix causes problems: the solution of the system is not
                  plausible (1.e24). The problem improves drastically by 
                  adding some stiffness to the mass.

1 Oct 2000      - the only environment variable left is the job-name
                  all other file names are derived from the job-name:
                  .inp,.dat,.frd,.eig and .sta
                - changed CALCULIX into CalculiX
                - stored increment information in the .sta file

15 Oct 2000     - started to replace the FORTRAN input files by C input
                  files; purpose: automatic reallocation if the problem
                  data size exceed preset values

16 Oct 2000     - postponed the replacement of FORTRAN by C to a later date;

6 Nov 2000      - isotropic incremental plasticity works for beam
                  example!

16 Nov 2000     - implemented interpolation between hardening curves at
                  different temperatures

9 Dec 2000      - accelerated nonlinear calculations for given
                  displacements or temperatures: first iteration in
                  a new increment must be purely linear elastic

23 Dec 2000     - put version 0.9 on our webpage

28 Dec 2000     - started to implement creep; user routines option provided
                  for plastic hardening curves and the creep law.

17 Jan 2001     - creep (viscoplasticity) works

25 Jan 2001     - looked into iterative solvers (ITPACK-nspcg and
                  pcgsolver-TU-Muenchen)

4 Feb 2001      - abandoned iterative solvers: worked for small
                  examples (1,000 DOFs) but not for intermediate ones
                  (20,000 DOFs)

5 Feb 2001      - started to implement cyclic symmetry

6 Feb 2001      - fixed format is not longer supported. Use free format.

16 Feb 2001     - invested some more time in pcgsolver. Works well
                  with Cholesky preconditioning. Convergence slow for 
                  2-D problems such as plates. For large, compact 3-D problems
                  faster than SPOOLES. Pcgsolver can be selected for
                  linear problems (test phase).

27 Feb 2001     - started to implement C3D8R, C3D20 and C3D10 elements.

10 Mar 2001     - changed the Nested Dissection Ordering in SPOOLES to
                  Multi-Section Ordering. Seems to be faster for medium
                  size problems (150,000 DOF).
                - implemention of C3D8R, C3D20 and C3D10 elements
                  successfully finished.

26 Mar 2001     - introduced pre-processor directives to cope with different
                  C - FORTRAN interface conventions on different machines
                  (underscore or not)

27 Mar 2001     - changes input and output format from record length 80 to
                  record length 132
                - started to code transformations (rectangular and
                  cylindrical) (*TRANSFORM).

21 Apr 2001     - introduced an iterative procedure to improve the
                  results in a *BUCKLE procedure: the buckling factor
                  is linked to the value of sigma (ARPACK)
                - transformations work
                - started to implement the iterative procedure for
                  nonlinear calculations

22 Apr 2001     - iterative procedure for nonlinear calculations works

30 Apr 2001     - collapsed elements work now! (changed the add*f subroutines)
                - corrected some storage inconsistensies in CalculiX.c; should
                  solve the problems encountered when several steps occur in 
                  the same input deck.

2 May 2001      - corrected an error leading to wrong results for
                  element types with weight different from 1 and anisotropic
                  material behavior (subroutines orthonl.f and anisonl.f:
                  forgot to multiply with weight)

14 May 2001     - changed the Sloan renumbering routines to allow skylines
                  larger than 4-byte integers (>2147483647).

17 May 2001     - started to change mastruct from FORTRAN to C in order to
                  be able to reallocate the # of nonzero's in the matrix

21 May 2001     - automatic reallocation of nonzero's works

26 May 2001     - started automatic allocation of input data
                  (subroutine allocation.f)

5 June 2001     - auomatic allocation works;
                - started implementation of cyclic symmetry conditions
                  for frequency calculations
         
23 June 2001    - corrected an error in the residual stress (- sign)

19 July 2001    - started to work on tetrahedral meshing of point
                  clouds

9 Aug 2001      - tetrahedral meshing of a box enclosing a point
                  cloud works

14 Sep 2001     - corrected an error in file incplas.f:
                  "c9=c6*umb*3.d0" replaced by "c9=c6*3.d0"

18 Sep 2001     - started change from updated Lagrangian to total
                  Lagrangian for incremental plasticity

7 Oct 2001      - concluded change to total Lagrangian formulation
                - started introduction of field xstiff and xstate
                  in preparation for umat routine

25 Oct 2001     - wrote first user material subroutine

29 Oct 2001     - umat (material) subroutine seems to work

24 Nov 2001     - included stress at start of increment in umat
                - new investigation of cyclic symmetry: frequencies
                  are correct, eigenmodes too, except at the
                  dependent boundary

25 Nov 2001     - cyclic symmetry seems to work!

29 Nov 2001     - correction for MPC's with only one term (= zero
                  SPC)

9 Dec 2001      - mapping of the results for one sector to other sectors
                  in a cyclic symmetry calculation works.

7 Jan 2002      - started coding rigid body motion
                - worked on tension-only umat routine

8 Jan 2002      - corrected an error in the C translation in mastructcs.c

11 Jan 2002     - corrected an integer internal overflow in arpackcs.c

30 Jan 2002     - finished coding rigid body motion
		- cyclic symmetry in conjunction with other MPC's works

7 Feb 2002      - fixed some minor errors related to *FREQUENCY and
                  *BUCKLING

March 2002      - started to work on the theory manual.

2 Apr 2002      - corrected an error in frdcyc: the coordinates have
                  to be duplicated also for kode>1

10 Apr 2002     - corrected an error in boundaries: deletion of SPCs
                  in local coordinate systems with OP=NEW did not work
                  properly

16 Apr 2002     - continued to work on rigid body motion and nonlinear
                  mpc's in general

27 Apr 2002     - *RIGID BODY works
                - with RF only EXTERNAL forces are obtained. If a MPC
                  connects two nodes of the structure, the force
                  is internal and cannot be obtained using RF.

5 June 2002     - allowed for nested *INCLUDE statements up to three
                  levels deep

12 June 2002    - took out the normalization of the displacements in
                  arpackbu.c (buckling).

6 July 2002     - changed getnewline: the input is freed from blanks
                  and changed to upper case. Thus, input is more
                  flexible.

17 July 2002    - same name can be used for node sets and element sets
                  internally, a "N" or "E" is appended to distinguish
                  them

18 July 2002    - sets can be defined using previously defined sets
                - abbreviating u_calloc with NNEW

24 July 2002    - a set can be defined using multiple *NSET or *ELSET
                  cards
                - abbreviating realloc with RENEW

29 July 2002    - corrected a bug in boundaries.f which occurred when
                  SPC's in transformed coordinates were removed with
                  OP=NEW

6 Sept 2002     - corrected wrong file names in some of the *WARNING
                  and *ERROR messages
                - initialized all allocation size variables in
                  CalculiX.c

16 Sept 2002    - started to code umat_elastic_fiber.f to model fiber
                  reinforced hyperelastic materials

26 Sept 2002    - umat_elastic_fiber.f seems to work

28 Sept 2002    - changed the names of the stress tensors

1 Oct 2002      - started to code the energy calculation

3 Oct 2002      - the energy calculation seems to work
                - implemented the local orientation option in the
                  umat routine

5 Oct 2002      - got rid of the environment variable; ccx is started
                  with -i flag for the input file (without .inp)

9 Oct 2002      - started to change cascade: solving for the dependent
                  DOFs in the MPCs using SPOOLES

29 Oct 2002     - finished C-version of cascade. The decascading is
                  performed by calling SPOOLES to solve the
                  nonsymmetric system of equations.

3 Nov 2002      - execution of renumber.f is removed for SPOOLES

4 Nov 2002      - started to treat nonlinear MPC's more generally:
                  variable number of MPC terms between iterations
                  must be taken into account

8 Nov 2002      - corrected an error in cycsymmods.f

16 Nov 2002     - started to work on STRAIGHT, PLANE and MEAN ROTATION
                  nonlinear MPCs

21 Nov 2002     - started to work on plane strain, plane stress,
                  axisymmetric, shell and beam elements

Dec 2002        - started to work on single crystal plasticity

15 Jan 2003     - STRAIGHT, PLANE and MEAN ROTATION MPCs seem to work

18 Jan 2003     - *AMPLITUDE can also be used for linear static
                  calculations
                - linear MPCs can have more than 9 terms

26 Jan 2003     - updating the User's Manual and the test example set
                - finishing the tests on plane strain, plane stress,
                  axisymmetric, shell and beam elements
                - the use of SPOOLES in cascade leads to significant
                  longer run times. Original method is restored and
                  translated into C. SPOOLES maybe useful for MPC's 
                  with a large radius of influence such as
		  incompressibility.
                - fixed the connection between solid elements and 1-D
                  or 2-D elements.

8 Feb 2003      - the internal state variables can be stored in the
                  .dat and .frd file
                - improved the boundary conditions for plane strain,
                  plane stress and axisymmetric elements.

9 Feb 2003      - single crystal umat seems to work
                  (caveat: for ithermal=0 the field eth(1..6) is not
                  defined)

13 Feb 2003     - corrected some mistakes in cycsymmods.f

27 Feb 2003     - changed the meaning of OP=NEW 
                - changed the effect of output options in multi-step
                  analyses

01 Mar 2003     - corrected an error in the energy calculation and
                  incremental plasticity: calculation of irreversible
                  quantities must start from the values at the start
                  of the increment and not rely on intermediate values

04 Mar 2003     - solved the problem with beammr (definition of neq
                  in CalculiX.c for icascade!=0)

02 Apr 2003     - started to work on wedges and 4-node tets
                - corrected the implementation of the alpha method
                  (starting acceleration zero); convergence is
		  accelerated

09 Apr 2003     - changed integration scheme for the mass matrix in
                  dynamic calculations with discontinuous forces

10 Apr 2003     - simplified shape functions for 20-node hexa elements

13 Apr 2003     - changed extrapolation coefficients for C3D20
                - replaced alp=.2215 by alp=.2917 for explicit dynamic
                  calculations with 20-node elements (e_c3d.f)
                - important change in ikmpc and ikboun: 6 DOFs are
                  assigned to each node instead of 3 DOFs

27 Apr 2003     - introduced for frequency calculations a stiffness
                  contribution due to centrifugal forces

01 May 2003     - started working on stiffness contribution of
                  distributed surface loads

06 May 2003     - stiffness contribution of distributed surface
                  loads seems to work

10 May 2003     - introduced rotational DOFs for shells and beams

26 May 2003     - added the parameter TIME=TOTAL TIME to the
                  *AMPLITUDE keyword card

04 June 2003    - introduced bending moment and torque for 1d and 2d
                  structures
                - allowed for seven DOFs in ikboun, ikforc and ikmpc: 
                  DOF zero is reserved for the temperature
                - tet4, wedge6 and wedge15 seem to work

08 June 2003    - MPC's can contain rotational degrees of freedom now

11 June 2003    - started to code thermal calculations

14 June 2003    - changed the first dimension of v,vold,vini,veold,
                  accold,veini,accini,fn,nactdof,vt and fnt to four in
                  order to accommodate temperature and thermal flux

23 June 2003    - introduced the logical parameters mass, stiffness,
                  buckling and rhs to decide which entities to build.

25 June 2003    - changed xload(i) to xload(1..2,i), similarly for
                  nelemload and iamload to accommodate both convection/
                  radiation coefficients and environmental temperatures
                  for heat transfer calculations

17 Juli 2003    - started forced convection and cavity radiation

31 Juli 2003    - introduced the keyword card *CONTROLS to control
                  convergence and allow for linear calculations with
                  1d and 2d elements.

2 Aug 2003      - allowed for linear calculations with 1-D and 2-D
                  elements (beams, shells..) by setting the
                  convergence criteria to 1.d+30.

3 Aug 2003      - allowed for linearization of *MPC constraints and
                  *RIGID BODY constraints by adapting the convergence
                  criteria to 1.d+30.

31 Aug 2003     - change integration point numbering for C3D15
                  (conform to ABAQUS)

5 Oct 2003      - reintroduced damping in direct dynamic calculations;
                  improves performance without deteriorating the 
                  quality of the results

7 Oct 2003      - started to work on a restart file

29 Oct 2003     - corrected a bug in the calculation of the
                  distributed load stiffness
                - finished the restart capability

29 Nov 2003     - reorganization of the output in the .dat file:
                  output is grouped per set (node set/element set)
                - implementation of whole element output: ELSE and
                  EVOL, TOTALS=YES and TOTALS=ONLY

03 Dec 2003     - read and write files for a RESTART are now
                  different: extension .rin for RESTART,READ and 
                  .rout for RESTART,WRITE
                - there is no default any more for *EL FILE and 
                  *NODE FILE
 
09 Dec 2003     - corrected a mistake in restartshort.f

23 Dec 2003     - finished the theory manual!

26 Dec 2003     - maxlenmpc is stored in the restart file
                - removed a possible division through zero in 
                  arpackcs.c (cyclic symmetry)

5 Jan 2004      - introduced a new field typeboun to classify the type
                  of boundary conditions. Only the BC's defined by
                  *BOUNDARY should be deleted for OP=NEW.
                  types: R=rigidbody, P=planempc, S=straightmpc
                  M=midplane, U=usermpc and B=boundary.
          
6 Jan 2004      - prescribing the displacements of all DOFs is now 
                  possible (neq=0)

12 Jan 2004     - improved the convergence of STRAIGHT and PLANE MPC's

14 Jan 2004     - changed the syntax of 
                  *INITIAL CONDITIONS,TYPE=STRESS: the residual stress
                  tensor must be given in each integration point, 
                  not just one tensor per element
                - corrected an error in allocation.f

19 Jan 2004     - made a correction for dynamic calculations in
                  allocation.f
                - made a correction for restart calculations:
                  additional definitions of amplitudes and sets is
                  allowed. 
 
20 Jan 2004     - started to check thermal analysis

21 Jan 2004     - made a correction in incplas.f for thermal
                  viscoplastic calculations (J_mech)

24 Jan 2004     - corrected an error in cycsymmods.f

26 Jan 2004     - coded the output of heat flux and heat generation

2 Feb 2004      - introduced nenerold to take energy requests into 
                  account in frequency steps with preload.

22 Feb 2004     - started the user subroutines for heat flux, the film
                  coefficient and the emissivity

24 Feb 2004     - the elastically anisotropic material model with von
                  Mises viscoplasticity is automatically selected as 
                  soon as a *PLASTIC, *CYCLIC HARDENING or *CREEP card
                  is combined with a *ELASTIC,TYPE=ORTHO card.

26 Feb 2004     - finished the user subroutines dflux.f, film.f,
                  radiate.f and dload.f

28 Feb 2004     - introduced uniform and nonuniform body-generated
                  heat flux; seems to work.

2 Mar 2004      - started changing the way the input is read: the
                  importance of the order of the cards is minimized
                  
8 Mar 2004      - made the step time and total time available in the
                  umat routines

9 Mar 2004      - started to make changes to distinguish between the
                  mechanical and thermal part of the equation system
                  (e.g. neq is replace by neq[0] and neq[1]). This
                  is needed for instationary thermal calculations

13 Mar 2004     - blank lines in the input file are disregarded
                - new materials can be defined after a restart
                - primary creep was included in the Norton creep law
                  (power of total time)

17 Mar 2004     - started to work on reducing the effect of the order
                  of the keywords in the input deck

22 Mar 2004     - changed the calculation of the strain in
                  perturbative frequency and buckling steps: the
                  strain is calculated about the deformed
                  configuration

25 Mar 2004     - reduction of the effect of the order in the input
                  deck seems to work

30 Mar 2004     - the input data for *FREQUENCY were changed: now, you
                  can restrict the eigenfrequencies to an interval by
                  specifying its lower and upper value.

31 Mar 2004     - transient heat transfer calculations seem to work

21 April 2004   - forced convection heat transfer works

23 April 2004   - first calculations with cavity radiation

22 May 2004     - first acoustic frequency calculations
                - static step following heat transfer step works

10 June 2004    - changed sideload from character*5 to character*20
                  allows user-defined name for user-defined loading

12 June 2004    - started changes to allow for modal dynamic calculations
                  of the standard wave equation (e.g. in acoustics,
                  shallow waves etc.)

30 June 2004    - forces can be summed and the sum printed in the
                  .dat file (TOTALS=YES or TOTALS=ONLY)
                - modal dynamics of phenomena governed by the
                  Helmholtz equations seems to work

12 July 2004    - changed the * format in internal reads for integers
                  into '(i40)'

22 July 2004    - included the changes by Manfred Spraul enabling
                  multithreading with SPOOLES

3 Aug 2004      - made the SPOOLES call modular (in order to easily
                  include TAUCS and other solvers).

8 Aug 2004      - changed the * format in internal reads for reals
                  into '(f40)'
                - included options to call TAUCS and the SGIsolver
                  (at compile time with -DTAUCS and -DSGI)

11 Aug 2004     - started to work on the storage of results in local 
                  coordinates

13 Aug 2004     - storing results in local coordinates works.
                  (GLOBAL=YES or GLOBAL=NO after the *EL PRINT, *EL FILE
                  *NODE PRINT and *NODE FILE keyword cards).

4 Sept 2004     - the value of jout is kept across the increments
                  unless a new value is defined

5 Sept 2004     - removed an error: xload was sorted, xloadold was not
                  now xloadold is sorted as well (routine isortiddc)

8 Sept 2004     - coupled temperature-displacement calculations work

14 Sept 2004    - started to code 6-noded triangular 2-d elements
                  (they are expanded to 15-node wedges)
                - started to work on 1-D and 2-D elements for
                  thermal and thermomechanical calculations

16 Sept 2004    - splitting of gen3delem.f in smaller subroutines started

17 Sept 2004    - splitting of gen3delem.f finished

6 Oct 2004      - 6-nodes 2-d elements work
                - 1-d and 2-d elements for thermal calculations work
                - started to work on axisymmetric elements for
                  cavity radiation

7 Oct 2004      - cavity radiation for axisymmetric elements works

10 Oct 2004     - in case of divergence the actual solution fields 
                  and residual forces are stored in the frd file

14 Oct 2004     - started an interface between the ABAQUS umat user
                  routine and CalculiX umat user routine.

19 Oct 2004     - introduced mechanical strain to calculate the
                  energy density and for the ABAQUS umat user routine

25 Oct 2004     - changed the syntax of *NODAL DAMPING to provide
                  compatibility with ABAQUS
                - introduced the heat transfer elements DC3D4,DC3D6,
                  DC3D10,DC3D15 and DC3D20 for compatility with ABAQUS.
                  Internally, they are identical to C3D4, C3D6 etc.

30 Oct 2004     - CalculiX checks length of set names, amplitude names..
                  to verify whether they do not exceed 20 characters

31 Oct 2004     - removed alph from linel: everything is based on 
                  eth now (thermal strain)

7 Nov 2004      - started to work on maximum distance MPC

16 Nov 2004     - removed an error in mastruct.c (loop should start from
                  0 instead of 1)

18 Nov 2004     - introduced a field fmpc for the MPC force

24 Nov 2004     - corrected an error in mastructcs.c (cf. 16 Nov).

25 Nov 2004     - introduced a variable idiscon to mark a discontinuity;
                  if a discontinuity occurs the displacements at the
                  start of the next increment are not extrapolated

28 Nov 2004     - introduced a new field irowsgi in routine sgi.c

8 Dec 2004      - included tieset and ntie in the restart files

11 Dec 2004     - started to code the gap MPC.

21 Dec 2004     - corrected some small errors in dyna and dynsolv

23 Dec 2004     - introduced sorted search for amplitudes (identamta.f)

4 Jan 2005      - finalized the DIST and GAP MPC; made the GAP MPC
                  accessible through a GAPUNI element and *GAP card.
                - adjusted the year in the copyright statement

5 Jan 2005      - worked on dealing with ABAQUS umat routines for nonlinear
                  materials (umat_abaqusnl)

22 Jan 2005     - started to implement the possibility to define several
                  volumetric forces within one structure

2 Feb 2005      - removed an error in e_c3d.f (for lumping)
                - allowed for smaller increments in dynamic explicit
                  calculations
                - checked the size of force and displacement residuals
                  if too big, the increment size is reduced 

13 Feb 2005     - several volumetric forces within one structure work;
                - generalized gravity works

18 Feb 2005     - applied constraints to nodes on a cyclic symmetry
                  axis in static calculations

26 Feb 2005     - material, orientation, amplitude and set names
                  are scheduled to be 80 characters long, textpart
                  is scheduled to be 132 characters long.

2 Mar 2005      - finished extending names and textpart

3 Mar 2005      - create user routines utemp and cflux; added field vold
                  in user routines dflux, film and radiate.

12 Mar 2005     - introduced the parameter TIME DELAY to shift the time
                  within an amplitude

29 Mar 2005     - started the inclusion of nonzero SPCs in modal dynamic
                  calculations (similar to *BASE MOTION in ABAQUS)

2 Apr 2005      - changed dynsolv from FORTRAN to C

17 Apr 2005     - inclusion of nonzero SPCs in modal dynamic calculations
                  works

19 Apr 2005     - started to work on steady state dynamics (harmonic loading)

3 May 2005      - steady state dynamics works (harmonic loading)

10 May 2005     - started steady state dynamics for nonharmonic periodic
                  loading

16 May 2005     - started *SENSITIVITY to determine eigenvalues of 
                  geometrically slightly perturbed structures

30 May 2005     - steady state dynamics for nonharmonic periodic loading
                  works

22 Juni 2005    - started a more efficient storage of the boundary
                  stiffness coefficients (those stiffness coefficients
                  which correspond to SPC's; important for modal
                  dynamic calculations)

29 Juni 2005    - changed application of force to axisymmetric elements:
                  now, the force is the one applied to the sector the angle
                  of which is defined on the *SOLID SECTION card, and not
                  the total force over 2*pi
                - new storage works (fields neq and nzs have now a
                  length 3)

5 July 2005     - created user subroutine massflowrate.f

6 July 2005     - removed an error in CalculiX.c: if nam>0, iamload
                  must be sorted too in routine isortiddc.

10 July 2005    - corrected an error in radflowload.f
                - allowed for description in .frd file

16 July 2005    - corrected an error in gen3dconnect.f 

23 July 2005    - simplified some code in results.f
                - worked on 1d/2d output of 1d/2d elements

26 July 2005    - worked on section forces

30 July 2005    - 1d/2d output and section forces work
                - for axisymmetric elements *CLOAD, *CFLUX and
                  *MASS FLOW RATE are to be defined for the complete
                  circumference

31 July 2005    - for 1d/2d elements NLGEOM is selected automatically

11 Aug 2005     - corrected an error in map3dto1d2d.f

5 Sept 2005     - corrected an error in solidsections (axisymmetric
                  elements)

7 Sept 2005     - changed nonlingeo, radflowload and results: now the
                  gas temperatures are taken into account in the
                  convergence check (cam)

9 Sept 2005     - same issue is on Sept 7: if gas temperatures are 
                  calculated the "displacement" convergence check is
                  mandatory, no matter the size of the residual forces

13 Sept 2005    - removed sensitivity.c and sensitivities.f (did not
                  bring any gain).

14 Sept 2005    - changed renumber.f such that gaps in the node numbering
                  do not increase the execution time
                    
21 Sept 2005    - inserted temporarily the Zienckiewicz-Zhu error
                  estimator

23 Sept 2005    - finished the coding of the Zienckiewicz-Zhu error
                  estimator for C3D20R elements

28 Sept 2005    - put part of nonlingeo.c into checkconvergence.c

29 Sept 2005    - put part of nonlingeo.c into calcresidual.c
                  rename residual.f into storeresidual.f

1 Oct 2005      - extrapolation of previous results as start values
                  for the next increment is not done at the start
                  of a new step, else it is always done (nonlingeo.c)

2 Oct 2005      - introduced user routine sigini.f for the 
                  specification of initial stress fields

10 Oct 2005     - started a major revision of the fluid elements for
                  forced convection purposes: now
                  they consist of three nodes, in the end nodes the
                  temperature is unknown, in the middle node the mass
                  flow rate is to be given (DOF 1) with *BOUNDARY
                - revision of the convection equations in radflowload.f
                  to reach agreement with QTRAN

11 Oct 2005     - finished forced convection changes

24 Oct 2005     - started the generation of cyclic symmetry conditions
                  for dissimilar meshes

6 Nov 2005      - cyclic symmetry conditions for dissimilar meshes work

14 Nov 2005     - corrected an error in mastructcs.c (element types
                  C3D4, C3D6 and C3D15 were not taken into account)

16 Nov 2005     - got rid of the NORENUMBER option: not needed any more

1 Dec 2005      - corrected an error in e_c3d.f and linel.f
                  (initial shear stresses)

9 Dec 2005      - corrected an error in some umat routines: +beta
                  should be -beta

12 Dec 2005     - started to work on modal dynamics and steady state
                  dynamics for cyclic symmetric structures

22 Jan 2006     - adapted dyna.c (modal dynamics) for cyclic symmetry
                  calculations

30 Jan 2006     - performed some changes to prepare for gas dynamics
                  calculations: instead of *SOLID SECTION, *GAS SECTION
                  should be used.

9 Feb 2006      - corrected an error related to nam and nam_ in CalculiX.c
                  and calinput.f

27 Feb 2006     - corrected an error in dyna.c and steadystate.c: t0,
                  t1old, t1 and iamt1 must be reallocated for cyclic
                  symmetric structures

28 Feb 2006     - started the implementation of a thermal user material

5 March 2006    - refined the cyclic symmetry conditions for 
                  dissimilar meshes.

6 March 2006    - starting a harmonized treatment of linear and
                  nonlinear materials.

7 March 2006    - the profile solver is inactivated

12 March 2006   - the harmonization of linear and nonlinear materials
                  is finished.

17 March 2006   - allowing for more than one gravity load in an element

26 March 2006   - heat conduction through the edges of a shell element
                  and the face of a plane stress element is possible

2 April 2006    - started the extension of the forced convection
                  formulation into an aerodynamic network:
                  implementation of the orifice element

14 April 2006   - introduced a Laplace-type method to find initial
                  pressures in an aerodynamic network

20 April 2006   - started coding liquid networks

23 April 2006   - calculations with liquid networks work

9 May 2006      - allowed for imaginary gravity and centrifugal
                  loading (for steady state dynamics)

12 May 2006     - speeded up all *ident*f files

25 May 2006     - completed the discharge coefficient files for the
                  orifice, bleed tapping and preswirl nozzle

30 May 2006     - change in tempload: gas nodes do not move during
                  the calculation

3 June 2006     - started to code contact conditions

21 June 2006    - corrected an error in mafillsm.f and 
                  materialdata_th.f

11 Juli 2006    - CYCLIC SYMMETRY and TYPE=NODE are required parameters
                  for the *TIE card and the *SURFACE card, respectively

26 Juli 2006    - small corrections in radmatrix
                - nodes with prescribed boundary conditions but not
                  belonging to elements are also stored in the frd file

30 Juli 2006    - implemented time points at which output can be
                  requested

7 Sept 2006     - one .onf file instead of several
                - changed the order of the Gauss points for 4-node
                  integration of faces of hexahedral elements

11 Sept 2006    - speeded up cyclic symmetric thermal calculations
                  (took the symmetry of the integration points into
                   account in subroutine e_c3d_th.f)

27 Sept 2006    - changed spooles.c to accommodate for nonsymmetric
                  systems of equations

28 Sept 2006    - switched to spooles for the solution of the 
                  nonsymmetric fluid network equation sets.

7 Oct 2006      - switched back to dgesv (spooles is slower for small
                  systems)
		- accelerated e_c3d_th.f

9 Oct 2006      - incorporated some slight accelerations in e_c3d_th.f

14 Oct 2006     - introduced a shape function routine specifically
                  for axisymmetric elements

15 Oct 2006     - corrected an error in rubber.f

16 Oct 2006     - accelerated axisymmetric calculations in results.f

17 Oct 2006     - accelerated gen3dfrom2d.f
                - contact with one element works

2 Nov 2006      - introduced the parameter CAVITY on the *RADIATE
                  card

6 Nov 2006      - accelerated axisymmetric calculations in mafillgas.f
                  and resultgas.f
		- got rid of a segmentation fault in nonlingeo.c

7 Nov 2006      - corrected a typing mistake for axisymmetric elements
                  in results.f

14 Nov 2006     - changed the angle for axisymmetric elements to 2
                  degrees

17 Nov 2006     - improved the connection with the user routine radiate
                  in radmatrix.f

23 Nov 2006     - changed the argument list of attach.f

25 Nov 2006     - changed 4-node contact elements into 4 to 9-node ones

3 Dec 2006      - change did not improve convergence: 23 Nov state
                  reinstalled
		- included the gas pipe element and a new convergence
                  strategy for fluids

10 Dec 2006     - introduced *SURFACE INTERACTION and *SURFACE BEHAVIOR

13 Dec 2006     - changed contact force into contact pressure (alpha is
                  multiplied with the area of the triangle)

17 Dec 2006     - allowed for user-defined viewfactor inputdeck name
                - use of shape20h_pl for plane stress and plane strain
                  elements
                - extension for viewfactor file is .vwf

18 Dec 2006     - only nonzero viewfactors are stored
                - error estimator (Sascha Merz) included 
                - sorting of nelemload includes face number

21 Dec 2006     - corrected an error in radflowload.c and nonlingeo.c

22 Dec 2006     - made some changes in gen3dnor.f

26 Dec 2006     - accelerated plane stress/strain and axisymmetric
                  calculations in e_c3d.f

6 Jan 2007      - changed contact stiffness matrix slightly

7 Jan 2007      - changed 4-node contact elements into 5 to 9-node ones:
                  second try (consistent stiffness matrix).

9 Jan 2007      - 5 to 9-node contact elements seem to work.

14 Jan 2007     - adapted surfaces.f in order to cover beam, shell and
                  2-D elements

15 Jan 2007     - corrected an error in e_c3d.f

16 Jan 2007     - corrected an error in gaspipe.f

20 Jan 2007     - started some changes to take 2D contact into account
                  (file gen3dsurf.f)

23 Jan 2007     - corrected a mistake in the restart file
                - treated Norton in the same way as the creep routine
                  (incplas.f)

31 Jan 2007     - frequency calculations for 1D and 2D elements seem to
                  work.

9 Feb 2007      - made a small change in frdcyc.c

22 Feb 2007     - corrected an error in mafillsm.f

25 Feb 2007     - made a change in map3dto1d2d.f, arpack.c and arpackcs.c
                  (rotational speed needed for stiffness matrix in
                   frequency calculations)

4 Mar 2007     - introducted restrictor elements in the gas network

6 Mar 2007     - made a change in arpack.c to allow for frequency
                 calculations after plastic calculations
               - changes in the restrictor element files

11 Mar 2007    - removed error occurring for empty node or element sets

20 Mar 2007    - added parameter ADD to *CFLUX card

22 Mar 2007    - updated umat_aniso_creep.f

24 Mar 2007    - corrected an error in linear 1d/2d calculations:
                 created file fillrigidmpc.f

26 Mar 2007    - removed vjj from subroutine incplas; modified the
                 influence of the thermal strain

3 April 2007   - modified umat_aniso_creep.f

16 April 2007  - replaced the rigid body formulation by a knot
                 formulation for 1d/2d elements: allows expansion

19 April 2007  - corrected an error in allocation.f

20 April 2007  - changed the size of field inpc to (long long) in order
                 to be able to read larger input files

21 April 2007  - allowed for initial plastic strains

24 April 2007  - made a correction in readinput.c

30 April 2007  - started to make corrections for consecutive thermal
                 and mechanical calculations (especially for 1d/2d
                 elements)

2 May 2007     - inclusion of branch fluid elements (start)

4 May 2007     - made a correction in gen3dboun.f

15 May 2007    - reduced the storage needs for the input deck: 
                 introduced field ipoinpc to take variable length
                 lines into account

20 May 2007    - updated the documention for fluid elements
                 of type branch

21 May 2007    - allowed for linear rigid body calculations

23 May 2007    - modified ithermal into a field to treat the BC's
                 for plane stress, plane strain and axisymmetric
                 elements in mixed *STATIC and *HEAT TRANSFER
                 calculations.

28 May 2007    - created fully liquid-structure coupling for a one-
                 dimensional flow in a flexible tube

30 May 2007    - simplified materialdata_me.f

3 June 2007    - started to split overall check of mechanical
                 and thermal convergence: qa,cam.. vectors of
                 length 2 instead of scalars

5 June 2007    - corrected an error in couptempdisps.f

7 June 2007    - simplified initialaccel.c

9 June 2007    - simplified mafillsm.f

16 June 2007   - transformed the logical mass into a vector: index 0
                 for mechanical calculations, index 1 for thermal
                 calculations

20 June 2007   - started to implement spring elements

27 June 2007   - linear and nonlinear springs seem to work

7 July 2007    - started to code dashpots for linear dynamic calculations

10 July 2007   - corrected a couple of small errors in gen3dnor.f.

26 July 2007   - tried different differential equation solvers for
                 damped linear dynamics (dderkf, ddeabm and ddebdf)

30 July 2007   - dashpots in combination with steady state dynamics
                 works

6 Aug 2007     - new fluid elements: free and forced vortex, absolute-
                 to-relative elements and vice-versa, Moehring elements

10 Sep 2007    - closed the .inp, .dat and .sta file properly at the
                 end of the calculation

11 Sep 2007    - changed ithermal into ithermal(2) in file gen3dnor.f

16 Sep 2007    - introduced an error message in gen3dboun and gen3dforc
                 to cover the situation in which rotational loadings
                 or constrains are applied to a node in any but the 
                 first step

24 Sep 2007    - made a change in results.f (treatment of MPC's)

25 Sep 2007    - made a change to nonlingeo.c and prediction.c: 
                 mechanical results were not correctly saved during
                 a heat transfer step.

30 Sep 2007    - resolved the problem from 16 Sep 2007: definition of
                 rotational BC's and moments in any but the first step
                 is now OK.

2 Oct 2007     - small corrections to creeps.f, plastics.f, gen3dboun.f,
                 gen3dforc.f and checkconvergence.c

6 Oct 2007     - made a change in steadystate.c: for cyclic symmetry
                 only ngraph sectors are stored
               - allowed for a user-defined amplitude definition

10 Oct 2007    - continued to work on frequency-dependent dashpot
                 constants

15 Oct 2007    - correction in the expansion of MPC's in expand.c

16 Oct 2007    - replaced umat_aniso_creep.f and expand.c
                 for an anisotropic creep subroutine the creep
                 strain goes in and the stress comes out

20 Oct 2007    - started to implement an uncoupled
                 temperature-displacement procedure

25 Oct 2007    - changed the way the imaginary part of cloads and
                 dloads is stored

7 Nov 2007     - improvements in frd output in case of divergence
               - linear application of user defined loads for
                 static calculations 

14 Nov 2007    - included participation factors for steady state
                 dynamics calculations in the .dat file

19 Nov 2007    - modified dyna.c in order to take contact
                 into account

21 Nov 2007    - added the variable OUTPUT to *VIEWFACTOR,WRITE.
               - P*NP can be used for *STATIC calculations as well

01 Dec 2007    - started to combine contact with modal dynamic 
                 calculations

15 Dec 2007    - removed an error in rhs.f and mafillsm.f: force on
                 dependent node in MPC is redistributed among the
                 independent nodes

18 Dec 2007    - thickness of plane strain elements is reduced if
                 there are axisymmetric elements in the model

20 Dec 2007    - corrected an error in tempload

9 Jan 2008     - started the implementation of computational fluid
                 dynamics

10 Jan 2008    - changed the format for elements in the .dat file to
                 allow for element numbers exceeding 99999
               - implemented engineering constants for orthotropic
                 elastic materials

14 Jan 2008    - made a change in gen3dnor.f

22 Jan 2008    - worked on the implementation of isochoric elements
                 (C3D20RH; was started years ago)

23 Jan 2008    - made a correction in nonlingeo.c, mafillgas.f and
                 resultgas.f

30 Jan 2008    - corrected the node order of 3-node elements in frd.f
               - replaced f20.10 by f20.0 in buckles.f, frequencies.f
                 and heattransfers.f

02 Feb 2008    - finished a preliminary version of cfd (coding only);

05 Feb 2008    - continued work on rotational rigid body motion with
                 linear dynamics
               - continued work on incompressible elements

09 Feb 2008    - expanded v,vold,vini,vr,vi and vt to contain 5
                 entries for the variables (one extra space for
                 static pressure)

10 Feb 2008    - checking expansion; nearly OK, only segststate
                 still deviates

11 Feb 2008    - expansion to 5 entries works

12 Feb 2008    - the calculation of idof is changed to allow for 8 dofs:
                 temperature, 3 displacements or velocities, static
                 pressure, 3 angles or rotation (instead of 7: static
                 pressure is new)
               - changed the internal dofs for rotations to 5,6 and 7.
                 dof 4 is for static pressure. The external dofs for 
                 rotations remain 4,5 and 6, for static pressure it is 8.
                 For temperature the internal dof is 0, the external
                 dof is 11.

16 Feb 2008    - calculated a default position tolerance in case none is
                 given by the user.

17 Feb 2008    - removed an error in calinput.f and near2d.f
               - continued checking of precfd.f

21 Feb 2008    - removed an error in arpackcs.c

24 Feb 2008    - debugged initialcfd.f

1 Mar 2008     - started adaptive increment size in modal dynamic
                 calculations.

4 Mar 2008     - modal dynamics with adaptive increment size seems to 
                 run

5 Mar 2008     - corrected an error in dyna.c

11 Mar 2008    - corrected an error in selcycsymmods.f and mpcrem.f
               - in modal dynamics and steady state dynamics calulations
                 any previous loading is removed

12 Mar 2008    - isochoric elements seem to work
               - .sta file is written for modal dynamics calculations
                 too

21 Mar 2008    - included code for multistage MPC's
               - continued computational fluid dynamics

27 Mar 2008    - made some changes to multistages.f
               - modified the header of user subroutine dflux.f

31 Mar 2008    - continued debugging of 3D fluid dynamics

3 April 2008   - modifications to dyna.c

10 April 2008  - started an update of the gas network elements

15 April 2008  - continued update of gas network elements

19 April 2008  - finished update of gas network elements
               - extended output for cyclic frequency calculations
                 (PHS,MAXU,MAXS)

23 April 2008  - made some quality improvements in incplas.f

28 April 2008  - continued computational fluid dynamics
                 ordered nelemface
               - corrected an error in mafilltrhs.f

29 April 2008  - update of dyna.c

7 May 2008     - introduced contact damping and friction for
                 modal dynamic calculations

15 May 2008    - different meaning of MAXU and MAXS in arpackcs.c
               - correction in steadystate.c

27 May 2008    - changed the order of the integration points in
                 gauss3d6

31 May 2008    - coded a linearized version of the mean rotation MPC

3 June 2008    - implemented pre-tension section to simulate
                 pre-tension in bolts (3D only).

5 June 2008    - connected the linear equations solvers to compfluid.c
                 for liquids (pressure equation)
               - improved error message for zero columns in the
                 stiffness matrix

12 June 2008   - started to work on the improvement of the viewfactor
                 calculations

18 June 2008   - corrections in expand.c and pretensionsections.c

21 June 2008   - corrected an error in expand.c
               - introduced the FIXED parameter on the *BOUNDARY card

23 June 2008   - changed 1.d-10 to 1.d-5 as smallest allowable
                 coefficient in a MPC

28 June 2008   - implemented STEADY STATE calculations for the
                 linear dynamics procedure

1 July 2008    - coded an update of CYCLIC MPC's for nonlinear 
                 calculations (nonlinmpc)

3 July 2008    - corrected an error in envtemp.f

6 July 2008    - made some changes in compfluid.c: stable time increment
                 is calculated in each iteration anew

9 July 2008    - continued fluid dynamics: change of boundary conditions
                 has to be limited to guarantee stability.

13 July 2008   - improved the time increment management for 
                 computational fluid dynamics

19 July 2008   - set the mechanical strain to zero at the end of a
                 frequency step
               - started changes in the contact formulation: 1. adjust
                 in the first iteration of the first increment of the
                 first step; 2. zero force for too large distances
                 3. contact area division number

30 July 2008   - made a change to surfaces.f

8 August 2008  - corrected an error in printoutint.f

4 Sept 2008    - coded 2nd order derivatives in shape3tri,shape6tri,
                 shape4q and shape8q

9 Sept 2008    - supplemented subroutine springstiff with the derivatives
                 of xi and eta; contact convergence should improve
               - corrected errors in nonlinmpc (CYCLIC) and bounadd

14 Sept 2008   - made corrections in radiates.f, incplas.f and
                 usermaterials.f

20 Sept 2008   - introduced CE for the equivalent creep strain
                 for anisotropic materials

24 Sept 2008   - changed to another viewfactor calculation
               - minor changes in radmatrix, e_c3d_th and cascade

11 Oct 2008    - change of extrapolation of the mass flow to the
                 end nodes (fluidextrapolate.f)
               - correction in umat_abaqus.f and umat_abaqusnl.f
               - correction for section forces in map3dto1d2d.f

13 Oct 2008    - the FREQUENCY and TIME POINTS parameters are
                 mutually exclusive for data storage keyword cards.

28 Oct 2008    - modified the calculation of section forces to
                 accommodate for large deformations

7 Nov 2008     - modified the output format for SDV in the .dat 
                 and .frd file

9 Nov 2008     - no correction of dependent node for nonmatching
                 cyclic symmetry conditions
               - cyclic conditions are considered to be linear
                 (no update due to large deformation)
               - changed interface for umatht and dload (for
                 lubrication problems)

13 Nov 2008    - wrote user routines for coupled mechanical-
                 lubrication problems

15 Nov 2008    - made a change in springstiff: consistent tangent
                 matrix was not correct

17 Nov 2008    - started to change dyna to take contact into account

30 Nov 2008    - driven lid cavity (incompressibile fluid dynamics)
                 works!
               - started the implementation of additional MPC's for
                 middle nodes belonging to dependent contact
                 surfaces

7 Dec 2008     - additional MPC's for 3D and 2D elements seem to work

10 Dec 2008    - changed PE into PEEQ and CE into CEEQ (print requests
                 or frd requests for the equivalent plastic/creep
                 strain)
               - created printing output (.dat file) for gas networks:
                 static pressure (PS), total pressure (PT) and
                 mass flow (MF)

11 Dec 2008    - created printing output (.dat file) for 3D fluid flow:
                 velocities (V) and static pressure (PT)

15 Dec 2008    - no motion of dependent variables in cyclic
                 symmetric calculations (generatecycmpcs.f)

16 Dec 2008    - the triangulation file for cyclic symmetry conditions
                 with dissimilar meshes takes the job name and
                 ending .tri

18 Dec 2008    - corrected an error in shape8q (calculation of xsi) and
                 all other 2D shape functions

24 Jan 2009    - got to work airfoil with near zero viscosity and zero
                 wall conditions (compressible fluid); smoothing is
                 not exactly the same as in Nithiarasu's program;

25 Jan 2009    - got to work airfoil with Euler conditions (MPC's for
                 fluids)

2 Feb 2009     - corrected an error in gen3dnor.f

4 Feb 2009     - Zienkiewicz-Zhu error estimator now also works for
                 frequency, buckling, modal dynamics and steady
                 state dynamics calculations (stx instead of sti in
                 the call of out.f)

7 Feb 2009     - coded shock viscosity smoothing
               - included PARDISO as solver

10 Feb 2009    - corrected an error in remastruct: mass[0]=1

21 Feb 2009    - wrote a routine to calculate the lift and drag force

5 Mar 2009     - calculation of the velocity through derivation
                 in dyna and dynacont
               - replaced logical by integer in fluid calculations

7 Mar 2009     - worked on turbulence (SST model)

8 Mar 2009     - started work on pre-tension for 2D elements

10 Mar 2009    - finished pre-tension for 2D elements

19 Mar 2009    - introduced the variable pnewdt in umat_user.f

21 Mar 2009    - coded direct modal damping

22 Mar 2009    - continued to work on 3Dfluids and cyclic MPC's

4 April 2009   - provided for BX, BY and BZ as volumetric loading
                 including nonuniform loading (BXNU...)
               - included the velocity in the subroutine parameters
                 of dload.f

10 April 2009  - started acceleration of dyna

19 April 2009  - added some parameters to user routine dload

21 April 2009  - coded direct damping for steady state dynamics

22 April 2009  - PU and PHS are calculated for all sectors
                 requested

26 April 2009  - corrected an error in incplas.f (residual stress)

2 May 2009     - started tied contact

10 May 2009    - tied contact works
               - corrected an error in e_c3d_trhs.f

19 May 2009    - started Mortar contact

15 June 2009   - allowed for local coordinate systems for
                 fluid output
 
20 June 2009   - changed the calculation of rf for nodes belonging
                 to MPC's and 1-d or 2-d elements
               - made an update for gas networks (not finished)
               - started debugging turbulence

23 June 2009   - made a correction in results.f and pretensionsections.f

26 June 2009   - added the cylic symmetry axis to the displacement
                 headers in the frd file

27 June 2009   - provided two entries in field iperturb in order to
                 distinguish between material and geometrical 
                 nonlinearities; nlgeom not automatically active for
                 *DYNAMIC and *COMBINED TEMPERATURE-DISPLACEMENT 
                 procedures

28 June 2009   - started the multithreading version of compfluid

8 July 2009    - update of mortar contact

10 July 2009   - removed an error in radmatrix.f
               - updated modal dynamic and contact

23 July 2009   - accelerated the execution of dynacont and dfdbj

25 July 2009   - change in nonlingeo: ielas=1 is only active in the first
                 iteration of the first increment if ilin=1 AND if the
                 step is not dynamic

3 August 2009  - some small changes to Mortar contact

5 August 2009  - added istep and iinc to the ABAQUS umat files
               - user material does not automatically imply geometric
                 nonlinearity

11 August 2009 - checked for SPC's in contact middle slave nodes in
                 routine gencontmpc.c

20 Sept 2009   - updated Mortar contact

21 Sept 2009   - made a correction in frequencies.f, buckles.f,
                 modaldynamics.f and steadystatedynamics.f

3 Oct 2009     - accounted for 'NLGEOM=NO' for ABAQUS compatibility
               - made some corrections in dynacont.c

11 Oct 2009    - allowed for a selection of nodes for modal dynamics
                 calculations in order to speed up the calculations

12 Oct 2009    - started to change mint_ into mi(2) in order to store
                 the maximum number of dofs per node

13 Oct 2009    - continued (not finished yet)

24 Oct 2009    - changed nactdof(1:3,*) into nactdof(1:mi(2),*)

25 Oct 2009    - introduced the parameter TIME RESET on the *STATIC and
                 *HEAT TRANSFER keyword card

26 Oct 2009    - in nonlinear calculations the nodes are listed where the
                 residual forces and variable changes are maximum

28 Oct 2009    - corrected an error in springstiff.f
               - inverted the order of working through the amplitudes:
                 last comes first (a redefined amplitude overrules
                 the earlier definitions)

31 Oct 2009    - ran valgrind and started removing complaints by
                 valgrind

1 Nov 2009     - started to use mi(2) for defining the size of field
                 v, vold... -> smaller fields for thermal and
                 mechanical calculations

4 Nov 2009     - mi(2) works for values >= 3.
               - started introducing sets to limit output to the 
                 frd file

10 Nov 2009    - output to the frd file can be limited to a node set

14 Nov 2009    - made substantial changes in dyna.c and dynacont.c
                 to speed up modal dynamic contact calculations

15 Nov 2009    - xl2 and similar fields start now from 1, not 0.

22 Nov 2009    - made substantial changes in dyna.c and subprograms
                 to speed up execution (force CHANGES are calculated)

28 Nov 2009    - major speed up changes for modal dynamics finished

12 Dec 2009    - continued speed optimization of modal dynamics
                 calculations

15 Dec 2009    - implemented local system output for tensors in
                 frdtensor.f

9 Jan 2010     - started coding liquid channels as 1-D networks

12 Jan 2010    - von Karman vortex street about a cylinder works

17 Jan 2010    - coded linear pressure-overclosure

23 Jan 2010    - changed once again output for MAXS in arpackcs
                 (quousque tandem abutere......)
               - worked on friction in modal dynamics + contact
               - started coding a different shock capturing
                 procedure

25 Jan 2010    - made some changes in e_c3d_th.f (no displacement
                 information available for purely thermal calculations)

31 Jan 2010    - expanded restrictors and branches to liquid
                 applications (1D networks).

4 Feb 2010     - changed the way in which, for a given slave node, the
                 corresponding master triangle is found for spring contact
                 purposes

14 Feb 2010    - made a change in results.f

21 Feb 2010    - for contact springs the pressure should be multiplied by
                 the slave area; this major change was started today.

25 Feb 2010    - changed the proximity check in linkdissimilar.f

7 Mar 2010     - made corrections for ZZS output and ngraph>1
               - coded slave area calculations for 2D contact applications

13 Mar 2010    - coded the parameter ADJUST on the *CONTACT PAIR card
               - got rid of IN-FACE SLIDING

15 Mar 2010    - introduced local time stepping for steady state CFD
               - cleaned up e_c3d_[v1,p,v2,t]rhs.f
               - previous stable cfd version: 13 Mar 2010

22 Mar 2010    - nodes with largest displacements etc. in 2d structures
                 are the original node numbers now, not the expanded
                 numbers

26 Mar 2010    - corrected bodyforce.f
               - defined the size of xstiff in dyna.c and steadystate.c
                 as (long long)
               - corrected an error in frdvector.f

28 Mar 2010    - local time stepping in steady state CFD calculations seems
                 to work

30 Mar 2010    - made some changes in preparation for the Bishop 4-node
                 shell element

11 Apr 2010    - changed the dimension of field IL and IU in all sort
                 routines from 21 to 31.
               - started to code friction for static contact calculations
                 (penalty)

18 Apr 2010    - changed the definition of c0 for linear contact springs in
                 gencontelem.f
               - changed the search for corresponding master triangles
                 in gentiedmpc to kneigh=1 and neighbor search 

19 Apr 2010    - plane stress, plane strain and axisymmetric elements 
                 should be defined in the z=0 plane. This is now checked 
                 in gen3delem.f

20 Apr 2010    - started to compare frd files for selected test examples
                 (in addition to dat files)

25 Apr 2010    - changed fields for networks in order to allow for 
                 geometric data as unknowns
               - default for *EL FILE is GLOBAL=YES

1 May 2010     - for a gate valve the extent of closure can be solved for:
                 example for geometric unknowns in networks

17 May 2010    - worked on liquid channels
               - corrected an error in allocation.f

20 May 2010    - made a correct in dyna.c (in case a dload subroutine has
                 been defined)

27 May 2010    - improved the linear contact spring relationship
               - worked on liquid channels

9 June 2010    - modified the linear contact spring relationship slightly

14 June 2010   - started debugging backwater calculations

16 June 2010   - change the convergence rules for changing numbers of 
                 contact spring elements (LARGE SLIDING)

30 June 2010   - simple backwater calculations work (sluice gate/reservoir)

12 July 2010   - weir calculations work

5 Aug 2010     - made some small corrections

5 Sep 2010     - 2d results are calculated in each iteration so that they
                 are available in the user subroutines

9 Sep 2010     - added a user subroutine for concentrated loads

10 Sep 2010    - worked on gap conductance

11 Sep 2010    - corrected an error in frdcyc (output of CONT)

13 Sep 2010    - included the C3D8I and C3D8R formulation coded by
                 otto bernhardi

16 Sep 2010    - gap conductance works (heat transfer through mechanical
                 contact)

23 Sep 2010    - coded an acoustic material (pressure only)
               - coded Coulomb friction for penalty contact

6 Oct 2010     - changed MPC's for nodal forces on shells in
                 gen3dforc.f

9 Oct 2010     - worked on contraction, enlargement, drop and step
                 for liquid channels

12 Oct 2010    - contraction, enlargement, drop and step for liquid
                 channels seem to work

20 Oct 2010    - corrected an error in dyna.c and steadystate.c

23 Oct 2010    - changed dyna for cyclic symmetry: only the part of the
                 eigenvectors which is needed is expanded.

31 Oct 2010    - implemented a slightly different scheme for compressible
                 CFD-calculations

5 Nov 2010     - original CFD-scheme proved to be superior

7 Nov 2010     - started to work on the acceleration of steadystate

12 Nov 2010    - finished acceleration of dyna and steadystate

15 Nov 2010    - accelerated expand.c
               - extended the arguments of cload.f
               - coded MAXE as output variable (for frequency 
                 calculations with cyclic symmetry)
		 
20 Nov 2010    - started acceleration of CFD-code

21 Nov 2010    - corrected small errors in dyna.c, dynacontc. and dfdbj.c

13 Dec 2010    - tried another variant of shock smoothing (exact
                 simulation of the second order derivative )

1 Jan 2011     - calculating presgradient after applying the pressure
                 boundary conditions

3 Jan 2011     - calculating the pressure switch as a truely second
                 derivative (normed such that max in field is 1)

5 Jan 2011     - removed shocksmoothing based on local von Mises stress

20 Jan 2011    - introduced basic smoothing of 0.1 for Euler calculations
               - included Couette and Poiseuille examples

6 Feb 2011     - changed applybounp.f (MPC's)

9 Feb 2011     - started to work on MPC's for networks

12 Feb 2011    - MPC's for networks work

15 Feb 2011    - updated fridaforc.f
               - added nonhomogeneous terms to network MPC's

28 Feb 2011    - modified results (network output)

2 Mar 2011     - started changes for contact:
                 - proportional reduction of penetration for
                   overclosures
                 - change friction (*CHANGE FRICTION)
                 - model change for contact pairs (*MODEL CHANGE)

8 Mar 2011     - improved *PRETENSION-SECTION
               - *FRICTION CHANGE works
               - *CHANGE MODEL works
               - proportional reduction of penetration for 
                 overclosures works

9 Mar 2011     - corrected an error in pretensionsections.f and all
                 restart routines (restartread.f, restartwrite.f and 
                 skip.f)

14 Mar 2011    - ordered nelemload as soon as loading is being read
                 from file

15 Mar 2011    - the radiation matrix is recalculated only if the
                 emissivity or the viewfactors changed

24 Mar 2011    - corrected an error in radmatrix.f

27 Mar 2011    - changed storage of radiation matrix from full
                 storage into sparse storage

5 April 2011   - wrote an interface to solve asymmetric matrices
                 with PARDISO

7 April 2011   - paralellized the calculation of the viewfactor
                 matrix for radiation (cave: logicals in FORTRAN do
                 not seem to be thread-safe)

9 April 2011   - got rid of iptri for radiation and introduced a
                 new entry in kontri -> accelerates execution

19 April 2011  - introduced initialchannel.f

20 April 2011  - changed the allocation of xstiff to (long long)

3 May 2011     - started to paralellize results.f

14 May 2011    - paralellization of results.f finished
               - changed a parameter in gencontelem.f

19 May 2011    - in user subroutine cload fn is provided. To this
                 end the elements are determined in dyna.c for
                 which the stresses have to be determined.

24 May 2011    - made subroutine frditeration.f available to write
                 the displacements in each iteration to file (for
                 debugging purposes)

7 June 2011    - documented beam element examples
               - started to work on complex frequencies

9 June 2011    - corrected an error in mafillsmcs.f
               - changed mi(2)into mi(*) in the integer declarations

13 June 2011   - changed ielorien(*), ielmat(*) and thicke(2,*) into
                 ielorien(mi(3),*), ielmat(mi(3),*) and thicke(mi(3),*)
                 for composite applications

4 July 2011    - made a small change in spooles.c (number of cpus
                 for parallel radiation applications)

5 July 2011    - inserted a factor of 2. for Coriolis in e_c3d.f and
                 e_corio.f

6 July 2011    - made some changes for complex frequency calculations

17 July 2011   - change in .eig-file: for calculations without cyclic
                 symmetry the square of the eigenvalue (square of the
                 eigenfrequency) is stored
               - Coriolis works

20 July 2011   - took care of displacement and stress output for 
                 composites

25 July 2011   - started to change SPC and MPC-treatment for fluids

30 July 2011   - introduced label PRF for *NODE FILE: size and angle
                 of reaction forces for cyclic symmetry frequency
                 calculations
               - the square of the eigenfrequencies is stored in the
                 .eig file (the square can be negative - buckling)

1 Aug 2011     - for cyclic symmetry calculations the imaginary part
                 of the strains is stored as well (if E is requested)

7 Aug 2011     - introduced the mechanical strain ME as output variable
               - corrected some mistakes in umat_abaqusnl.f 

9 Aug 2011     - corrected a mistake in CalculiX.c/allocation.f
                 (initialization of xstate/definition of nstate)

7 Sept 2011    - corrected errors in mastructcs.c and mafillsmcs.f
                 (springs in connection with cyclic symmetry)

8 Sept 2011    - created an option to store the displacements of the 
                 last iterations (for debugging purposes in case of
                 divergence)

13 Sept 2011   - introduced a check whether in mechanical calculations
                 with temperature loading a temperature was assigned to
                 all nodes belonging to elements

2 Oct 2011     - introduced fields t0g and t1g to take temperature gradients 
                 across shells into account
               - continued automatic remeshing for quadratic elements in
                 contact

8 Oct 2011     - corrected the calculation of the external faces and solid 
                 boundary nodes in precfd.f

9 Oct 2011     - change treatment of slave contact nodes in 2d plane stress/
                 strain and axisymmetric elements in gen3dsurf.f

11 oct 2011    - reversed change from 25 July 2011 and 8 Oct 2011. Reason:
                 wrong results of convergent Jeffery-Hamel flow

12 Oct 2011    - improved automatic remeshing for C3D10 with contact

16 Oct 2011    - introduced an error estimator (ERR) based on the extrapolation
                 within element belonging to one and the same node

25 Oct 2011    - OUTPUT=2D or OUTPUT=3D is required in the presence of
                 shells or beams (or SECTION FORCES)

27 Oct 2011    - accelerated CFD (stored dpress in e_c3d_prhs.f)

30 Oct 2011    - reversed change of 25.10
               - introduced the parameter CONTACT ELEMENTS on the
                 *NODE FILE and *EL FILE cards

31 Oct 2011    - worked on turbulence models for CFD.

7 Nov 2011     - in CFD calculations the solid surface and freestream
                 surface have to be declared as nodal sets (only
                 used for turbulence)

9 Nov 2011     - started updating gas networks

13 Nov 2011    - adjusted the time increment for CFD w.r.t. the
                 turbulent viscosity
               - default for beams and shells is OUTPUT=3D, for plane
                 stress, plane strain and axisymmetric elements it is
                 OUTPUT=2D

14 Nov 2011    - coded *CHANGE MATERIAL and *CHANGE PLASTIC in order to
                 change plastic material data within a step
               - no creep in a *STATIC step (change of -52 into -51)

16 Nov 2011    - changed the error estimator -> standard deviation instead
                 of max-min

24 Nov 2011    - made a small change to shape8hu.f
               - coded the interpolation of initial fields in integration
                 points for quadratic elements remeshed due to contact
               - incorporated some changes for gas networks

26 Nov 2011    - no creep in a *STATIC step. Use *VISCO instead

1 Dec 2011     - replaced CCX_NPROC by OMP_NUM_THREADS

7 Dec 2011     - introduced field emeini for umat user routines

10 Dec 2011    - corrected some errors in remeshcontact.c and 
                 remeshcontactel.f

17 Dec 2011    - made some corrections for the storage of contact variables
                 in the .dat file for modal dynamic calculations
               - changed k and ipoint into long long in matrixstorage.c

22 Dec 2011    - corrections to modal dynamics + contact friction
               - correction to multithreading

2 Jan 2012     - worked on tension-only materials

12 Jan 2012    - changed calculation of initial temperatures in initialnet.f

16 Jan 2012    - changed e11.4 into e13.6 in all printout*.f files

22 Jan 2012    - started change in contact: consistent derivation of
                 the continuous normal

28 Jan 2012    - corrected an error in checkconvergence.c and springstiff.f

5 Feb 2012     - contact: changed continuous normal back to mathematically
                 correct normal

8 Feb 2012     - corrected an error in nonlingeo.c (emeini)

19 Feb 2012    - updated Mortar contact (without friction)

25 Feb 2012    - changed the format of the .frd file into a mixture of
                 ASCII and binary information in case *NODE OUTPUT or 
                 *ELEMENT OUTPUT is used.

4 Mar 2012     - changed format for node and element number in the .dat
                 file to i10 (from i6)

10 Mar 2012    - made some changes in createmddof.f and cycsymmods.f

12 Mar 2012    - corrections in steadystate.c and rectcylvi.f

13 Mar 2012    - N on the *CYCLIC SYMMETRY MODEL card is compared with the
                 angle based on the geometry.
               - extrapolation of the network mass flow to the end nodes
                 is done in radflowload -> can be used as boundary condition
                 in a subsequent thermomechanical structural calculation
                 (determination of the heat transfer coefficients)

18 Mar 2012    - corrected an error in dyna.c (several steps with
                 restricted output -> initial conditions in subsequent
                 step for ALL nodes)

23 Mar 2012    - introduced a random error of 0.1 % in gen3dfrom1d.f in
                 order to get rid of hourglassing in beam elements.

26 Mar 2012    - removed change from 23 March.
               - started to code the expansion of linear shells, beams,
                 axisymmetric, plane stress and plane strain elements

10 Apr 2012    - removed an error in nonlingeo.c
               - additional option for calculating viewfactors only

19 Apr 2012    - change in triangulate: now several faces belonging to one
                 and the same element may belong to the master surface
                 of a cyclic symmetry tie

22 Apr 2012    - corrected an error in compfluid.c: instationary 
                 incompressible flow works (Couette)

29 Apr 2012    - introduced larger time step for the stability terms
                 for incompressible fluid calculations

1 May 2012     - removed call to applybounv in between mafillv1rhs and
                 mafillv2rhs

5 May 2012     - started to change the application of boundary conditions
                 for incompressible fluids

10 May 2012    - made a change in e_c3d.f for contact springs:
                 important in the first iteration for given 
                 displacements

11 May 2012    - change in springstiff and springforc: Coulomb friction
                 is only taken into account for dynamic calculations
                 (linear and nonlinear) and geometrically nonlinear
                 static calculations

14 May 2012    - changed applyboun.f to include boundary conditions for
                 the turbulent variables

23 May 2012    - corrected small errors (for thermal calculations)

24 May 2012    - accelerated some CFD-routines

29 May 2012    - made a change in gen3dboun.f and flowresult.f

30 May 2012    - updated Mortar contact

3 June 2012    - CFD: MPC's are updated between step 1 and step 2:
                 necessary for cyclic symmetry calculations

14 June 2012   - started to work on submodels

27 June 2012   - continued work on submodels

5 July 2012    - started work on automatic cyclic symmetry
                 conditions for CFD
               - submodels seem to work

18 July 2012   - step time is taken into account for linear calculations
                 (amplitude definitions)
               - corrected an error in thermal contact
 
23 July 2012   - changed the order of the last line in field ifacew1 and
                 ifacew2

28 July 2012   - made some corrections in frd.c
               - include modifications by Stefanie Asenbauer

4 Aug 2012     - modified plastic routines (*VISCO)
               - adjustment in e_c3d.f for submodes with nlgeom

7 Aug 2012     - made a correction in remeshcontactel.f for elements with
                 more than one face belonging to a slave or master
                 contact surface

6 Sept 2012    - corrected an error in remeshsurf.f

13 Sept 2012   - inserted cgx reading routines for binary frd files
                 (submodel applications)
               - allowed for contact calculations with linear strains
                 (NLGEOM is not automatically activated for contact)
               - allowed for storage of the triangulation of the master
                 surfaces for cyclic symmetry, contact and tied contact

 29 Sept 2012  - corrected errors pointed out by valgrind while running
                 the test examples

 7 Oct 2012    - worked on mafillsmas (solution of asymmetric systems
                 of equations) 

 20 Oct 2012   - changed c0=1.d-6*dsqrt(area) into c0=1.d-3*dsqrt(area)
                 in gencontelem.f

 21 Oct 2012   - worked on CFD + cyclic symmetry

 22 Oct 2012   - contact penetration is reduced proportionally to the
                 step time only in the first step (change in gencontelem.f)

 28 Oct 2012   - changed springstiff: introduced vini

 3 Nov 2012    - removed change from 28 Oct. 

 5 Nov 2012    - changed cylindrical into cartesian coordinates in 
                 interpolcycsymcfd.c
               - changed 1.d-5 into 1.d-30 in bounadd.f

 8 Nov 2012    - continued to work on CFD and cyclic symmetry

 12 Nov 2012   - worked on CFD and cyclic symmetry

 14 Nov 2012   - added a "C" in sixth position for linear elements after
                 remeshing of quadratic elements at contact surfaces
               - removed remeshing of quadratic elements at contact
                 surfaces in frd-output

 17 Nov 2012   - made some important changes to springstiff.f (consistent
                 stiffness matrix: inclusion of normal force contribution
                 in the tangential stiffness)

 25 Nov 2012   - made some changes for the automatic generation of a
                 integer*8 version

 29 Nov 2012   - cleaning up files: systematic application of
                 implicit none; replacing numbers in FORTRAN subroutine
                 calls by variables (needed for the integer*4 ->
                 integer*8 transition).

 5 Dec 2012    - checking master and slave facial surfaces for identical
                 faces (in allocont.f).

 9 Dec 2012    - started combined solution procedure (instead of 
                 alternating) of gas and solid temperatures for generic
                 network elements

 8 Jan 2013    - worked on dashpot forces in steady state dynamics 
                 calculations

 17 Jan 2013   - changed the defaults for penalty contact

 19 Jan 2013   - modification for axisymmetric and plane strain elements
                 in e_c3d_th.f, advecforc.f and advecstiff.f

 28 Jan 2013   - corrected the ASCII output from C-Programme (included
                 (float))

 31 Jan 2013   - changed map3dto1d2d for a correct interpolation of the
                 forces
               - created networkinum.f 

 26 Feb 2013   - for cyclic symmetric modal dynamics or steady state dynamics
                 calculations point forces in other sectors can be defined
                 in the global carthesian system or local cylindrical 
                 system.
               - modification in linkdissimilar for non-multistage
                 calculations
               - compressible laminar cfd-calculations work for selected
                 examples (linear Couette, Carterproblem)

 28 Feb 2013   - introduced the options REMOVE and REMOVE ALL on the 
                 *EQUATION card

 6 March 2013  - started change for inclusion of user-defined pressure-
                 overclosure relationship for contact
               - change in restart (storage of plicon, plkcon ...)

 9 March 2013  - splitted updatecfd.f into updatecon.f and con2phys.f

 13 March 2013 - changed 4 into 14 in frd.c for PHAXX...
               - corrections for tabular data underneath *SURFACE
                 BEHAVIOR

 17 March 2013 - introduced linear regression for CFD-calculations with
                 nonzero shock coefficient

 21 March 2013 - changed CLOAD,DLOAD,CFLUX,DFLUX: if redefined within same
                 step for same dof: added instead of replaced
               - add INLET and OUTLET (network elements)
               - FLUX no also works for non-CFD applications

 24 March 2013 - started to linearize contact for subsequent frequency
                 calculations (arpack.c)

 25 March 2013 - made some important changes to complexfreq.c

 2 April 2013  - made some corrections in complexfreq.c
               - reduced CFD time scales to dtimef and dt(*)

 8 April 2013  - worked on arpack.c and arpackcs.c (taking into account
                 contact element stiffness; same as on March 24).
               - selecting CONTACT ELEMENTS on *NODE FILE visualizes
                 the remeshing of the quadratic elements adjacent to
                 a contact surface

 13 April 2013 - removed an error in knotmpc.f and fillknotmpc.f (wrong
                 sign of field e)
               - started differentation in dimensionality of knots

 28 April 2013 - removed an error for S6-elements from gen3dforc.f

 30 April 2013 - .eig-file modified to accept complex eigenvalues
               - complexfreq.c modified in order to store complex
                 eigenvalues and eigenvectors

 5 May 2013    - started to modify steadystate.c in order to handle
                 nonorthogonal eigenvectors and complex eigenfrequencies

 6 May 2013    - continued to work on complexfreq.c and steadystate.c
               - pre-tension beam elements are removed after generating
                 the pre-tension MPC's

 11 May 2013   - coded shape functions for a 21-node hexahedral element
                 (reduced from a 27-node Lagrange hexahedral element)
                 and a 9-node quadrilateral element; possible 
                 applications: penalty contact

 12 May 2013   - changed .frd output requests V, S and HFL for 
                 CFD-calculations into VF, SF and HFLF.
               - changed the fluid frd-file ending into
                 jobnamef.frd
 
 16 May 2013   - started to make changes for the remeshing of C3D20
                 elements into C3D21..C3D26 elements at contact

 18 May 2013   - removed first change from 12. May 2013.

 19 May 2013   - changed names of (contact)spring and dashpot elements:
                 the number in the name is the number of master nodes
                 (i.e. one less than before; done to accommodate
                  9-node master faces)

 26 May 2013   - coded 11-noded up to 14-nodes quadratic tetrahedral
                 elements (for contact)

 27 May 2013   - introduced parameter pnewdt in incplas.f

 28 May 2013   - introduced parameter pnewdt in umat_aniso_plas.f and
                 umat_aniso_creep.f

 31 May 2013   - made a change in shellsections.f (allowed for composite
                 shells with just one layer)
               - started implementing 2x5x5 integration scheme for beams
                 (B32R)

 4 June 2013   - changed the 2x5x5 integration scheme from a Gauss-
                 Simpson scheme into a Gauss-Kronrod scheme; the latter 
                 scheme contains the 2x2x2 ordinary Gauss scheme as
                 subset (only for rectangular cross-section beams)
               - implemented weights 1/100 and 24/100 for 8-node faces
                 in contact instead of -1/12 and 1/3

 6 June 2013   - corrected an error for the output of fluid quantities

 20 June 2013  - increased the maximum number of points on a plastic stress-
                 strain curve from 20 to 200.

 25 June 2013  - switched back to a 2x2x2 integration scheme for 
                 beams with a circular cross section

 2 July 2013   - introduced VF, PSF, TSF, MACH, TTF, PTF, SF and HFLF for
                 output of fluid calculations

 3 July 2013   - corrected an error in pretensionsections.f
               - got fluid->structure interactions to work

 7 July 2013   - made some changes to steps.f, frequencies.f, arpack.c,
                 arpackcs.c and resultsmech.f in order to take previous
                 plasticity into account in a frequency calculation
 
 22 July 2013  - started to work on heat induction (electromagnetics).

 29 July 2013  - continued electromagnetics.

 3 August 2013 - corrected some errors in connection with frequency
                 calculations in combination with contact

 8 Oct 2013    - corrected an error in dyna.c

 15 Oct 2013   - started debugging inductive heating

 26 Oct 2013   - started properly deallocating all fields in CalculiX.c

 30 Oct 2013   - actualized frdread.c

 31 Oct 2013   - removed all finite element fluid subroutines; started
                 coding finite volume routines

 4 Nov 2013    - continued to work on electromagnetics

 27 Nov 2013   - started coding face-to-face penalty contact

 4 Dec 2013    - worked on electromagnetics and face-to-face penalty
 
 16 Jan 2014   - finalizing face-to-face penalty contact

 21 Jan 2014   - worked on finite volume CFD (the CBS-method was removed
                 from the code in November/December 2013: didn't work well
                 enough). The finite volume code is based on the book by
                 Ferziger and Peric.

 27 Jan 2014   - changed the calculation of inum for networksl

 28 Jan 2014   - made a change to readinput.c
               - made some small changes to isort*f

 29 Jan 2014   - corrected an error in springstiff_f2f.f

 30 Jan 2014   - corrected two errors in advecforc.f
               - continued to work on CFD

 1 Feb 2014    - got rid of field nnn (no separate renumbering any more;
                 renumbering is assumed to be done by the solver, e.g.
                 SPOOLES and PARDISO)
               - coded output of the real and imaginary part (or,
                 alternatively the magnitude and phase) of
                 contact values in cyclic symmetry frequency calculations

 4 Feb 2014    - introduced islavsurfold and pslavsurfold

 5 Feb 2014    - introduced the parameter NO CHANGE on the *VIEWFACTOR
                 card (avoids the repeated LU decomposition of the
                 radiation matrix)

 8 Feb 2014    - optimized code of shape8h.f
               - optimized code of springstiff_f2f.f
               - temporarily removed the *dtime=0. statement in 
                 checkconvergence.c: to be checked!

 12 Feb 2014   - updated rewriting for properties and face-to-face
                 penalty contact entities

 13 Feb 2014   - changed meaning of ttime: now it is the total time at the
                 start of the step
 
 16 Feb 2014   - transferred info from areaslav(3..6,*) to pmastsurf(3..6,*)

 18 Feb 2014   - got rid of xstiff in subroutines dyna.c and
                 steadystate.c

 23 Feb 2014   - change inputinfo.f, inputwarning.f and inputerror.f
                 keyword card is included in message

 24 Feb 2014   - created one version for integer*4 and integer*8
                 introduced macros ITG and ITGFORMAT

 8 March 2014  - added a mechanism to check for negative pressures in
                 face-to-face contact

 29 March 2014 - changed the definition of NNEW
 
 8 April 2014  - worked on beams with a pipe section

 14 May 2014   - finite volume CFD seems to work for incompressible 
                 laminar flow without thermal effects; the pressure
                 boundary condition is given at one element center,
                 the convection scheme is purely upwind.
               - beams with pipe section work
               - removed some errors in multiple step shell calculations
                 and shell calculations with restart

 15 May 2014   - tried upwind difference with central difference as 
                 deferred correction; is better than pure upwind
                 difference.

 21 May 2014   - text underneath *HEADING is stored at the top of the
                 frd-file
               - for axisymmetric structures with output=2d the
                 mass flow is the integral over 360 deg.
               - gamma differencing is ok, but not as good as upwind with
                 deferred central differencing

 22 May 2014   - for axisymmetric structures with output=2d the
                 force is the integral over 360 deg.
               - removed an error in mafillsmcs.f and mafillsmcsas.f

 16 June 2014  - corrected an error in mafillsm.f

 25 June 2014  - created incplas_lin.f for geometrically linear
                 calculations (not linked yet) 

 30 June 2014  - corrected an important error in incplas.f, incplas_lin.f,
                 umat_aniso_plas.f and umat_aniso_creep.f

 10 July 2014  - created a .cvg file containing convergence information

 12 July 2014  - corrected the contact energy for all but the 
                 exponential pressure-overclosure relationship

 14 July 2014  - coded the participation factors and the relative effective
                 modal mass in arpack.c and arpackcs.c
               - corrected an error in files springstiff*f and 
                 springforc*f

 15 July 2014  - coded Rayleigh damping for implicit dynamics
               - coded forces as boundary condition for submodels

 26 July 2014  - buoyancy seems to work

 30 July 2014  - wrote incplas_lin.f for small deformation plasticity
                 (no nlgeom).
               - changed the convergence defaults for *dynamic
                 (more cutbacks allowed, smallest relative increment
                  = 1.e-10)

 4 Aug 2014    - changed the reading order: moved *SURFACE on 
                 position 6 before *TRANSFORM (because of 
                 TRANSFORMF)

 7 Aug 2014    - removed an error in remastruct.c: fini and fextini should
                 not be set to zero in each iteration.

 2 Sept 2014   - removed an error in  printoutnode
               - removed usercload in dyna.c and createmdelem.f: fn will
                 be removed from cload.f (too time consuming)
 
 4 Sept 2014   - activated dashpots for *DYNAMIC calculations
               - nmethod,nactdof,bcont and fn were removed from 
                 subroutine cload.f

 14 Sept 2014  - switched arrays and columns of field vel for CFD
                 preparation to use dgmres

 15 Sept 2014  - switched to an GMRES iterative solver for the velocity and
                 temperature CFD equations

 21 Sept 2014  - introduced iaxial in all subroutines of flux.f: for the
                 networks the mass flow variable is the partial mass 
                 flow (2 %), for the element equations, however, the
                 total mass flow is to be taken

 11 Oct 2014   - introduced openmp in routines op*f
               - made some changes to the inductive heating routines

 14 Oct 2014   - cylindrical incompressible Couette flow works

 15 Oct 2014   - made a correction involving the variable iaxial

 16 Oct 2014   - made a correction to forcadd.f

 22 Oct 2014   - added again a small amount of stiffness to the mass
                 matrix to determine the initial acceleration (this
                 section was removed during a couple of weeks, however,
                 the stiffness as proven to be necessary)

 23 Oct 2014   - implemented SF,SVF and HFLF for fluids (.dat-file and
                 .frd-file)

 1 Nov 2014    - incompressible laminar CFD with wedge elements seems to
                 work

 4 Nov 2014    - the coordinates transferred to the user subroutines in
                 tempload.f are the ones in the material frame

 5 Nov 2014    - made a change in incplas.f (dxitril)

 9 Nov 2014    - increased the number of pressure iterations for CFD from 1
                 to 2 (necessary for deformed meshes)

 19 Nov 2014   - removed an error related to time points using total
                 time accross several steps
               - replaced stop by "stop 201" -> can be used to detect
                 if the program stopped in an irregular way

 20 Nov 2014   - replaced "stop 201" by "call exit(201)"

 25 Nov 2014   - enhanced and corrected the mean rotation formulation      
               - did an important change to gen3delem/gen3dboun: rotations
                 are not expanded any more using expandable rigid bodies, 
                 instead mean rotation MPC's are used        

 28 Nov 2014   - made a change to bounadd.f

 9 Dec 2014    - electromagnetism without heat induction might work
               - eliminated c3d20ri (isochoric) elements

 11 Dec 2014   - worked on heat transfer within electromagnetism

 21 Dec 2014   - worked on the documentation of electromagnetism
 
 23 Dec 2014   - took the stick as internal variable in
                 springforc_f2f and springstiff_f2f

 8 Jan 2015    - allowed for facial surfaces in cyclic symmetry definitions
 
 21 Jan 2015   - started a major change in face-to-face penalty contact  

 28 Jan 2015   - replaced mean rotation MPC's by expandable rigid bodies
                 for nonlinear dynamics: knots can take on arbitrary
                 rotational values, mean rotation MPC's are limited to
                 90 degrees

 31 Jan 2015   - changed the sign of the damping coefficient for
                 nodal diameters > number of sectors/2 in dyna.c
               - continued changes for face-to-face contact
                 (semi-smooth Newton)

 4 Feb 2015    - removed the change in face-to-face penalty contact.
               - removed an error in incplas.f.

 8 Feb 2015    - adapted *MODEL CHANGE to (de)activate elements
               - code *CHANGE SURFACE INTERACTION
               - made xstate and xstateini available in gencontelem_f2f
               - with "contact elements" all contact elements are stored
                 in file contactelement.inp. They can be loaded into cgx
                 and visualized according to step, increment, attempt
                 and iteration

 11 Feb 2015   - changed interpolatestate.f
               - reversed the first change from 31 Jan 2015

 24 Feb 2015   - introduced the possibility to take contact into account
                 in a linear elastic calculation (application: fracture
                 mechanics)

 28 Feb 2015   - introduced a line search for face-to-face penalty.

 3 Mar 2015    - checked for loss of contact at the start of a new
                 increment in gencontelem_f2f

 12 Mar 2015   - deactivated nasym for tied pressure-overclosure

 22 Mar 2015   - coded membranes and trusses (gen3dnor.f)

 3 April 2015  - modified attach.f (limitation of the solutions in
                 the subdomains to the borders of the subdomain)

 15 April 2015 - introduced an aleatoric removal of contact elements
                 in case of a local minimum of face-to-face contact

 22 April 2015 - replaced attach.f: smaller change in increment size
                 between the iterations

 23 April 2015 - used qa[2] to force a cut back in nonlingeo if the
                 linear network does not converge (cf. checkconvnet.c)

 26 April 2015 - started compressible laminar CFD with the method
                 of openCFD

 20 May 2015   - derived the contact traction for face-to-face
                 penalty contact from the stresses
               - improved the use of equations in networks
 
 9 June 2015   - worked on zero mass flow conditions in CFD-applications
               - implemented the calculations of energies in dynamic
                 applications

 25 June 2015  - continued compressible laminar flow

 2 July 2015   - corrected an error in jouleheating.f

 14 July 2015  - changed gen3dboun: applied BC to middle nodes as
                 well (additional MPC)
               - corrected use of edge loading EDNORx for shells

 26 July 2015  - changed +bp into -bp in correctvfa.f

 1 Sept 2015   - the energy is now calculated for all (nonlinear)
                 dynamic calculations

 3 Sept 2015   - made a change in gen3dboun: fixing u(n_2)=u(n) for
                 translational SPC's

 7 Sept 2015   - introduced a field "flux" in CFD

 13 Sept 2015  - continued to work on friction heating
  
 21 Sept 2015  - introducted variable iit in spring*_f2f.f

 26 Sept 2015  - made a correction for the temperatures in a 
                 pre-tension mechanical calculation 

 29 Sept 2015  - allowed for several contact pairs underneath one and the
                 same *CONTACT PAIR card

 10 Oct 2015   - introduced an extra loop in order to obtain accurate
                 results for transient cfd-calculations

 18 Oct 2015   - changed mafillpcomp (a term in the change of density
                 was dropped => improved stability)

 24 Oct 2015   - for cut-backs with surface-to-surface penalty the 
                 stiffnesses are reduced by 100 and increased to the
                 original values at convergence; the increment size
                 is not reduced for the first cut-back.

 25 Oct 2015   - changed error estimator ERR into largest difference of
                 worst principal stress in the elements adjacent to the
                 node

 28 Oct 2015   - stable compressible fluid version; (subsonic,
                 transonic and supersonic bumps work)
 
 4 Nov 2015    - made a change in mafillsmmain and mafillsm1

 5 Nov 2015    - accelerated the execution of mastruct.c, mastructcs.c,
                 mastructem.c, mastructf.c

 14 Nov 2015   - introduced several code-accelerations in mastruct.c
                 (especially for contact)

 19 Nov 2015   - posted version 2.9

 20 Nov 2015   - changed insert.c and mastruct.c 

 26 Nov 2015   - accelerated attach.f and distattach.f

 29 Nov 2015   - supersonic flow works

 30 Nov 2015   - supersonic flow works (II), slightly different version

 1 Dec 2015    - parallellized the asymmetric stiffness contributions

 5 Dec 2015    - continued to work on compressible laminar flow
                 major improvement of stability

 7 Dec 2015    - no line search for dynamic contact

 10 Dec 2015   - modified explicit dynamics

 19 Dec 2015   - viscous compressible stationary flow seems to work
                 (finite volume method)

 7 Jan 2016    - changed ifaceq(9.. into ifaceq(8.. and
                 ifacet(7.. into ifacet(6.. (i.e. no 26-node
                 hex or 14-node tet anymore).
  
 9 Jan 2016    - removed an error in beamextscheme.f

 13 Jan 2016   - creep and viscoplasticity in combination with an
                 anisotropic material is addressed by material user
                 subroutines only.
               - removed an error in compfluid for compressible
                 materials: correctvfa should never be called twice
                 without calling mafillpcomp in between (recalculation
                 of ap(i))

 21 Jan 2016   - removed the requirement for 1.d-6 relative time
                 increments for implicit dynamics in combination with
                 contact (checkconvergence.c)

 24 Jan 2016   - introduced the gamma-method in mafillvcomp with 
                 Central Difference replaced by 0.4*Upwind Difference +
                 0.6*Central Difference

 27 Jan 2016   - reset compressible CFD to UD (Upwind Difference)
               - started to parallellize nearly every CFD-routine (openMP)

 30 Jan 2016   - worked on parallellization of mafillpcomp.f
 
 31 Jan 2016   - finished parallellization of compressible cfd

 1 Feb 2016    - worked on parallellization of incompressible cfd

 2 Feb 2016    - unified the calculation of material properties in
                 compfluid.c
 
 3 Feb 2016    - made some corrections to frictionheating
               - parallellized mafillp.f

 6 Feb 2016    - changed in mafilltcomp from CD to UD (forgotten on
                 the 27th of Jan) => bumpsuperfineshallow results
                 are smooth again now

 13 Feb 2016   - worked on explicit dynamics (Carlo Monjaraz)

 3 March 2016  - updated implicit dynamics (Matteo Pacher)
               - switched everything to mafillsmmain

 6 March 2016  - put version 2.10 in the internet
               - started to use the negative range of nactdof to
                 point to SPC's and MPC's -> avoids the extensive
                 use of nident

 7 March 2016  - corrected an error in getglobalresults.c and in
                 storecontactprop.f

 17 March 2016 - updated sensitivity.c and subroutines
               - improved mafillem.f, mafilldm.f and mafillcorio.f

 28 March 2016 - started looking into periodicity for CFD calculations

 30 March 2016 - made a correction in initialnet.f
               - started to clean up fluidconstants.f
               - made a correction in mafillpcomp.f

 5 April 2016  - made some changes to calculate sensitivities
                 w.r.t. the nodes in the mesh

 9 April 2016  - continued to work on sensitivities
               - changed the dimension from 100 to 60 for the element
                 matrices and vectors except for electromagnetics

 13 April 2016 - translational periodic fluid conditions seem to work

 24 April 2016 - worked on rotational periodic fluid conditions

 28 April 2016 - continued to work on sensitivities
 
 10 May 2016   - changed the convergence criteria for gas networks

 11 May 2016   - continued to work on the convergence criteria for
                 gas networks

 17 May 2016   - removed the forced units of rpm from the rotational
                 speed entries in the vortex and Moehring fluid type
                 elements

 22 May 2016   - continued to work on cyclic symmetry conditions for
                 CFD

 16 June 2016  - updated the User's Manual for gas network elements (theory)
               - created .net - files with detailed gas network
                 information

 21 June 2016  - introduced box section general beam elements
               - continued to improve gas networks

 23 June 2016  - removed the addition of 0.5 to fluid section properties
                 and changed int into nint
               - worked on improving the initial conditions for compressible
                 networks

 7 July 2016   - corrected an error regarding *node print and *el print:
                 commands stay active across step boundaries
               - dsload can be used to apply a pressure to a surface
 
 24 July 2016  - cyclic symmetry and compressible flow works

 26 July 2016  - made a correction in map3dto1d2d_v.f
               - cyclic symmetry and incompressible flow works
 
 28 July 2016  - made some changes in gen3dfrom2d.f
               - changed the wedge integration for the mass in dynamic
                 calculations from 18 to 9 integration points (some of the
                 18 integration poins lie on the border, which causes 
                 problems in case of an expansion of a triangular axi-
                 element lying on the rotation axis)

 30 July 2016  - copied v into vold and stx into sti after the 5th call 
                 of results in nonlingeo.c
