========
LOG-BOOK Version 1.5
========

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
