 
========
LOG-BOOK Version 2.21
========

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

 31 July 2016   - posted version 2.11

 4 Aug 2016     - got rid of iener, replaced it systematically by
                 nener

 9 Sept 2016    - coded stress as objective function for sensitivity analysis
                - cleaned the code for implicit analysis and updated the
                 documentation (convergence criteria)
                - updated the documentation for labyrinths
                - worked on purely thermal networks with Dx-elements

 16 Sept 2016   - made some changes to the calculation of viewfactors:
                  - visibility mesh of 160 x 160 was replaced by 1280 x 1280
                  - faces too close to the horizon of the hemisphere are not
                 taken into account
                - changed the meaning of network: no network=0; thermal
                 network=1; generic network=2; athermal liquid network=3;
                 provided the keyword "THERMAL NETWORK" on the *STEP card
                - enhanced the documentation of gas pipes
                - removed some errors in objectivemain_se.c

 18 Sept 2016   - worked on thermal networks (user subroutine film.f)

 22 Sept 2016   - introduced 0.8 (v), 0.3 (p) under-relaxation coefficients
                 for incompressible flow => elements with a 1/3 skewness
                 work

 23 Sept 2016   - corrected an error in frd.c (mesh was stored more than
                 onced when called from steadystate.c)
                - added the orientation in the dat-file for the quantities
                 stored in local coordinates
                - took the design variables belonging to MPC-constraints
                 (dep and indep) out of the design variable set

 30 Sept 2016   - modified K into K-lambda*M for the eigenfrequency as
                 objective function in e_c3d_se.f
                - implemented the eigenfrequency sensitivity for cyclic
                 symmetric structures
 
 3 Oct 2016     - modified compressible cfd-calculations: introduced
                 0.8 (v), 0.3 (p) under-relaxation coefficients,
                 and jit=2 (2 pressure iterations)

 7 Oct 2016     - made some corrections for the calculation of frequency
                 sensitivities for cyclic symmetric calculations
                - implemented the paralellization of the filtering
                 of the sensitivities.

 13 Oct 2016    - looked into duns-2.7.1

 14 Oct 2016    - created extra output in springforc_f2f.f for Malte Krack
                - changed *face print into *section print and coded the
                 calculation of SOF and SOM (section force and moment)
                - stored the latest stiffness matrix in nonlingeo.c for
                 a subsequent sensitivity analysis
                - changed the calculation of the sensitivity of the
                 eigenvectors (script Petrov)
                - simplified absolute_relative.f

 15 Oct 2016    - started testing duns

 21 Oct 2016    - calculation of SOAREA, center of gravity, mean normal,
                 normal and shear force in printoutface.f
                - implemented the SPRING1, the SPRING2 and the MASS
                 element

 28 Oct 2016    - update of the documentation (several issues)
                - implementation of heating due to plasticity in dflux.f
                - inserted a call to checkdivergence after the first
                 call of radflowload in nonlingeo.c
                - implemented the BEAM nonlinear MPC
                - coded *KINEMATIC coupling

 4 Nov 2016     - small change in output for Malte Krack (springforc_f2f.f)
                - correction of the dimensions of fields yiloc and coords
                 in extrapolate.f for composite materials
                - finished linear version of *KINEMATIC coupling
                - implemented *DISTRIBUTING coupling for translations
                 (couplings.f routine)

 11 Nov 2016    - implemented *DISTRIBUTING coupling for rotations

 18 Nov 2016    - updated the sensitivity routines:
                  - sensitivity for geometric nonlinear calculations
                  - modification for the sensitivity of the shape energy
                   in nonlinear geometrical calculations
                  - correction for an error of the stress sensitivity w.r.t.
                   the material orientation
                - continued to work on *DISTRIBUTING coupling for rotations
              
 25 Nov 2016    - corrected an error for the STRESS sensitivity w.r.t.
                 material orientation
                - *DISTRIBUTING coupling works for small rotations
                - implemented *GREEN functions

 30 Nov 2016    - continued to work on block CFD (velocity for incompressible
                 fluids)

 2 Dec 2016     - corrected an error while reading the RESTART files
                - worked on *DISTRIBUTING coupling for large rotations
                - coded 6-noded composite shells

 8 Dec 2016     - continued to work on block CFD

 9 Dec 2016     - viscoplastic behavior is correctly reduced to plastic
                 behavior in a *static step (checked)
                - allowed for local orientations in combination with 
                 isotropic materials for stress output in local systems
                - submodel displacement, force and temperature boundary
                 conditions are scaled across the step for a static step
                 or in the presence of an amplitude
                - corrected an error in mafillsmmain_se.c
                - allowed for sensitivity analyses with contact for
                 the orientations as design variables

 15 Dec 2016    - adapted the facial boundary conditions in CFD according
                 to the modified element orientation in blocks

 16 Dec 2016    - removed an error in submodel scaling
                - *KINEMATIC coupling works in the global system (same
                 procedure as in ABAQUS)
                - implemented the sensitivity of Green functions
                - distance check (typdist/10) in linkdissimilar is 
                 activated for all dependent nodes
                - coded *KINEMATIC coupling for local systems
                - updated the ABAQUS umat interface (field jstep).

 20 Dec 2016    - introduced field iau6 for CFD-applications

 21 Dec 2016    - replace the call to add_sm_fl_as or add_sm_fl in mafillv*f
                 mafillp*f and mafillt*f by use of iau6
                - changed the accuracy for the iterative CFD-solver to
                 1.e-6

 22 Dec 2016    - changed the maximum number of iterations to 10 for the
                 incompressible pressure equation and the number of direction
                 vectors (nsave) to 3 => considerable speed-up

 13 Jan 2017    - set read_mode=0 in getglobalresults.c -> speedup for reading
                 the global data sets
                - corrected some errors in basis.f in connection with the
                 use of a global elset on a *submodel card
                - updated the *submodel documentation
                - worked on the combination of a submodel calculation
                 followed by a sensitivity calculation
                - corrected an error in frdselect.c

 20 Jan 2017    - implemented the relationship between the error estimator and
                 the stress error in errorestimator.f
                - update the documentation for *coupling in combination with
                 *kinematic
                - updated the network capabilities in agreement with the
                 requirements by Thomas Petzke

 21 Jan 2017    - calculated the distance to the nearest node for
                 solid surface faces (CFD)

 22 Jan 2017    - changed 0:5 into 0:7 for CFD-calculations (space for
                 the turbulent variables)
                - changed applyboun.f and coded extrapolate_kel and
                 extrapolate_oel

 27 Jan 2017    - removed a bug related to the sensitivity of
                 asymmetric matrices
                - calculated the area-averaged center of gravity for
                 *COUPLING + *DISTRIBUTING applications.
                - coded local coordinate systems for shells (projection of the
                 global or local system onto the shell).

 29 Jan 2017    - simplified mafill*main.c
                - integrated ad* into au*[2*nzs+...]
                - corrected an error in relation to iau6 in mafill*f

 30 Jan 2017    - changed the storage of au from (irow,jq) to (neiel,ipnei)

 31 Jan 2017    - created neielcp (zero's replaced) in order to avoid an
                 if-zero-statement in matvec.f

 3 Feb 2017     - introduced a warning if more than 8 entries are listed
                 underneath *TIME POINTS
                - cleaned up the gas network routines; removed "nint"
                 bugs; removed the GASPIPE element; unified the dimension
                 of df(8)

 4 Feb 2017     - continued speed optimization of CFD-code
 
 17 Feb 2017    - THERMAL NETWORK parameter on *STEP card works now
                - corrected an error in objectivemain_se.c
                - included the derivative of Fint for linear sensitivity
                 calculations in order to take temperature into account
                - implemented the calculation of autocorrelation vectors

 18 Feb 2017    - worked on turbulence for incompressible flows

 19 Feb 2017    - finished the implementation of turbulence for
                 incompressible flows

 3 Mar 2017     - included nzs, irow, jq and irow in the .stm file for
                 sensitivity analyses
                - unified frd_sen_se.c, frd_orien_se.c, frd_norm_se.c and
                 frd_rand_se.c into frd_se.c
                - finished the implementation of *RANDOM FIELD
                - worked on gaspipe_fanno.f: improvement of convergence
                 when choking.

 10 Mar 2017    - the error estimator is now calculated based on the 
                 largest eigenvalue in absolute value (per element)
                - simplified and accelerated pt2zpt1_crit.f
                - simplified gaspipe_fanno for isotherma gas pipe
                 calculations; improved convergence in choking case.
                - removed Tt2 from pt2zpt1_crit.f and Tt2 and T2
                 from two_phase_flow.f
                - changes +physcon(1) into -physcon(1) in all files

 17 Mar 2017    - modified the source code for isothermal gas pipes
                 (continued)
                - updated the gaspipe documentation

 18 Mar 2017    - increased stability of gas pipe elements w.r.t.
                 extreme initial conditions
 
 24 Mar 2017    - corrected tt_calc.f
                - slight modification to gaspipe_fanno.f
                - modification to springforc_f2f and springstiff_f2f for
                 tied contact
                - removed errors reported by valgrind

 31 Mar 2017    - discontinuities in the displacements (due to SPC's,
                 MPC's) in an initial acceleration step are not allowed
                 and should not lead to a change of the acceleration or
                 velocity
                - checked whether the initial increment size exceeds
                 the maximum increment size in *STATIC, *DYNAMIC...
                - updated the sensitivity routines (filtering,
                 treatment of quadratic elements, acceleration of 
                 stress sensitivities....)

 7 April 2017   - corrections in fluidsections.f, checkconvergence.c and
                 frd_sen.c
                - set qa(3)=-1 at start of resultsmech.f, not in the
                 material routines
                - introduced CETOL on the *VISCO card in order to
                 control the viscous strain increase within a time
                 increment
                - introduced preconditioning in electromagnetics.c

 21 April 2017  - improved initialnet.f and preinitialnet.f
                - introduced additional check in the reading routines
                 for *TRANSFORM and *OBJECTIVE
                - introduced h0ref in electromagnetics.c
                - change in resultsmech.f: xstiff is not addressed if
                 icmd=3
                - reduced the sensititivy of the shape energy to
                 selected element sets (if requested)

 28 April 2017  - corrected printoutface for large deformations (SOF)
                - optimized attachline.f and distattachline.f
                - for purely thermal calculations: generate contact
                 elements only at the start of new step
                - in networkextrapolate and flowresult the INcoming flow
                 is assigned to the endnodes (instead of the OUTcoming
                 flow)
                - taking the absolute value of the residuum in
                 resultnet.f
                - improved the parallellization of stress sensitivity
                - included an equation file for the smoothing of a 
                 volumetric mesh during optimization

 5 May 2017     - corrected an error in cyclicsymmetrymodels.f
                - looked into a routine for tertiary creep
                - stored the jobname in the environment variable
                 CCX_JOBNAME_GETJOBNAME in CalculiX.c (setenv)
                - implemented .dat output of body heating for element
                 sets (key = EBHE)

 9 May 2017     - made some changes for the thermal error estimator

 2 June 2017    - started to work on the integration of isaac into
                 CalculiX
                - activated formgradient and formgradinterpol in
                 sensitivity.c
                - KNOT information is not stored in the .dat file 
                 anymore
                - changed M1_min=0.1 into M1_min=0.001 in pt2zpt1_crit.f
                - provided a user subroutine propertynet.f
                - transferred rotational speed information into user
                 subroutines uboun, utemp and film.
                - changed the treatment of MPC's in envtemp.f

 9 June 2017    - made a correction in resultnet.f
                - removed an error in beamextscheme.f -> stresses for BOX
                 profiles are now stored in the frd-file
                - included constraints in the calculation of the
                 sensitivity gradient
                - installed dgmres for the iterative solution of
                 nonsymmetric structural matrix systems

 23 June 2017   - corrected an error in mafillsm_company.f and in
                 springstiff_f2f_th.f (crucial for thermal applications)
                - improved preinitialnet: pressure is only modified in
                 preinitialnet if it cannot be determined by a Laplace
                 equation approach in initialnet
                - extended the list of directional elements in
                 preinitialnet.f
                - considered a new scheme to determine the initial
                 pressures

 29 June 2017   - worked on CFD (correct calculation of gradients in
                 irregular meshes)

 30 June 2017   - removed change 2 from 23 June 2017
                - introduced a check whether to every inlet, outlet,
                 branch node or joint node an initial pressure was
                 assigned
                - checked splitting of a network through MPC's for
                 total pressure, total temperature and mass flow;
                 modified envtemp to get this to work
                - implemented a method in preinitialnet to correct the
                 initial pressure values in a single branch

 6 July 2017    - worked on extrapol_vel, extrapol_pel and extrapol_vel

 7 July 2017    - changed the name of the contact element file from
                 contactelements.inp into jobname.cel
                - corrected an error in mafillsmmain.c
                - changed the *CREEP handling in allocation.f
                - corrected an error in sdvini.f
                - modified the documentation for beam general sections and
                 contactelement.inp
                - replaced sswap by dswap (already available in dgesv.f) in
                 hybsvd.f
                - introduced an element type C3D10T with linear temperature
                 interpolation (for thermal strain)
 
 11 July 2017   - included MPC-treatment in extrapol_vel/pel/tel

 14 July 2017   - assignment of nstate in allocation.f only for *depvar
                 and *restart
                - updated the documentation of C3D10T elements and for the
                 rules which apply if more than one *CLOAD, *DLOAD... card
                 occur in an input deck
                - reintroduced *BEAM GENERAL SECTION with warning
                - coded *BASE MOTION for TYPE=DISPLACEMENT
                - introduced an ERROR message if a loading is added in the
                 same step with a different amplitude
                - updated a large amount of sensitivity routines
 
 15 July 2017   - corrected some minor errors (valgrind output)
 
 19 July 2017   - corrected an error in extrapol_vel

 20 July 2017   - continued to work on CFD (extrapol_vel and extrapol_pel)

 27 July 2017   - continued to work on extrapol_vel, pel and tel

 28 July 2017   - corrected several errors
                - added USERMATERIAL in the keystart file
                - coded a user element interface

 2 August 2017  - made some changes in gentiedmpc.f

 3 August 2017  - extended the field vfap in extrapol_*el.f

 4 August 2017  - initialized ineighe to 0 at the start of radflowload
                - modified beamgeneralsections for section GENERAL
                - changed the rotational degrees of freedom internally from
                 5..7 to 4..6
                - removed the tra, rot and exp output in the .dat file for
                 electromagnetic calculations
                - continued to work on user element routines

 1 Sept 2017    - made a correction in mastruct.c, dyna.c
                - enhanced output in creeps.f
                - updated the documentation for *GAP HEAT GENERATION
                - coded a network user MPC interface
                - coded a user network element interface

 2 Sept 2017    - analyzed the problem of removing MPC's after 
                 application of cascade
                - worked on CFD (extrapol_*.f)

 6 Sept 2017    - made a correction in precfd.f (for wedges)

 7 Sept 2017    - changed the treatment of diffusion for sliding 
                 conditions in mafillv and mafillvcomp

 8 Sept 2017    - worked on user elements
                - reduced the argument list of materialdata_me.f
                - reformulated the Green procedure as a perturbation
                 procedure
                - REMOVE does not work properly due to decascading of 
                 MPC's. Worked on repairing this
                - cleaned up MPC-related fields in several routines
                - finished network element interface

 9 Sept 2017    - updated the network element interface documentation
                - added heatnod and heatfac to user subroutine film.f
                - finalized repair for using REMOVE

 12 Sept 2017   - reintroduced gamma and gammat in incompressible
                 CFD-calculations

 14 Sept 2017   - modified gamma for constant velocity flow

 15 Sept 2017   - introduced NLGEOM=NO on the *STEP card
                - introduced SHIFTX and SHIFTY on the *AMPLITUDE card
                - implemented MASS in combination with 1d/2d elements
                 (including axisymmetric elements)
                - mapped B21 elements onto B31 elements and T2D2 elements
                 into T3D2 elements
                - reformulated the pre-tension equations such that the
                 cut surfaces stay parallel
                - worked on user elements

 16 Sept 2017   - allowed 4 characters for user elements; intpoints,
                 ndofs and nope are stored as ASCII character

 19 Sept 2017   - coded a gamma scheme to calculate the density at the
                 faces for compressible fluids

 22 Sept 2017   - finished and documented the user element routines
                - looked into crack propagation light

  3 Oct 2017    - removed an error in writeinput.f and allocation.f

  8 Oct 2017    - posted version 2.13

 11 Oct 2017    - updated the calculation of sensitivities including
                 constraints
                - started a detailed description of the sensitivity
                 code

 19 Oct 2017    - divided the element range for parallel calculations
                 evenly among the active elements
                - corrected an error in expand.c
                - updated the temperature error estimator
                - updated parameter description in resultsmech_u1.f

 20 Oct 2017    - continued to clean up sensitivity.c and its
                 subroutines
                - continued program description of sensitivity.c in the
                 documentation

 27 Oct 2017    - removed an error in frd.c regarding the temperature
                 error estimator
                - introduced nconstraint in sensitivity.c
                - used consistently the environment variable CCX_NPROC_SENS
                 for parallel sensitivity calculations
                - removed an error in forcadd.f
                - checked the existence of the input sets in 
                 objectives.f and constraints.f
                - worked on the documentation of sensitivity calculations
                - unified nopedesi in the sensitivity routines

 29 Oct 2017    - removed an error in gen3dconnect.f (original nodes have
                 to be fixed in z for plane stress/strain/axi elements

 30 Oct 2017    - coded the CFD-Approach of Moukalled et al. for 
                 incompressible laminar flow

 1 Nov 2017     - coded an non-orthogonal loop for the pressure correction
                 in CFD-calculations (needed for example cylfine.inp)
                             
 3 Nov 2017     - finished description of the post-sensitivity functions
                - reduced the dimension of field dfl for sensitivity
                 calculations
                - wrote mastruct and mafill for second order sensitivity
                 calculations

 5 Nov 2017     - removed an error in pretensionsections.f: linear 2d
                 elements were not covered

 8 Nov 2017     - coded the real and imaginary part of the energy for
                 cyclic symmetric frequency calculations (calcenergycs.f)
                - implemented the changes by O. Bernhardi regarding
                 the mass matrix for C3D8I-elements: important for
                 dynamic and frequency calculations

 11 Nov 2017    - corrected implementation of energy in arpackcs.c
            
 12 Nov 2017    - changed (2*j*neqh) into (long long)(2*j*neqh) in expand.c
                - removed resetting the load to zero in each *modal dynamic
                 step

 17 Nov 2017    - introduced a check on whether the Poission coefficient is
                 less than 0.5d0 and the Young modulus larger than 0.d0
                - coded the second order derivative of the Kreisselmeier-
                 Steinhauser stress
                - changed Pardiso interface: no more than one rhs can be
                 solved at the same time
                - provided a means for writing and reading the "raw"
                 sensitivities to file (READ and WRITE on the *SENSITIVITY
                 card)

 20 Nov 2017    - created the possibility to read the "raw" sensitivities
                 from file

 24 Nov 2017    - introduced a check on the size of the argument in the
                 exponential function of the Kreisselmeier-Steinhauser
                 function
                - set calcul_cauchy=0 for linear geometric calculations
                 in resultsstr.c and stress_sen.c
                - storing the actual boundary conditions in vold in routine
                 tempload does not work; maybe local change in radflowload
                 works.
                - implemented changes by O. Bernhardi for dynamic calculations
                 with the C3D8I-element
                - corrected an error related to mass and pressure equations in
                 networks (envtemp.f).

 25 Nov 2017    - changed checkconvergence.c: in thermal calculations at
                 least two iterations are forced.

 1 Dec 2017     - section of "S" on the "EL FILE" or "ELEMENT OUTPUT" card
                 automatically triggers "ERR". Can only be avoided by 
                 subsequently selecting "NOE".
                - added Tt2 and T2 as arguments to two_phase_flow.f
                 (used in proprietary routines)
                - introduced subroutine calcgeomelemnet to calculate the
                 cross section for flexible and user defined network elements
                - created subroutine calcheatnet to allow for a heat input
                 due to centrifugal loading in user defined network elements
                - accelerated the treatment of OP=NEW on *BOUNDARY

 2 Dec 2017     - implemented the calculation of the normal on a pre-tension
                 surface

 3 Dec 2017     - worked on compressible CFD
 
 8 Dec 2017     - introduced the parameter iplausi in the network element 
                 routines
                - introduced absolute convergence criteria in checkconvnet.c
                - inserted a warning in case not all temperatures at inlets and
                 outlets are defined by a boundary condition
                - wrote the CalculiX version in the viewfactor file;
                 checking of the version at while reading this file
                - replaced single precision constants to double precision
                 constants throughout
                - changed the treatment of forces in a cylindrical system: the
                 transformation is performed in mafillsmforc at the time of
                 the force application, not in forcadd (needed for different
                 amplitudes in different direction in local coordinates).

 15 Dec 2017    - removed xforc, nforc from some subroutine headers (were not
                 needed)
                - made modifications to allow for local coordinate treatment
                 of concentrated forces in addizdofcload.f, expand.c and rhs.f
                - prepared gencontelem_f2f for openmp application
                - inserted openmp statements in gencontelem_f2f and tested
                 the parallellization
                - corrected an output error for frequency calculations with
                 perturbation: temperature was not correctly stored
                 (arpack.c and arpackcs.c)
                - started to work on *MODEL CHANGE,ADD=STRAIN FREE

 17 Jan 2018    - corrected an error concerning "MASS" in frd.c
                - fineshed *MODEL CHANGE,ADD=STRAIN FREE
	        - checked for negative pressures in frictionheating.f
                - changed gen3dboun.f: for beam elements and rotational
                 boundary conditions knots are always created (no
                 mean rotation MPC)
                - fixed the midnodes in quadratic beam cross sections subject
                 to moments (bending,torque) (gen3dboun.f)
                - coded the umat_undo_nlgeom_lin_iso_el.f routine

 19 Jan 2018    - umat_undo_nlgeom_lin_iso_el materials work
                - worked on the stress target function in sensitivity
                 analyses (acceleration of the code for large examples
                 by a factor of 10)
 
 21 Jan 2018    - corrected the pressure boundary conditions for compressible
                 flow in mafillpcomp, rhspcomp and correctfluxcomp.f

 26 Jan 2018    - user defined *boundary and *cload cards are kept from one
                 step to the next; needed to do a correction for this in
                 dyna.c and steadystate.c
                - corrected an error in the umatht call in thermmodel.f
                - updated the interface fields of cflux, networkmpc_lhs,
                 networkmpc_rhs, uboun and utemp.

 28 Jan 2018    - worked on compressible cfd; bumpsuperfineshallow and
                 carter10visc seem to work

 2 Feb 2018     - reformulated field ipoinp in CalculiX.c as allocatable
                 field
                - wrote the user subroutine fricheat.f
                - updated the documentation for the STRAIN FREE activation of
                 elements with *MODEL CHANGE
                - introduced AMPLITUDE=RAMP and AMPLITUDE=STEP on the
                 *STEP card

 9 Feb 2018     - coded *STRAIN INCREASE
                - added test example networkmpc2.inp illustrating the
                 connection of two networks with a linear mpc
                - updated the documention on output variables
                - made a correction in linstatic.c for sensitivity
                 calculations of Green functions after a nonlinear
                 geometric static step

 16 Feb 2018    - added pressure and coords as interface variables in
                 fricheat.f
                - removed shape7tri and shape9q from all routines
                - introduced defaults for K and stick slope for
                 *SURFACE BEHAVIOR and *FRICTION
                - corrected an error related to AMPLITUDE=RAMP on the
                 *STEP card
                - made some changes in readview.f
                - replace the superfluous iloc by igauss in some routines
                - made some convergence check changes in checkconvnet.c
 
 17 Feb 2018    - worked on compressible CFD (SIMPLEC, modified smart)
                - allowed for specification of the convection scheme and
                 SIMPLE/SIMPLEC in the input deck

 23 Feb 2018    - removed some errors related to the STRAIN FREE option
                 of *MODEL CHANGE in combination with pure thermal
                 calculations
                - replaced "SURFACEINTERACTION" by "INTERACTION" in
                 routine keystart.f and similar routines (taking care
                 that *MATERIAL is treated before *SURFACE INTERACTION)
                - coded PRESSURE-OVERCLOSURE=HARD and PRESSURE-OVERCLOSURE
                 =LINEAR without any specified constants
                - included routine objective_stress_tot.f
 
 27 Feb 2018    - changes mafillp.f and rshp.f: slanted angles work
                 now for incompressible CFD

 28 Feb 2018    - made similar changes to mafillpcomp.f and rhspcomp.f
                 no significant effect (diffusion is subdominant)

 2 Mar 2018     - corrected the geometry based angle calculation in
                 cyclicsymmetrymodels.f
                - created also a sta-file for linear static calculations
                - defined some examples for membrane elements; updated
                 the documentation
                - changed controlss.f such that in the absence of input
                 the defaults are taken (instead of 0).
                - worked on automatic meshing

 3 Mar 2018     - continued work on automatic meshing
                - wedge elements at the exit of a CFD-domain cause
                 problems because of the indeterminate zero-gradient
                 direction; a row of hex elements solves the problem

 7 Mar 2018     - changed cv into cp in the energy equation for
                 compressible fluids

 10 Mar 2018    - reversed the change from 7 Mar 2018: too much viscosity
                 (agard02 and agard03 example)
                - replaced deferred correction approach by a direct 
                 approach (only for modified smart): no significant
                 effect; rounded isoline corners; worse for agard02

 12 Mar 2018    - reversed last change (reinstalled old version)
                - removed voldwithmpc from radflowload.c
                - made a correction in actideactistr.f
                - made some corrections for the U1-element
                - removed "LENGTH OF DESCENT GRADIENT VECTOR" from
                 .dat output (sensitivity analyses)
                - looked at forceedge.f (tetmesh)
                - changed 1.e-4 into 1.e-6 in smalldist.f

 16 Mar 2018    - made a sensitivity update (included the constraints
                 FIX GROWTH and FIX SHRINKAGE)
                - worked on tetmesh
                - zeroing nonactive nodes deactivated in extrapolatecontact.f
                 (sometimes no contact in nodes, although contact took
                  place in the neighboring integration points)
                - corrected the documentation regarding the automatic
                 triggering of nlgeom for nonlinear materials

 17 Mar 2018    - used extrapol_ for the total temperature: no significant
                 change
                - introduced automatic allocation for edgecheck in tetmesh.c
 
 19 Mar 2018    - worked on reducing the profile of the matrices for
                 CFD-calculations

 23 Mar 2018    - corrected an error in printoutelem.f (kk->jj)
                - corrected an output inaccuracy in beamgeneralsections.f
                - started to postpone exit(201) in case of input deck
                 errors to the end of allocation.f/calinput.f
                - positive copen-values are not set to zero any more
                - corrected the calculation of section forces for
                 hollow beam sections (map3dto1d2d.f)
                - stored the expansion of 1d/2d elements to standard
                 output

 24 Mar 2018    - worked on tetmesh
                - finished implementation of renumber routine for CFD

 25 Mar 2018    - renumbering routine leads to longer calculation
                 times (CFD)

 29 Mar 2018    - continued to postpone exit(201) in case of input deck
                 errors to the end of allocation.f/calinput.f
                - unified the error messages

 1 Apr 2018     - implemented mgmres.c for CFD: slower! Removed

 3 Apr 2018     - worked on removing zeros from the lhs CFD-matrix
                - worked on dividing the global CFD-matrix into
                 disjunct submatrices; neighbors from different
                 submatrices are treated explicitly

 5 Apr 2018     - changed extrapol_vel, extrapol_pel and extrapol_tel:
                 20 % acceleration of the CFD code

 6 Apr 2018     - introduced some changes for sensitivity calculations
                - coded OVERLAY for *RESTART,WRITE: restart file is being
                 overwritten
                - started the implementation of *DAMPING,STRUCTURAL=
                - worked on mesh smoothing

 7 Apr 2018     - sharpened the tolerance from 1.d-6 to 1.d-12: temperature
                 calculation seems improved (compressible CFD)
                - convergence is now detected based on the satisfaction of
                 the mass, momentum and energy conservation, not on the
                 change of the solution

 13 Apr 2018    - finished *DAMPING,STRUCTURAL=
                - corrected irstrt into irstrt(*) definitions
                - corrected an error in actideactistr.f
                - updated the documentation (pre-tension,submodel,friction)
                - continued mesh smoothing

 14 Apr 2018    - analyzed modified smart again for compressible flow:
                 residue of conservation equations decreases only for
                 1) hrv_mod_smart AND
                 2) hrt_ud AND
                 3) calcrhofacomp_ud

 20 Apr 2018    - inserted modification of checkinputvaluesnet.f
                - ran valgrind for all test examples  
                - worked in meshing/mesh smoothing
                - started working on error message from valgrind
                 (contdamp2, pret2, pret5 and userbeam, apart from
                  multiple CFD-examples).

 22 Apr 2018    - updated code for block splitting in CFD-calculations with
                 multiple cpus (reorderrhs.f).
 
 23 Apr 2018    - made a change in shape3l, calcnormal and pretensionsections.f
                - splitting CFD-matrices in independent blocks (as many as
                 cpus) seems to work

 27 Apr 2018    - made a correction in cd_bleedtapping.f
                - corrected an error for pretension with shells
                - changed the definition of CETOL an the *VISCO card
                - detected and corrected an error for pretension with
                 linear 2d-elements
                - started looking into Craig-Bampton

 29 Apr 2018    - posted version 2.14

 30 Apr 2018    - expanded the number of pairs for CHARACTERISTIC
                - removed an error in extrapolate in connection with
                 SPRING2-elements
                - checked eigenfrequencies of beam fixed by kinematic coupling
                 at both ends
                - checked spring2-elements in local coordinates
                - continued work on Craig-Bampton
            
 1 May 2018     - removed MPC's from extrapol_*.f and applyboun.f

 4 May 2018     - issued an info for mechanical cyclic symmetry calculations
                 with non-cyclic-symmetric initial temperatures or temperature
                 loading: may lead to stresses
                - update the documentation for thickness definitions (shells..)
                 in axisymmetric calculations
                - removed a discrepancy between CalculiX and Abaqus concerning
                 the use of *NODAL THICKNESS   
                - removed some errors in shellsections.f and beamsections.f
                - coded *BASE MOTION for acceleration in harmonic steady
                 state dynamics calculations
                - worked on tet-meshing

 5 May 2018     - worked on parallellizing extrapol_*el.f

 8 May 2018     - removed matvec and msolve as arguments in dgmres ->
                 dgmres1
                - wrote dgmresmain.c
                - changed createblock.f
                - prepared for the parallellization of the matrix
                 solving routines in CFD

 10 May 2018    - continued to work on parallellization for CFD
 
 25 May 2018    - allocated i10 instead of i5 for the output of the 
                 element expansion in genelem3d.f
                - transferred the parent element in generatetet.f
                - modified the documentation for *INITIAL CONDITIONS,	
                 TYPE=SOLUTION
                - postponed the check for iterative solvers in modal
                 dynamic and steady state dynamic calculations to
		 dyna.c and steadystate.c
                - worked on the extrapolation of the creep curves for
                 anisotropic materials

 1 June 2018    - corrected an error regarding *STEP,AMPLITUDE and updated
                 the documentation
                - corrected an error regarding the simultaneous use of
                 composite shells and volume elements
                - updated the calculation of sensitivities
                - coded the detection of composed surfaces in tetmesh

 3 June 2018    - continued parellellization of CFD code

 8 June 2018    - adapted the triangulation of the outer surface in case of
                 broken edges in tetmesh
                - started automatic mesh refinement based on the error
                 estimator

 17 June 2018   - completed parallellization of laminar flow (CFD)

 22 June 2018   - added argument ier in interface list of inputerror.f
                - corrected errors in solidsections.f, forcadd.f
                 and gen3delem.f
                - expanded basis.f with a fourth loop over all elements
                 (only if a master element set is given)
                - created an extra file with ending 12d to store info
                 on the 3d-expansion of 1d and 2d-elements
                - worked on field-dependent remeshing

 29 June 2018   - continued to work on field-dependent remeshing

 2 July 2018    - continued to work on turbulence for incompressible CFD

 4 July 2018    - started testing turbulence for incompressible CFD

 6 July 2018    - continued to work on field-dependent remeshing

 13 July 2018   - finished field-dependent remeshing for linear tets
                - worked on mapping the middle nodes for quadratic tets

 15 July 2018   - modified cavityext.f

 20 July 2018   - removed a print statement in anisomaxwavspd.f
                - added kode as argument to uout.f
                - changed iperturb in e_c3d_rhs.f and rhs.f in order
                 to take nonlinear geometric behavior into account in
                 modal dynamic calculations (for coupling with CFD)
                - worked on the projection of the nodes of a refined
                 mesh on the original surface

 22 July 2018   - worked on turbulent compressible flow

 27 July 2018   - optimized attach_3d.f in the same way as attach.f and
                 attach_1d.f; changed attach.f into attach_2d.f
                - finished the refined mesh projection on the 
                 original surface
                - tested the effect of solution based mesh refinement
                 on the error

 7 Sept 2018    - corrected an error in changekon (dynamic allocation of
                 fields koncp and thickecp)
                - corrected errors in getlocalresults.c
                - removed the "E" and "N" on the set names in the warning
                 and error messages in noelsets.f
                - updated the section on the gradient error estimator in 
                 the documentation.
                - documented the refinemesh procedure on paper (definition
                 of the fields and the method)
                - formulated electromagnetics for steady state solutions

 14 Sept 2018   - documented the refinemesh procedure in the CalculiX
                 manual
                - improved convergence criteria for fluid networks

 28 Sept 2018   - implemented the submodel technique for global
                 frequency calculations; updated the documentation
                 appropriately
                - allowed for perturbation analysis in a *STATIC
                 calculation: needed for submodel frequency calculations
                 with preload
                - changed line 160 in resultini.f: for perturbation
                 analysis f is also calculated

 5 Oct 2018     - complemented submodel frequency calculations with
                 static preloading
                - inserted an optimization example in the documentation
                - checked the combination of *DYNAMIC and *RESTART: works
                - continued study of measure differential inclusions

 8 Oct 2018     - corrected an error in the improved version of hrv_ud1.f
                 (using the velocity gradient to get a better approximation
                  of the facial velocity based on the element center
                  velocity through upwind difference in the case of slanted
                  elements)

 12 Oct 2018    - coded dgmres for mechanical calculations
                 (predgmres_struct_mt.c and createblock_struct.f); converges
                 for example oneel.inp but not for beamp.inp (both with
                 nlgeom); seems that this idea has to be abandoned.
                 (ier=1 from dgmres.f)
                 
 20 Oct 2018    - changed parameter MODE into DATA SET for frequency
                 submodel calculations; increased the accuracy of the
                 frequency stored in the .frd file
                - set small coordinate numbers in writerefinemesh.f to
                 zero

 26 Oct 2018    - added PARAMETERS=CONTACT to *CONTROLS to control the
                 allowed change in number of contact elements for
                 convergence
                - introduced the option to change important face-to-face
                 penalty contact convergence parameters
                - updated the documentation for *CONTROLS
                - worked on improving *COUPLING with *DISTRIBUTING
                
 27 Oct 2018    - improved couplings.f (rotational MPC's have to satisfy
                 certain conditions on the coefficients not to collide
                 with the translational MPC's)
 
 30 Oct 2018    - removed a serious error in the CFD-routines
                 (field rf(3,*) was defined as constant in space in the
                  FORTRAN routines)
      
 1 Nov 2018     - corrected an important error in extrapol_*main.c
                 (iteration did not inprove the gradient at the center
                  of the elements since the improved cell center values
                  were not taken)

 2 Nov 2018     - slightly modified convergence check for f2f in 
                 checkconvergence.c
                - introduced a standard deviation to check the closeness
                 of individual nodes to the center of gravity for mean
                 rotation MPC's
                - changed the surface projection method in projectnodes.f:
                 should be more stable now.

 4 Nov 2018     - changed the frd-filename for CFD from *f.frd to *.frd

 12 Nov 2018    - removed an error in projectnodes.f
                - corrected an error in frd.c

 16 Nov 2018    - corrected an error in gen3dforc (plane stress with cload and
                 transformations did not work)
                - corrected an error in map3dto1d2d (section forces for
                 hollow sections did not work)
                - introduced SOLVER=MATRIXSTORAGE for heat transfer
                 calculations: the conductivity and specific heat matrices
                 are stored

 23 Nov 2018    - changed the *ERROR statement for a drilling moment on a
                 shell into a *WARNING; the moment is projected onto the
                 shell surface
                - changed the *COUPLING + *DISTRIBUTING constraint into a
                 linear constraint (i.e. no update of the coefficients during
                 the calculation). Check needed whether the implementation 
                 (area weighted mean rotation) corresponds to what the user 
                 wants
                - worked on the expansion of the electromagnetic equation
                 system for alternating current (steady state results only;
                 leads to a complex equation system)
                - coded mafillfreq_em.f

 24 Nov 2018    - finished the restart option for CFD

 30 Nov 2018    - continued work on steady state electromagnetics
                - corrected an error in beamextscheme.f
                - updated the sensitivity calculations for displacements

 2 Dec 2018     - defined convective face velocity for outlet faces too

 7 Dec 2018     - improved the projection of the middle nodes of the
                 refined mesh onto the unrefined surface in projectnodes.f
                - included a refinement example in the documentation
                - included programming rules in the documentation

 9 Dec 2018     - ran valgrind on all test examples; worked on memory
                 errors reported by valgrind

 10 Dec 2018    - accelerated steady state compressible flow by
                 adaptive time increments

 14 Dec 2018    - complemented the documentation for mesh refinement with the
                 modified projection procedure in projectnodes.f
                - improved the documentation of node-to-face contact
                - corrected an error in springdamp_n2f.f
                - inserted a note on the use of elastic potentials for
                 the elastic material behavior in the User's manual.
                - corrected frd-output for more than 99 internal variables (SDV)

 16 Dec 2018    - posted version 2.15

 11 Jan 2019    - started including Mortar contact
                - worked on shells with multiple rotations defined in the
                 nodes

 12 Jan 2019    - reduced the required memory in the initial allocation
                 of ipobody in line 371 of nonlingeo.c
                - reused the gradient value from the previous iteration
                 for the calculation of the velocity, pressure etc. in
                 routine extrapol_vel1.f,....

 13 Jan 2019    - changed xxni into xxnj at every occurrence (CFD)
                - multiplied xxnj with the area of the face (CFD)
                - created field xxna=xxn*area (CFD)
                - created fields ale=area/xle and alet/area/xlet (CFD)

 18 Jan 2019    - finished inclusion of Mortar contact
                - changed the application of rotational boundary conditions
                 on shells (gen3dboun.f)
                - looked into a gas pipe element with centrifugal loading
                 and changing cross section

 21 Jan 2019    - introduced ncfd for 2-D CFD-calculations

 22 Jan 2019    - continued

 23 Jan 2019    - continued

 25 Jan 2019    - stored reference displacements in the .eig-file;
                 has repercussions on arpack.c, arpackcs.c, linstatic.c,
                 complexfreq.c, dyna.c, steadystate.c and sensitivity.c

 27 Jan 2019    - corrected an error in the parameters of calcrespfluid and
                 calcrestfluid (auv -> au)
                - corrected errors in the turbulence section of
                 compfluid

 3 Feb 2019     - corrected an error in steadystate.c
                - checked whether the perturbation parameter is used on
                 the *STEP card in those steps in which an .eig-file with
                 perturbation information is read

 8 Feb 2019     - coded the calculation of mass, mass moments of
                 inertia and center of gravity (output in .dat file)
                - made a change in complexfreq.c: now eigenvalues square 
                 which are negative are taken into account for the 
                 calculation of complex frequencies (abs. value)

 14 Feb 2019    - allowed for less requested eigenvalues in a *COMPLEX
                 FREQUENCY step than in the preceding *FREQUENCY step

 15 Feb 2019    - improved the procedure for the determination of trial
                 values for the complex frequencies
                - coded Coriolis for steady state dynamics
                - set the off-diagonal terms of the lumped mass matrix
                 in e_c3d.f to zero (important if equations are applied)
                - looked into a smooth transition between a static 
                 calculation in a local rotating system and a subsequent
                 dynamic calculation in a global non-rotating system

 1 Mar 2019     - corrected some items in the documentation regarding
                 sensitivity analyses
                - implemented output of the wave rotation direction
	         for:
		 *COMPLEX FREQUENCY and
		 *FREQUENCY in the presence of cyclic symmetry 
                - coded velinireltoabs.f: calculates initial velocities at
	         the start of a dynamic step based on the centrifugal
		 forces in a preceding static step
		 
 8 Mar 2019     - option -O3 in version 7.3.1 of gcc seems to lead to
                 wrong results; option -O2 is recommended
	        - corrected an error in printoutelem.f
                - parallellized the calculation of the energy in
	         calcenergy.f
                - corrected errors in printoutface.f
                - changed the method to determine the wave rotation
	         direction
                - started the output of forces and moments on slave
	         contact surfaces (*contact print)
		 
 15 Mar 2019    - change the input for a Ciarlet material from Lame's
                 constants to Young's modulus and Poisson's coefficients
	        - corrected an error in the Ciarlet user material routine
	         now, the thermal strains are taken into account
	        - reversed a change from 24 Nov 2017 in shape8hu.f
	         (some contact calculations with c3d8i did not converge
		 any more); change in shape functions should be
		 restricted to mass matrix: introduced shape8humass.f
                - improved the criterion to detect the turning direction
	         for frequency calculations with cyclic symmetry and
		 complex frequency calculations; updated the documentation
                - finalized the calculation of forces and moments on
	         slave contact surfaces

 22 Mar 2019    - updated Mortar contact (not successfull yet)
                - corrected an error in modaldynamics.f (iperturb(1) does
	         not have to be set to zero)
	        - introduced the parameter RELATIVE TO ABSOLUTE for
	         dynamic calculations
                - analyzed and compared the nonlinear geometric behavior of
	         the St-Venant-Kirchhoff, the Simo and the Ciarlet linear
		 elastic model
		 
 29 Mar 2019    - corrected an error in umat_undo_nlgeom_lin_iso_el.f (a
                 square root was missing in the calculation of the principal
		 stretches)
                - corrected an error in the parallellization of the
	         energy calculation in results.c
                - changed nasym>0 into symmetryflag==2 before solver calls
	         in nonlingeo.c
                - continued analysis of the Mortar code (does not converge)
	       
 5 April 2019   - removed an error in dyna.c: split b into fext and b
                - removed a couple of errors in umat_tension_only.f and
	         umat_compression_only.f
                - coded umat_lin_el_corot.f for linear elastic materials
	         in which the rotation is removed
                - worked on steady state electrodynamics

 8 April 2019   - updated extrapol_vel*.f, _pel*.f, _tel*.f, _dpel3.f and
                 extrapolate_d_v_simple*f (discarding xrlfa(3,*))

 9 April 2019   - updated extrapol_dpel1.f

 11 April 2019  - restored the version of the 6th of april 2019: CFD
                 calculations especially with viscosity were less smooth
 
 12 April 2019  - made a modification in resultsini.f (regarding accold,
                 only for SPC's, not for MPC's)
                - checked the material model in umat_lin_el_corot.f;
	         improved the calculation of the tangent matrix
		 (matrix is not symmetric; is symmetrized)
                - started reanalyzing sensitivity (for 2D)

 13 April 2019  - worked intensively on CFD

 14 April 2019  - introduced upper/lower bounds for the interpolation of
                 v, p and T in extrapol*1.f and extrapol*4.f

 18 April 2019  - worked on 2D sensitivity. Analyzed the code,
                 removed some errors, added comments, created a
		 comparable 2D and 3D example (sens2d and sens3d) for
		 further analysis
	        - worked out a plan for Green functions with cyclic
	         symmetry (usage of arpack and arpackcs instead of
		 linstatic)
		 
 23 April 2019  - removed the use of the gradient in extrapol_*1.f (cFD)
                - use of *controls,parameters=cfd and 20,0,0,4 as
	         parameters is recommended for triangular meshes (CFD)

 24 April 2019  - called extrapol_*el5.f immediately after each
                 extrapol_*el3.f call for velocity and temperature
		 
 25 April 2019  - removed the gradient information from extrapol_*el1.f
 
 26 April 2019  - corrected an error in solidsections.f (dates from
                 4. Mai 2018): the parameter NODAL THICKNESS is needed
		 to ensure thickness values from the *NODAL THICKNESS
		 card (similar to *SHELL SECTION and *BEAM SECTION);
		 updated the documentation.
	        - moved the calculation of the Green functions from
	         linstatic.c to arpack.c
	        - coded the calculation of Green functions with cyclic
	         symmetry (arpackcs.c)
		 
 10 May 2019    - made a change in gen3dtruss.f (problems of trusses in
                 combination with plane stress/strain/axi elements)
                - updated 2d-sensitivity: works now
	        - allowed for rigid body particular solutions in
	         displacement-driven steady state dynamics calculations
                - looked into the sensitivity of Green functions with
	         cyclic symmetry: looks like storage of the stiffness
		 matrix in the .eig-file will be needed.

 17 May 2019    - analyzed a problem with *frequency and cyclic symmetry
                 (false alarm)
	        - updated the documentation concerning *contact file and
	         output variables
		 
 30 May 2019    - worked on turbulence

 31 May 2019    - looked into some issues concerning the normalization of
                 cyclic symmetric eigenmodes
                - differences in the P-field of example induction2.inp
	         seem to be due to a constant shift
                - differences in the random field of example beamprand.inp
	         are due to a different random number initialization
                - implemented mass scaling for explicit dynamics; adjusted
	         the energy balance
                - updated the explicit dynamic examples

 2 June 2019    - moved negative terms on the rhs of the energy equation to
                 the lhs (sink terms)

 7 June 2019    - subtracted the thermal stretch from the total stretch
                 instead of the thermal strain from the total strain
                - devised a concept for the implementation of Craig-Bampton
                - updated projectgradmain.c and checkprojectgrad.f
	        - checked the normalization of eigenmodes with
	         cyclic symmetry (arpackcs.c)
                - made a change in postinitialnet.f (allowed for zero
	         mass flow boundary conditions)

 21 June 2019   - change in e_c3d*f: for intscheme=1 the completion of
                 the stiffness, mass and rhs for plane stress/strain/axi
		 elements has to be removed, for e_c3d_th*f it has to be
		 modified.
                - for GREEN and FREQUENCY sensitivities with cyclic
	         symmetry: calculate the appropriate cyclic MPC's for
		 output purposes and store the real and imaginary
		 part
                - analyzed problems with 2D-sensitivities; corrected
	         an error in objective_shapeener_tot.f

 22 June 2019   - reintroduced the Characteristic Based Split (CBS) method
                 for CFD alongside the Finite Volume Method (start)

 23 June 2019   - finished reintroduction of the CBS method

 24 June 2019   - corrected some errors related to the sensitivity
                 of 2D plane stress/strain/axi elements
		 
 28 June 2019   - coded the UNDO_NLGEOM_LIN_EL material (extension of
                 the UNDO_NLGEOM_LIN_ISO_EL material to anisotropic
		 materials) for small stretches and large rotations
                - looked into sensitivity for 2D-structures
	         improved normalsonsurface_se.f
                - analyzed explicit dynamics for the inclusion of
	         Rayleigh damping
		 
 29 June 2019   - removed the thickness direction of 2d-elements for
                 the calculation of distmin in sensitivity calculations

 5 July 2019    - parallellized rhs.f and the copying of the fields * in
                 *ini (nonlingeo.c)
                - checked the residual in arpackcs.c; looks like the lowest
	         eigenmode is not so accurate as the others
	        - started implementing mass-proportional Rayleigh damping
	         in nonlingeo.c

 8 July 2019    - included the couette and pois examples for the CBS
                 method in the test suite.

 12 July 2019   - corrected some errors
                - updated the documentation
	        - implemented network modifications; theta=0.5 does
	         not seem to work for all test examples
	        - implemented a normalization of the eigenmodes in
	         arpackcs.c (ARPACK not always normalizes)
                - implemented mass proportional Rayleigh damping for
	         explicit dynamic calculations; updated the
		 documentation

 19 July 2019   - corrected an error in hyperelastics.f (for a polynomial
                 hyperelastic model with N=3).
	        - corrected the irstrt description in the documentation
                - parallellized the copying of arrays in nonlingeo.c
                - reduced the output for explicit dynamic calculations
                - parallellized part of prediction.c; modified the
	         loop variables
                - parallellized parts of calcresidual.c (target: explicit
	         dynamic calculations)

 21 July 2019   - parallellized energy parts of nonlingeo.c

 22 July 2019   - changed mtype=11 into mtype=1 in pardiso.c
                - set iparm[1]=3 in pardiso.c

 31 July 2019   - made some corrections related to b32r beams and
                 dynamics

 1 Aug 2019     - allowed for the definition of new amplitudes in a
                 restart file
                - split allocation and initialization to zero
	        - parallellized the initialization
                - checked which fields do not have to be initialized
                - changed resultsforc.f into C and parallellized part
	         of it

 2 Aug 2019     - changed resultsini.f into C and parallellized part
                 of it

 7 Aug 2019     - corrected the use of " in a new *.c routines
                - replaced INEW and DNEW by NNEW in nonlingeo.c (no
	         speed up)
	        - replaced ctrl(35) from 5.e-7 to 1.e-5 (= c1p)
                - corrected format for error message for more than
	         16 entries per line
                - included the parameter OUTPUT ALL on the FILE and
	         OUTPUT keyword cards
                - started providing the option to read temperatures
	         from a frd-file.

 9 Aug 2019     - made some corrections for steady state harmonic
                 electromagnetic calculations
	        - checked *damping for the dashpot example and compared
	         with analytical solutions: fits
		 
 7 Sept 2019    - included contact definitions in steadystate.c

 9 Sept 2019    - made some small changes in nonlingeo.c and expand.c
                - removed an error defining voldt in expand.c,
	         an error in createmddof.f and in genmodes.f

 11 Sept 2019   - removed contact from steadystate.c

 13 Sept 2019   - improved error message for missing density in dynamic
                 calculations
                - improved the output for explicit dynamic calculations
                - complemented the documentation on explicit dynamic
	         calculations in the User's Manual
                - coded the capability to read temperatures for a
	         structural calculation from a frd-file

 14 Sept 2019   - coded contact spring stiffness reduction as a counterpart
                 of mass scaling for explicit dynamic calculations

 20 Sept 2019   - created insertsortd.f and insertsorti.f: replaced
                 quicksort by insertsort for small arrays
                - updated the documentation w.r.t. the treatment of
	         thermal strains in geometrically nonlinear calculations
                - analyzed the POP-report
	        - worked on rotating gas pipes with friction and
	         variable cross section

 24 Sept 2019   - calculated the element height instead of the edge length
                 in initialcfd.f for use in calcguesstinc.f

 27 Sept 2019   - checked a sensitivity update: update rejected
                - optimized gaspipe_fanno.f (defined Z1 and Z2,
	         kept sign of xflow for icase=2...)

 3 Oct 2019     - worked on the calculation of the time increment
                 for CFD-calculations

 4 Oct 2019     - allowed for a plausibility check for the initial
                 mass flow in fluid network elements
                - introduced plausibility check in gaspipe_fanno.f
                - allowed for double precision binary output in frd.c
	        - started validating the rotating gas pipe with
	         variable cross section: converging/diverging pipe
		 
 11 Oct 2019    - changed the displacement target function for
                 sensitivity analyses (sqrt(u**2) instead of u**2)
                - introduced double filtering and related aspects
	         in sensitivity.c and its subroutines
                - allowed for double precision binary frd-files as
	         master files for submodels and *temperature
                - corrected an error for isothermal fanno gaspipes
	         for iflag=3
                - started check of the rotating pipe for rotations
	         leading to a pressure increase

 19 Oct 2019    - removed voldwithspc from initialnet.f and used vold
                 instead
                - introduced an estimate of the pressure increase
	         in preinitialnet.f for rotating pipes
                - checked double precision binary frd-files as
	         master files for submodels

 25 Oct 2019    - removed errors in printoutint.f
                - got the rotating gaspipe to work assuming an
	         absolute system
	        - looked into the equations for the arc length method
	        - studied the documentation of PaStiX as alternative
	         solver to PARDISO or SPOOLES.

 26 Oct 2019    - continued the rotating pipe (no critical checks for
                 nonzero rotation)

 27 Oct 2019    - introduced mass scaling for steady state compressible
                 flow

 28 Oct 2019    - introduced mass scaling for steady state incompressible
                 flow

 31 Oct 2019    - allowed for the conversion of the mechanical strain in
                 residual strain at the start of a step for selected
		 elements (*MODEL CHANGE,ELEMENT,MECHSTRAINTORESIDUAL)
                - worked on divergent non-rotating gas pipes

 1 Nov 2019     - updated the documentation on CFD

 8 Nov 2019     - checked for a problem with *nodal thickness and
                 *solid section, nodal thickness
                - coded an improved estimate for the pressure ratio in
	         a rotating pipe
	        - got the divergent not-rotating pipe to work

 10 Nov 2019    - changed hrr_ud.f and hrr_mod_smart.f: the convective
                 density is calculated based on the convective pressure
		 and mean temperature
		 
 12 Nov 2019    - removed an error in the definition in MNEW
                - inserted SFREE(iedgextfa) in refinemesh.c

 14 Nov 2019    - replaced an occurrence of isortii by insertsorti in
                 generatetet.f

 15 Nov 2019    - corrected an error in spcmatch/allocation: number of
                 old SPC's, forces.... (nboundold..) was not transferred
		 to restart calculation
                - corrected an error in complexfreq.c: output should be
	         calculated for nevcomplex eigenmodes, not nev.

 19 Nov 2019    - included the CFD-Theory into the manual
                - made some modifications in resultsmech.f for linear
	         strains for large rotations

 22 Nov 2019    - deleted source files not being used
                - created version 2.16; checked compilation, ran valgrind,
	         checked the integrity of the documentation
                - analyzed the inimortar code. Corrected an error in
	         genislavelinv.f

 24 Nov 2019    - posted version 2.16

 25 Nov 2019    - started git

 29 Nov 2019    - coded distributions to define local coordinate systems
                - coded the output of the integration point coordinates
	         in the .dat file
	        - coded the output of the centrifugal force in the .dat
	         file

 30 Nov 2019    - continued to clean up mortar contact

 1 Dec 2019     - modified arpackbu.c
                - started tet meshing of CFD element centers

 3 Dec 2019     - continued to clean up mortar contact

 6 Dec 2019     - continued to clean up mortar contact

 8 Dec 2019     - worked on interpolation of element center values to
                 nodal values for cfd (elem2node.c)

 13 Dec 2019    - corrected some small errors concerning distributions
	        - updated some network routines
	        - updated routines for robust design
	        - continued debugging Mortar contact

 17 Dec 2019    - continued debugging Mortar contact
                - worked on removecutgeomtets.f
	       
 20 Dec 2019    - continued debugging Mortar contact

 7 Jan 2020     - continued debugging Mortar contact (bdfill.c, multimortar2.c)

 12 Jan 2020    - worked on elem2node.c

 17 Jan 2020    - midnodes are not stored any more in field kon in
                 subroutine getlocalresults.c
                - started updating mesh refinement (subsets, neighbors for
	         smoothing)
                - updated documentation on mesh refinement
                - continued debugging Mortar contact (multimortar2.c)
	       
 19 Jan 2020    - worked on tetrangulation of the element center points
                 for CFD

 23 Jan 2020    - change in refinemesh: check for the existence of an
                 edge before inserting a new node (checkexiedge.f)

 24 Jan 2020    - worked on refinemesh:
                  - introduced mesh quality
		  - introduced field ifix

 26 Jan 2020    - conceived a strategy for automatic index printing
                 of C-fields during execution for Mortar debugging
                - removed an error in dfluxs.f, dloads.f, films.f and
	         radiates.f: non-uniform load was not removed
		 by specifying OP=NEW

 31 Jan 2020    - tried to compile and link PaStiX, scotch...: no
                 success
                - included PaStiX-statements in the CalculiX routines

 7 Feb 2020     - worked on the compilation of PaStiX and packages needed
                 by PaStiX
                - calculating the matrix structure for face-to-face
	         contact is now done on all POSSIBLE contact elements:
		 avoids reordering in all but the first iteration of
		 an increment
                - stored both memmpc_ and lenmpc into the restart files
                - parallellized mafillsmas.f

 14 Feb 2020    - got PaStiX in CalculiX to work
                - parallellized interpolatestate.f
                - worked on a random field update
	        - corrected an error in totalcontact.f

 15 Feb 2020    - extra correction in totalcontact.f

 16 Feb 2020    - made a change in removezerovoltets.f (-> 1.d-20)

 21 Feb 2020    - updated PaStiX
                - compared PaStiX with SPOOLES
	        - accelerated the projection on the nearest triangle
	         in interpolateinface.f
		 
 28 Feb 2020    - ran benchmarks with PaStiX
                - updated pastix.c
                - found and removed an error in mafilldmssmain.c
	        - found and removed an error in rhsmain.c
	       
 03 Mar 2020    - ran benchmarks in different versions:
                  - fe and OMP_NUM_THREADS=1
		  - fe and OMP_NUM_THREADS=12
		  - fe_MT and OMP_NUM_THREADS=12
		  - fe_i8 and OMP_NUM_THREADS=12
	        - changed benchmark examples beamptied5, beamptied6,
	         boxprofile in order to avoid identical principal
		 values of inertia

 06 Mar 2020    - updated pastix.c, pastix_as.c,radflowload.c
                - corrected an error in membranesections.f
                - worked on solution-based refinement

 13 Mar 2020    - updated the documentation (e.g. *ROBUST DESIGN)
                - updated mesh refinement
                - updated PaStiX interfaces
	        - created a test directory specific for i8
	        - changed getglobalresults.c (for use in refinement)
                - created a file to deallocate all fields at the end
	         of CalculiX.c

 18 Mar 2020    - updated refinemesh and its subroutines
                - found and removed an error in mafillfreq_em.f
	        - coded inputformat=3 in pastix.c
	        - analyzed beamprand
                - worked on an initialization routine for CalculiX

 20 Mar 2020    - updated pastix.c: beamptied5 and beamptied6 work now
                - finished initialization routine for CalculiX;
	        - worked on automatic restart with refined mesh
                - checked examples with cyclic symmetry for
	         steady state dynamics and modal dynamics: seems ok.

 24 Mar 2020    - worked on the application of boundary conditions
                 (SPC and concentrated forces) on the refined mesh

 27 Mar 2020    - continued to work on the application of boundary
                 conditions for mesh refinement: reading the extra
		 input, allocation_rfn.f
		 
 28 Mar 2020    - continued to work on the application of boundary
                 conditions; SPC and point forces seem to work.

 30 Mar 2020    - worked on crack propagation.

 1 Apr 2020     - create boundary conditions for the nodes in a CFD
                 calculation (in the input deck the boundary conditions
		 are given for the faces)
		 
 2 Apr 2020     - sorted the front nodes in adjacency order; added one
                 immediate neighbor on either side
		 
 4 Apr 2020     - calculated vold in extrapol_velmain.c based on the
                 element center values (CFD)
		 
 5 Apr 2020     - calculated vfa in extrapol_velmain.c based on the
                 nodal values

 6 Apr 2020     - created a local coordinate system along the crack
                 front

 7 Apr 2020     - worked on the gradient of the velocity in CFD
                 (gradvel and gradvfa)

 8 Apr 2020     - checked the gradient on examples slantini*.inp

 9 Apr 2020     - coded crackplane.f

 11 Apr 2020    - worked on extrapol_pelmain.c

 13 Apr 2020    - worked on extrapol_telmain.c

 14 Apr 2020    - introduced istartcrack and iendcrack in crackpropagation.c

 17 Apr 2020    - coded the projection on the crack plane in crackplane.f

 18 Apr 2020    - gave up the mixed fe-fv CFD-approach for the time being
 
 21 Apr 2020    - removed elem2node.c and all its subroutines
                - reinstalled CBS
	       
 22 Apr 2020    - excluded the factory roofing effect in crack propagation
                - created new coordinate system at the crack front based
	         on the mean planes

 25 Apr 2020    - inserted the CBS-Examples into the documentation
 
 27 Apr 2020    - looked into subsurface cracks

 28 Apr 2020    - replaced ithermal by ithermal(*) in all type statements

 29 Apr 2020    - replaced iperturb by iperturb(*) in all type statements
                - deleted mtwist.*
	        - replace unsigned ITG by unsigned long in refinemesh.c

 6 May 2020     - updated pastix.c for inputformat=3; induction3 does not
                 converge yet
                - moved the calculation of ipobody to CalculiX.c
                - updated the documentation for *element and *spring
	        - implemented the inheritance of the distributed body
	         loading (centrifugal, gravity..) to the refined mesh
                - started writing a script for an automatic check of
	         field sizes in C during program execution

 9 May 2020     - made some corrections in the subroutines of
                 crackpropagation.c

 13 May 2020    - analyzed pardiso.c: get rid of the 1.e-12 check
                 for inputformat=3?
                - checked for the same order along the crack front as
	         for the crack element topology in adjacentbounodes.f
                - projected external crack nodes onto the structure

 14 May 2020    - inserted file insertcbs.c specifically for the CBS
                 method (from version 2.6)

 15 May 2020    - adapted the sign of phi and psi to the sign of KII and
                 KIII in stressintensity.f

 20 May 2020    - made some corrections for the CBS-method

 24 May 2020    - copied add_sm_fl.f from version 2.6
 
 24 May 2020    - corrected the element topology of the crack shell
                 elements

 27 May 2020    - improved crackprop.f
                - created frd-output for crack propagation
	       
 2 June 2020    - made a correction in crackprop.f for very small
                 propagation near the free boundary

 3 June 2020    - worked on CFD (CBS method for compressible flow)

 6 June 2020    - updated pastix.c

 11 June 2020   - calculated the element height based on volume/
                 area in initialcfdfem.f

 12 June 2020   - worked on SPC's and MPC's for CFD
 
 14 June 2020   - arpack.c: largest component in the eigenvectors should
                 be positive: makes the eigenmode unique.

 16 June 2020   - choose the sign of the normalized eigenmodes such
                 that the largest value (in absolute value) has a
		 positive sign

 18 June 2020   - introduced a message before stopping the program in
                 matrixstorage.c
                - checked whether the calculation of phi is necessary in
	         cyclicsymmetrymodels.f in case CHECK=NO; it is.
                - worked on Mortar contact debugging

 25 June 2020   - looked into Mortar contact
                  - Tobias R. detected an error with intent(in) nintpoint
		   in slavintmortar.f
		  - removed all "intent(in)", "intent(inout)" and
		   "intent(out)" from *.f files
		  - Mortar contact works with dgesv, but not with SPOOLES
                - started updating crack propagation

 27 June 2020   - corrected a serious error in spooles.c for
                 inputformat=3 (unsymmetric matrices occurring with
		 Mortar contact and electromagnetics)
                - activated Mortar test examples

 28 June 2020   - made some small changes (corrections)

 29 June 2020   - made some corrections for inputformat=3 in pardiso.c.

 2 July 2020    - continued to cleanup Mortar
                - created some simple examples for MORTAR, LINMORTAR and
	         PGLINMORTAR

 4 July 2020    - setting the initial velocity to the output velocity
                 in CFD examples avoids reflection from the outlet
		 (examples stepsuperfine and stepsuperwedge)
                - applying the MPC's in a smoothing sense improves
	         convergence for Euler flow along curved surfaces
		 (bumptransfine....)

 7 July 2020    - started a second order approximation in time for
                 the CBS method.

 8 July 2020    - removed an important error in the call of lintemp in
                 calcstabletimeincvol.f, e_c3d_dstil.f and
		 resultsmech_dstil.f (wrong number of arguments)

 9 July 2020    - included mortar contact in the documentation.

 10 July 2020   - updated the documentation about the PaStiX solver
                - created CalculiXstep.c for the present CalculiX
	         version

 11 July 2020   - reverted to the first order approximation in time
                 for the CBS method

 16 July 2020   - removed an error in restrictor.f
                - removed an error in tempload*.f (for AMPLITUDE=RAMP
	         on the *STEP card for *FILM conditions)
                - made a change in mafillsmcs.f: MASS elements were not
	         taken into account
                - corrected a mistake in mafillsmcs for face-to-face
	         penalty contact with cyclic symmetry and without friction

 17 July 2020   - corrected some errors pointed out by gfortran v 10.

 18 July 2020   - worked on the documentation for the CBS method

 19 July 2020   - worked on the documentation for the CBS method
                - made a change in e_c3d_v2rhs.f
	       
 23 July 2020   - looked into the output of valgrind: solved memory
                 issued before the next release

 27 July 2020   - posted ccx_2.17
 
 30 July 2020   - changed applybounfem.f for incompressible fluids

 2 Aug 2020     - worked on the compressible circular Couette problem
                 with the CBS-Method
                - implemented output of SA

 3 Aug 2020     - changed presgradient.f: velocity direction dependent
                 smoothing

 6 Aug 2020     - removed an error in cascade.c
                - worked on crack propagation (cracklength, smoothing..)
                - change in refinemesh: all old nodes are now connected
	         to the new nodes, i.e. the MPC's are generated only once.

 8 Aug 2020     - made a change in applybounfem.f

 3 Sept 2020    - worked on crack propagation
                - implemented the interpolation of the temperatures for
	         a refined mesh

 5 Sept 2020    - made a change in e_c3d_v2rhs.f (got rid of the wrong
                 factor of 2)

 6 Sept 2020    - worked on implicit compressible finite element
                 CFD-calculations

 10 Sept 2020   - allowed for user-defined crack propagation law
                 in the input deck
                - allowed for user-defined maximum crack propagation
	         increment in the input deck
                - OP=NEW also works now in the first step as expected
	         (change in calinput.f)
                - cleaned up crack propagation output

 3 Oct 2020     - worked on turbulence for compressible flow

 4 Oct 2020     - optimized cfdconv.f

 5 Oct 2020     - created file calcdatarget.f

 6 Oct 2020     - split sensitivity.c into sensi_coor.c and sensi_orien.c

 8 Oct 2020     - worked on sensitivity
                - improved crack propagation calculations

 10 Oct 2020    - worked on turbulence (compressible fluids)

 15 Oct 2020    - reading and processing complete missions for
                 crack propagation

 16 Oct 2020    - worked on turbulence (SST-model, compressible fluids)

 19 Oct 2020    - replaced the internal read statement in e_c3d_krhs.f
                 (cause the parallellization to fail)
                - created getuncrackedresults.c
	        - included kode in the compfluidfem.c header

 22 Oct 2020    - made some changes in crackpropagation.c and its
                 subroutines

 24 Oct 2020    - iterated to solve the equation system for k and omega

 29 Oct 2020    - finished the crack propagation routines (apart from
                 the documentation)
                - checked different methods to calculate the crack
	         length
                - contributed test examples
	       
 30 Oct 2020    - coded y+ for storage in the .frd-file (CBS)

 1 Nov 2020     - started optimizing the CFD code (CBS-Method)

 2 Nov 2020     - continued to optimize the CFD code (CBS-Method)

 5 Nov 2020     - installed new version of PaStiX
                - wrote output routine for trilinos
	       
 6 Nov 2020     - convergence check should only be made in nodes in which
                 no boundary conditions is applied (CFD-CBS)

 10 Nov 2020    - updated aerodynamic networks
                - corrected an error in restartshort.f and
	         restartread.f

 12 Nov 2020    - corrected an error in complexfreq.c
                - made the output of test example segment.inp independent
	         of the sector for which results are shown
                - set phase=0 for amplitudes<1.e-10 in arpackcs.c,
	         complexfreq.c and steadystate.c
                - results within a step with contact were not always
	         correct; made a substantial change in gencontelem_f2f.f
		 to check!

 20 Nov 2020    - CBS CFD: extrapolated pressure from previous increment at
                 the start of a new increment: important for subsonic
		 calculations

 26 Nov 2020    - important correction in calinput.f (related to the one but
                 last change on Sept. 10 2020, which was not done
		 correctly).

 3 Dec 2020     - change in dyna.c: vini is set to vold only in the absence
                 of perturbation; for perturbation the initial conditions
		 are zero

 4 Dec 2020     - paralellized smoothshock.f

 7 Dec 2020     - improved time management for the CBS-FEM-method

 10 Dec 2020    - included the *heading lines in the restart file:
                 header lines are repeated in a frd-file at restart

 11 Dec 2020    - provided for *initial conditions in combination with
                 turbulence
                - updated generatecycmpcs for turbulence equations

 12 Dec 2020    - performed some optimizations regarding the calculation of
                 the density for incompressible materials in the CFD-CBS
		 method

 19 Dec 2020    - implemented a loop in compfluidfem.c for the automatic
                 increase of shock smoothing in case of divergence of
		 compressible calculations

 30 Dec 2020    - CBS-method for incompressible fluids: included the
                 pressure MPC's in the LHS-matrix
                - corrected an error in normmpc.f

 31 Dec 2020    - coded the shallow water modifications in the CBS methodx

 1 Jan 2021     - worked on shallow water equations

 3 Jan 2021     - introduced variable depth in the shallow water implementation

 5 Jan 2021     - included the variable "network" in the restart file: needed
                 for network calculations.

 6 Jan 2021     - corrected an error in compfluidfem related to the application
                 of force in combination with amplitudes
                - introduced DTF as output of the time increment in CFD-CBS
	         calculations

 7 Jan 2021     - ran some channel examples with the shallow water method
                - provided DEPF for dat-file output

 13 Jan 2021    - made a correction in radflowload.c
                - corrected some passages in the User's Manual.

 16 Jan 2021    - completed the shallow water equation description in the
                 manual

 17 Jan 2021    - worked on isothermal shallow water equations

 18 Jan 2021    - changed *SHELL SECTION for user elements
                - corrected compfluidfem.c for isothermal shallow water
	         equations

 20 Jan 2021    - provided for user elements in frd.c

 26 Jan 2021    - stored the displacements as vector for true shells
                - made a change in crackpropagation.c
	        - started the documentation on crack propagation calculations

 27 Jan 2021    - increased the order of integration for the lhs of the
                 FEM-CBS-method

 30 Jan 2021    - worked on the implicit CBS-method for compressible
                 fluids

 4 Feb 2021     - made a change in gen3dconnect.f, gen3dboun.f, gen3dsurf.f,
                 gen3dmpc.f, gen3dtemp.f and gen3dforc.f

 6 Feb 2021     - worked on the documentation of the crack propagation
                 procedure

 9 Feb 2021     - worked on the documentation of the crack propagation
                 procedure

 15 Feb 2021    - started sorting the set names

 16 Feb 2021    - finished sorting the set names

 17 Feb 2021    - started sensitivity analysis for missions

 25 Feb 2021    - optimized nodes.f and elements.f

 26 Feb 2021    - changed tieset in submodels.f; target: use ordering of
                 sets obtained in allocation.f in calinput.f instead of
		 repeating it.

 2 Mar 2021     - sorted sets only once in allocation.f and reused the
                 ordering in calinput.f
		 
 3 Mar 2021     - corrected an error in allocation.f

 7 Mar 2021     - removed the changes after 3 Mar (introduction of
                 lengthset and lengthmat: not effective)
	        - made some corrections in the parallellization
	         pointed out by the POP-team in Aachen

 10 Mar 2021    - made some modifications in crackprop.f
                - made a change in pastix.c (for frequency calculations
	         the iterative improvement after double precision
		 direct solving is not done).

 15 Mar 2021    - removed variable icontact; introduced mortar=-2
                 for "no contact" and mortar=-1 for "massless contact"
                - started to code changes for massless contact
                - coded the calculation of the Wp-matrix in gencontelem_n2f.f

 20 Mar 2021    - coded inviscid preconditioning in the CBS-Method

 23 Mar 2021    - included a change in pastix.c
                - update of sensitivity calculations

 25 Mar 2021    - worked on modal stress sensitivity

 27 Mar 2021    - removed the pressure gradient stability term for the
                 continuity equation for incompressible fluids

 29 Mar 2021    - started working on modal stress sensitivity

 31 Mar 2021    - worked on sensitivity in general (input routines)

 5 Apr 2021     - worked on the implicit CBS-method for compressible
                 media

 6 Apr 2021     - worked on MPC's connecting the parent mesh with the
                 refined mesh: needed for treating SPC's.

 8 Apr 2021     - continued to work on MPC's for the refined mesh

 9 Apr 2021     - continued to work on MPC's for the refined mesh
                - worked on sensitivity (documentation, cleaning up the
	        code)

 12 Apr 2021    - continued to work on MPC's for the refined mesh

 13 Apr 2021    - continued to work on MPC's for the refined mesh
                - added t0g and t1g for the user element routines
	        resultsmech_u*f

 29 Apr 2021    - made a correction to the projected front end nodes
                in crackprop.f

 4 May 2021     - updated robust design routines

 5 May 2021     - worked on massless dynamic contact
              
 6 May 2021     - made some corrections in catsmpcslavno.f

 7 May 2021     - made corrections in frd.c and projectmidnodes.f

 10 May 2021    - changed the sign of the cyclic axis in the frd-file (PAX)
                if the nodal diameter exceeds half the number of segments

 11 May 2021    - worked on automatic remeshing

 15 May 2021    - output of the thermal strains THE to the frd-file
                - correction in gencontelem_n2f.f and catsmpcslavno.f
	      

 16 May 2021    - worked on implicit compressible fluids (CBS)

 17 May 2021    - worked on crack propagation

 19 Mai 2021    - worked on mesh refinement: midnode projection

 20 Mai 2021    - removed checks in checkspcmpc.f (was moved to
                catsmpcslavno.f)

 21 Mai 2021    - improved the projection of the refined mesh on
                the surface of the unrefined mesh

 22 Mai 2021    - corrected an error in dfluxs.f (element sets
                did not work properly)

 31 Mai 2021    - updated projection and smoothing of midnodes in
                refinemesh.c

 1 June 2021    - worked on the smoothing of midnodes in refinemesh.c

 2 June 2021    - started adding smoothing for subsonic compressible
	        CBS calculations

 6 June 2021    - updated 3- and 4-noded shells

 21 June 2021   - started changes in the CBS CFD-method for acceleration
                purposes

 22 June 2021   - adapted fminsi for use in the mesh refinement procedure
                - continued to work on the CBS CFD-method  
            
 25 June 2021   - worked on the use of fminsi for mesh refinement
              
 26 June 2021   - continued to work on the CBS CFD-method

 30 June 2021   - made a change in arpackcs.c (direction of PAX in
                the frd-file, introduction of the modulo function)

 1 July 2021    - made an update of the sensitivity routines (change of dat
                output, DISPLACEMENT->ALL-DISP..)

 5 July 2021    - updated dynamic contact algorithms of Carlo

 8 July 2021    - made a change in frd.c for nmethod=0
                - corrected an error in getglobalresults.c
	        - selected binary output in writenewmesh.c
	        - corrected body load treatment in readnewmesh.c

 9 July 2021    - continued CFD-CBS restructuring

 14 July 2021   - removed errors in readnewmesh.c

 15 July 2021   - changed the meaning of CYCLES in the frd-file for
                crack propagation calculations

 16 July 2021   - adapted the integration in resultsmech.f for
                intscheme=1 (initial acceleration in nonlingeo)

 17 July 2021   - worked on restructuring CFD-CBS; example cou2dfem
                works again.

 20 July 2021   - worked on heat induction due to alternating current
                - rearranged nodes and elements (to avoid gaps) for
	        CFD-CBS calculations

 25 July 2021   - worked on rearrangecfd in nonlingeo.c
                - made a correction in electromagnetics.c

 26 July 2021   - update the us3 elements

 27 July 2021   - made some small changes in electromagnetics

 28 July 2021   - tested CFD-CBS

 31 July 2021   - all CFD-CBS test examples work again

 2 Aug 2021     - worked on reducing the work load collecting the
                parallel contributions after mafillv1rhs.f

 4 Aug 2021     - finished the parallel work on collecting the
                contributions (fields jqcpu and irowcpu); does not work

 2 Sep 2021     - made some corrections in electromagnetics.c
                - corrected an error in compfluidfem.c

 5 Sep 2021     - removed the Finite Volume Method for CFD from the
                documentation; removed the FVM-examples. Focus
		is on the CBS-FEM method for CFD.

 7 Sep 2021     - made some corrections for user element u1 and us3

 15 Sep 2021    - created version 2.18

 17 Sep 2021    - removed the PRINCIPAL method from the crack propagation
                procedure
                - changed the node numbering along the new crack fronts
	        such that it is monotonic increasing
                - started looking into HCF for crack propagation

 20 Sep 2021    - continued to work on HCF for crack propagation

 30 Sep 2021    - started debugging HCF for crack propagation
                - corrected an error in turningdirection.f
                - eei is only calculated for iout>0 (resultsmech)
	        - created fields vini, emeini.... in arpack
	        and arpackcs in all cases (needed e.g. in the
		presence of materials with kode<-100)

 1 Oct 2021     - updated mesh refinement
                - finished debugging HCF for crack propagation
                - removed FVM-CFD-source code 

 9 Oct 2021     - removed an error in interpolextnodes.f and
                interpolextnodesf.f
                - removed status='delete' from the close(40) statement
	        in cyclicsymmetrymodels.f: causes problems when splitting
		an input deck in several ones with fewer steps for
		parallel execution.

 10 Oct 2021    - made some corrections for C3D8I in turningdirection.f

 15 Oct 2021    - direct damping in combination with prescribed boundary
                conditions is now allowed in a *STEADY STATE DYNAMICS
		procedure.

 17 Oct 2021    - updated the documentation on CFD (program structure
                section)

 22 Oct 2021    - looked into sensitivity of the equivalent plastic
                strain

 23 Oct 2021    - sensitivity of the equivalent plastic strain works

 30 Oct 2021    - started changing *coupling in combination with
                *distributed

 5 Nov 2021     - made a change in arpack.c and arpackcs.c: if a preload
                contains a temperature loading the modal stress should
		not take into account any thermal stress

 6 Nov 2021     - adapted the restart capability for coupling,distributing

 8 Nov 2021     - made a correction in cloaddistributing.f

 13 Nov 2021    - tried to generalize coupling, distributing

 15 Nov 2021    - finished generalization of coupling, distributing

 18 Nov 2021    - corrected some errors in allocation.f
                - added iprestr to the argument list of restartshort.f
	        (needed in CalculiX.c)
	        - introduced the calculation of the principal axes of
	        inertia for *coupling in combination with *distributing
                - made a change in restarts.f (allowed for *restart,read
	        and *restart, write in the same input deck)

 19 Nov 2021    - made an update for massless frictionless contact (start)

 23 Nov 2021    - made a change in gencontelem_n2f: moved the filling
                of springarea(2,*)

 27 Nov 2021    - worked on massless dynamic contact

 6 Dec 2021     - made a change in gencontelem_f2f: contact overlap is
                linearly reduced in very step (needed in case some
		contact definitions are switched on in later steps only)
                - made a change in adjustcontactnodes: initial clearance
	        should be calculated in the first step for all contact
		definitions, no matter whether removed or not

 8 Dec 2021     - introduced tietol(4,*) to get a linear reduction of the
                contact overlap only in the first step or after
		reactivation of a contact pair.

 10 Dec 2021    - improved an error message in cyclicsymmetrymodels.f

 11 Dec 2021    - added "9999" to the frd-file after a matrix storage
                step.

 19 Dec 2021    - posted version 2.19.

 14 Jan 2022    - corrected an error in readnewmesh.c
                - inserted systematically a blank before *ERROR, *WARNING and
	        *INFO in c-files.
                - corrected an error in nonlinmpc.f
                - made a correction for massless contact in tiefaccont.f

 1 Feb 2022     - deleted pardiso_as.c and created pardiso_cp.c as a copy of
                pardiso.c. Allows for the simulaneous factorization of two
		equation systems with PARDISO.

 3 Feb 2022     - allowed for the simultaneous use of Pardiso and PaStiX (Pardiso
                for frequency calculations, PaStiX for all other calculations)

 7 Feb 2022     - improved the documentation for networks

 9 Feb 2022     - updated pastix.c for multiple simultaneous factorizations
                (used in radflowload.c and massless.c)

 11 Feb 2022    - corrected couplings.f: the vector connecting the center of
                gravity with the user defined reference node must be
		decomposed in the local coupling surface coordinate system
                - added an *ERROR message in cloaddistributing.f: no
	        transformation is allowed in a coupling surface node

 18 Feb 2022    - limited the argument of dacos to [-1,1] in createlocalsys.f
                - made corrections in arpack, arpackcs and arpackbu regarding
	        fields eei, stiini, emeini, enerini and vini

 25 Feb 2022    - worked on massless contact

 4 Mar 2022     - added PRF to the output requests in resultsini.c

 11 Mar 2022    - made a change in resultini.c for massless contact
                  (SPC and MPC treatment)
                - made some changes to allow for zero columns in the
	          W-matrix of massless contact (no opposite master face
		  to slave node)

 14 Mar 2022    - made a correction in nonlingeo for massless contact

 15 Mar 2022    - implemented *COUPLING with *DISTRIBUTING for cyclic
                  symmetry

 18 Mar 2022    - made a change in initialnet.f for boundary pressures of
                  exactly zero in uncompressible networks

 25 Mar 2022    - made a correction in frd.c for the option "OUTPUT ALL"

 27 Mar 2022    - completed checkinputvaluesnet.f for some incompressible
                  network elements.

 28 Mar 2022    - checked for consistent gas, liquid or channel networks
                - checked test examples for consistent INOUT elements

 2 April 2022   - coded hcrit.f, hns.f and hnorm.f for flow in open
                  channels (different procedure)

 4 April 2022   - made an important change in initialnet.f for INOUT-
                  elements (decision on chamber or not-chamber)
		
 6 April 2022   - worked on channel networks

 8 April 2022   - looked into INOUT elements for networks; derived a
                  consistent approach; described the approach in the
		  documentation.

 18 April 2022  - temploadfem in compfluidfem.c is executed only if
                  iit=1
                - worked on sluicegate, straightchannel and reservoir.
                - further parallellized compfluidfem.c

 19 April 2022  - parallellized con2phys.f

 22 April 2022  - corrected an error in restart*f (field physcon)

 23 April 2022  - continued parrallellization of compfluidfem.c

 25 April 2022  - include the jobname in the output file names
                  for channel 40

 27 April 2022  - checked for a corrupt crack mesh in extern_crackprop.f

 29 April 2022  - modified the printed messages for close(40)
                - updated the documentation for *CRACK PROPAGATION calculations

 30 April 2022  - worked on channel flow with jump (strong slope)

 1 May 2022     - worked on example channel4.inp

 6 May 2022     - inserted a divergence error message in
                  calcstabletimeincvol.f and calcstabletimeinccont.f
  
 9 May 2022     - looked into deallocation problems in case of a break
                  from the main loop of crackpropagation.c

 10 May 2022    - corrected some deallocation errors in crackpropagation.c
                - worked on sluicegatewear.f
		
 13 May 2022    - updated massless contact

 27 May 2022    - corrected an error in arpackcs.c (exchange of modes)
                - checked in arpackcs.c whether the eigenvalues are
		  monotonically increasing, else reorder.

 28 May 2022    - worked on channel flow (contraction, step).

 30 May 2022    - started contingentsurf.f (crack propagation)

 3 June 2022    - worked on contingentsurf.f (crack propagation)

 6 June 2022    - corrected an error in the call of friction_coefficient
                  in subroutines of initialchannel.f

 8 June 2022    - updated the documentation on channel flow

 10 June 2022   - worked on contingentsurf.f

 11 June 2022   - worked on flowoutput.f

 17 June 2022   - updated the test examples (introduced MF,PN to
                  discriminate the different fields)

 22 June 2022   - activated fnext in rhsmain.c and subroutines

 24 June 2022   - worked on the friction coefficient for massless contact

 1 July 2022    - accelerated explicit dynamic calculations (the second
                  instance of the call to remastruct in nonlingeo.c is not
		  necessary)
		- parallellized the sorting in mastruct.c
		
 4 July 2022    - removed epsilon in sluicegate, reservoir and contraction.f.

 15 July 2022   - made some small corrections (discovered by newer versions
                  of the gcc-compiler)

 17 July 2022   - worked on the documentation of massless contact

 19 July 2022   - changed the logic for energy statistics in dynamic
                  calculations: energy statistics are only written if
		  ENER was selected on a *EL PRINT, *EL FILE or *ELEMENT
		  OUTPUT card.

 27 July 2022   - corrected an error in resultsmech_us3.f (field elconloc
                  should be used instead of elas)

 29 July 2022   - made some changes in nonlingeo.c concerning nactdofinv

 4 Aug 2022     - posted version 2.20
                - started changing ener(mi(1),*) into ener(2,mi(1),*) to
                  take the contact spring energy correctly into account

 5 Aug 2022     - made a change in the contact energy calculation in
                  springforc_n2f.f

 30 Aug 2022    - calculated the energy dissipated by friction in massless.c

 31 Aug 2022    - made corrections in massless.c and springforc*f
                - checked for the number of characters in the name of the
		  input deck without .inp (should not exceed 127 characters)

 2 Sep 2022     - made few corrections in cloads.f (distributed loading)
                - introduced MATRIXSTORAGE in the *BUCKLE procedure
		- replaced strcpy by strcpy2 (looks like newer compilers do
		  no stop copying at '\0')
                - made a check in arpack.c on the size of ncv relative to
		  n and nev

 5 Sep 2022     - actualized CalculiXstep.c regarding the allocation
                  and deallocation of set

 6 Sep 2022     - corrected an error in e_c3d_u1.f

 8 Sep 2022     - removed FLUID PERIODIC and FLUID CYCLIC from the
                  tie.f and cyclicsymmetrymodels.f routines and the
		  documentation

 19 Sep 2022    - changed the dimension of elconloc from 21 to ncmat_
                - corrected some errors in matrixstorage.c

 25 Sep 2022    - wrote channeljoint.f

 28 Sep 2022    - made a correction in CalculiX.c for advective elements
                  in combination with contact (memory shift of the
		  contact internal variables)

 30 Sep 2022    - accelerated non-massless explicit dynamics without energy
                  requests

 8 Oct 2022     - made a correction in dynamics.f for DIRECT

 9 Oct 2022     - worked on channel joints

 15 Oct 2022    - treated the joint of a frontwater curve channel with
                  a backwater curve channel
		  
 16 Oct 2022    - worked on a joint of two backwater curve channels

 18 Oct 2022    - implemented the massless method for linear applications
                  (no update of stiffness matrix)

 19 Oct 2022    - linear massless explicit dynamics seems to work

 29 Oct 2022    - made a small correction for massless explicit dynamics
                  in nonlingeo.c (deallocation)

 31 Oct 2022    - added an example for explicit dynamics with an orthotropic
                  material

 4 Nov 2022     - checked in createlocalsys whether the angle is smaller
                  than pi or exceeds pi

 2 Dec 2022     - modified eqspacednodes.f

 10 Dec 2022    - changed the code for feasible directions.

 14 Dec 2022    - worked on crack propagation (boundarymesh.f)
                - included the step number in the .dat-file
		
 23 Dec 2022    - corrected umat_ideal_gas.f

  2 Jan 2023    - worked on umat_ideal_gas.f
                - transferred physcon into umat_ideal_gas.f

 22 Jan 2023    - inserted the increment number into the .dat-file

 28 Jan 2023    - removed variable iumat
                - started inserting Johnson Cook model

 4 Feb 2023     - taking the thermal expansion into account in
                  umat_abaqusnl: the total right stretch tensor has to
		  be taken to calculate the corotational stress from the
		  PK2 stress, no the mechanical right stretch tensor.

 11 Feb 2023    - updated the feasible direction procedure

 17 Feb 2023    - worked on feasible directions
                - modified the conditions governing the storage of the
		  STEP number in the .dat file
                - modified the conditions governing the storage of the
		  INCREMENT number in the .dat file

 24 Feb 2023    - change in smalldist.f: distmin should not be smaller
                  than 1.d-8
		- made a change in umat_abaqusnl.f: taking expansion
		  into account after return from umat.f
                - accelerated Johnson-Cook (wrote umat_abaqusnl_4_jcook.f)

 3 Mar 2023     - made a change in umat_abaqusnl.f and umat_abaqusnl_4_jcook.f
                  (multiplied tangent matrix with vj)

 7 Mar 2023     - updated umat_johnson_cook.f and wrote umat_def_plas.f

 9 Mar 2023     - changed deformation plasticity from Cauchy stress vs.
                  Euler strain to Cauchy stress vs. Hencky strain.

 13 Mar 2023    - worked on the tangent in umat_abaqusnl.f

 14 Mar 2023    - changed the value of alambda and factor in
                  contingentsurf.f in order to accelerate the calculation
                - worked on the consistent tangent in umat_abaqusnl.f and
		  umat_abaqusnl_total.f

 21 Mar 2023    - cleaned umat_abaqusnl.f and umat_abaqusnl_total.f

 31 Mar 2023    - worked on the documentation for umat_abaqusnl.f
                - introduced centrifugal forces about an axis based
		  on node numbers

 1 April 2023   - removed an error from frd.c (imaginary part of
                  fields for a steady state dynamics calculation)

 4 April 2023   - cleaned up normalsforequ_se.f

 10 May 2023    - worked on 2D sensitivity (output of mesh in
                  normalsforequ_se.f)
 15 May 2023    - changed "26" in the declarations to "20" (no more
                  than 20 nodes per element)

 19 May 2023    - integrated the 4-noded tet with 4 integration points
                  instead of 1 for the mass matrix (intscheme=1; this is
		  an exact integration if the density is constant)

 20 May 2023    - worked on 2D-sensitivity and feasible direction

 21 May 2023    - started debugging Mohr-Coulomb

 23 May 2023    - replaced ",26)" by ",20)" (no more than 20 nodes per
                  element)
		- worked on Mohr-Coulomb

 2 June 2023    - made a correction in changekon.f (included newly
                  defined elements)
                - worked on 2D feasible direction

 4 June 2023    - made a correction in the transformation matrix in
                  mohrcoulomb.f

 13 June 2023   - if at least one initial temperature was defined, the initial
                  temperatures AND the temperature in all nodes used by
		  elements must be defined.

 18 June 2023   - worked on *matrix assemble in combination with
                  cyclic symmetry

 27 June 2023   - finished *matrix assemble in combination with cyclic
                  symmetry

 4 July 2023    - worked on *SUBSTRUCTURE MATRIX OUTPUT,OUTPUT FILE=MATRIX
                - removed the network nodes from the change-in-temperature-
		  check w.r.t. deltmx (resultsini, cam[2])

 7 July 2023    - fixed an error in resultsmech: energy was not calculated
                  in an increment for which no printing output was requested.

 8 July 2023    - initialized xstateini for explicit dynamic calculations
                  with plasticity and contact

 17 July 2023   - changed the header of the block for CDISP and CSTRE in
                  the frd-file

 22 July 2023   - removed an error in the Johnson-Cook umat routine
                - in nonlingeo.c, explicit dynamics, line 3130: displacements
		  alone are not sufficient?
		- hgforce.f needs an entry in the stiffness matrix:
		  problematic for explicit dynamics (icmd=3 in line 1476).

 25 July 2023   - added interpolation for 2D-velocity in resultsprint.f
                - made some changes in writeinputdeck.f and writeinputdeck2.f

 27 July 2023   - made some changes for the gas network elements
                - corrected an error for the connection of linear beams
		  and trusses.
