Commit Graph

72 Commits

Author SHA1 Message Date
Martin Diehl 2b589c3d71 moved reading in of lattice type and elastic constants to lattice module
removed structure type for hex, fcc, bcc, now defining slip/twin systems for each phase found in material.config
constitutive modules will only be initialized if needed
homogenizedC function is only needed for models incorporating twinning in a physical way (titanmod and dislotwin)
2014-03-08 20:50:31 +00:00
Martin Diehl 650b71ffa9 renamed instance consistently to "instance" as a preparation for new structure / elastic matrix handling 2014-02-28 10:18:40 +00:00
Martin Diehl d8311d46b3 .. last commit message was missing because I wanted to abort, so:
move reading in of lattice structure to lattice (elastic constants, c/a ratio, lattice structure). Still needs a little bit of documentation, the lattice structure names are not easy to understand.
tested it for j2 and phenopowerlaw and seems ok, but before continuation with the other constitutives models might simplifiy a little bit.
2014-02-10 14:38:05 +00:00
Martin Diehl d45aea4467 moved reading in of lattice stru 2014-02-10 14:31:19 +00:00
Christoph Kords 563c4ac94b corrected tangent of plastic velocity gradient dLp_dT, which improves convergence a lot 2014-01-16 09:18:26 +00:00
Martin Diehl d595f59f0e improved sanity checks, mainly for RGC 2013-12-20 08:36:15 +00:00
Martin Diehl 61c6839723 fixed over-sensitive error in homogeniztion and ifort option in makefile 2013-12-19 08:49:47 +00:00
Martin Diehl 65ae979920 indroduced sourced allocation, enums where applicable (some parts still missing). fixed bug when having recursive file input 2013-12-12 17:09:59 +00:00
Martin Diehl 95d6430b09 improved on enums (introduced them for output in j2), fixed wrong recursion depth bug in IO, fixed a bug in reading in for none, j2, phenopowerlaw 2013-12-11 22:03:09 +00:00
Martin Diehl 2d624d022f fixed small bug in detecting the lattice structure. only first 3 letters count (e.g. 'ort' and 'orthography' will give the orthorombic lattice type) 2013-11-28 08:56:02 +00:00
Martin Diehl 0bc99a9622 change latticeName to latticeID 2013-11-27 16:20:27 +00:00
Martin Diehl 2f7efa2055 introduced named constants for homogenization_type, phase_plasticitiy, and phase_elasticity to replace expensive string comparison. Labels for different schemes need to be stored in material.f90 because they are needed when parsing the config file 2013-11-27 08:04:05 +00:00
Martin Diehl dc95c82d4a removed temperature integration and corresponding data structures and debugging options
temperature is stored in crystallite, but homogeneous on one IP (not an component (grain) quantity and an input value parsed in by the BVP solver.
introduced heat, a component (grain) quantity which is homogenized before returned to the heat transfer solver.
went ahead with removal of dummy functions in homogenization and constitutive, this time mainly reduced function signatures to reflect actually needed quantities.
2013-10-16 13:04:59 +00:00
Martin Diehl 295d0cd28e removed a bunch of dummy functions (delta state for all constitutive_XXX except nonlocal, microstructure for none, j2 and phenopowerla), additional simplifications for none, averageBurgers is only relevant for RGC 2013-10-14 10:54:45 +00:00
Martin Diehl ed47d25adc remove dotTemperature (returned always 0 anyway) to make it easier to replace it with a heating rate funtction
remove potentially dangerous short circuiting in homogenization files
added doxygen comment for nonlocal (giving the functions a name)
fixed wrong definition of maxnchungs introcuded into dislotwin with last commit, causes trouble with hex
2013-10-09 06:12:16 +00:00
Martin Diehl 82faf74363 added doxygen documentation and unified variable names and some common parts of the code 2013-10-08 16:27:26 +00:00
Martin Diehl 3eec0ecdcd introduced #EOF# as module wide parameter in IO.f90
renamed read/write binary file to read/write real/int
removed suffix job from readFile functions as the name of the model is needed as an argument
2013-09-18 14:07:55 +00:00
Martin Diehl 3bf0ed84c8 some comments and minor improvements.
removed tol_gravityNodePos from prec because it's not used
tol_math_check is now used by spectral driver to check rotation
2013-09-14 10:59:35 +00:00
Martin Diehl 8210b14e90 comments for doxygen 2013-07-12 06:57:15 +00:00
Martin Diehl 40ace5c666 more documentation and parameters capitalization unified and using ipc in all modules (sometimes called gr)
nonlocal: only missing line continuation in string fixed
2013-07-01 06:10:42 +00:00
Martin Diehl ef2c2af471 doxygen documentation for J2 2013-06-28 18:58:10 +00:00
Philip Eisenlohr fd8d85896a error msg in case of unknown keyword was not properly trimmed --> 64kB of spaces... 2013-06-27 16:41:00 +00:00
Philip Eisenlohr 98528f9a89 added possibility for multi-level inclusion of files in *.config and loadcase files.
include subfiles by stating

{path/to/include}
2013-06-26 19:19:00 +00:00
Martin Diehl 296a5040b9 fixed bug in initialization when reading in material.config.
Fortran does not short-circuit, e.g. (if a>0 .and. b(a) ==c) might cause an out-of-bounds error when a=-1 it'll try to access b(-1)!
2013-06-11 20:16:40 +00:00
Martin Diehl a21dd816c7 init reporting of constitutive_*.f90 had less/to much spaces, renamed label to LABEL because it is a parameter.
removed debug output of geom_fromEuclideanDistance.py
2013-05-28 17:31:55 +00:00
Franz Roters 02f092492e updated copyright header 2013-03-22 17:35:05 +00:00
Pratheek Shanthraj 07ff1f7c93 reporting current time for most module inits 2013-02-25 16:34:59 +00:00
Philip Eisenlohr c1cf446774 parsing of material.config file now expects adequate number of (slip/twin) family entries according to given lattice type.
used to read up to maxN, but that caused unnecessary IO_warnings...
2013-02-14 22:24:55 +00:00
Martin Diehl 59a265ec7f forgot intent(in) statements needed for pure routines 2013-02-11 10:56:10 +00:00
Martin Diehl f0b4281400 removed unused variables, added pure statements, and declared external functions as external (using gfortrans debug option) 2013-02-11 10:43:45 +00:00
Mahesh Balasubramaniam 037081831b last commit did't compile, hope it's working as it should now 2013-02-05 20:07:25 +00:00
Philip Eisenlohr 865842b0ed LpandTangent assumed to be called with deviatoric stress input.
Now calculates deviator internally...
(Might have led to non volume preserving deformation.)
2013-02-05 13:47:00 +00:00
Pratheek Shanthraj 50e874f887 fixed bug in elasticity matrix calculation 2013-01-22 15:48:47 +00:00
Pratheek Shanthraj fd94c786f0 moved stiffness tensor calculation to lattice
introduced 'isotropic' and 'orthorhombic' lattice types to use corresponding symmetries in stiffness tensor. intended to be used with non-crystal plasticity models (j2, constitutive_none with isotropic, cubic or orthotropic elasticity).
2013-01-21 21:57:26 +00:00
Martin Diehl 093cf92338 remove omp statements during initialization, "line" for reading in from material.config now has a default (empty) value to prevent conditional jump depend on this value 2013-01-08 22:11:59 +00:00
Christoph Kords dad9922f54 fixed bug in crystallite_FPI: stateDamper always has to be defined for each grain
added some OMP FLUSH statements were necessary 
replaced openmp do by forall construct where possible; this is much safer and perhaps even as fast for small loops
2012-11-07 15:43:29 +00:00
Martin Diehl 8e3b547cbd changed numerics.f90 back to the old openmp statement as this doesn't seem to cause the problem and is standard conforming
corrected typo in constitutive_j2.f90 that might cause abaqus to crash
now running 20 tests of abaqus in order to have a decent statistic about the crash behavior
improved abaqus_v6.env
2012-08-29 16:16:10 +00:00
Philip Eisenlohr 7c6fc121fd condensed error reporting for constitutive_XYZ_init
removed erroneous check for structure>3
2012-07-17 17:36:24 +00:00
Philip Eisenlohr 4d09ef0648 changed variable name "debug_what" to "debug_level" 2012-07-05 09:54:50 +00:00
Christoph Kords 84d4652a07 all constitutive modules now contain a new function "deltaState", which in the future allows to have an instantaneous and incremental change of the state (additional to the rate based evolution with dotState). 2012-05-16 14:43:26 +00:00
Philip Eisenlohr 83e22c00a2 added missing allocation of slopeLnRate array.
changed parsing to lowercase name.
2012-04-20 12:18:38 +00:00
Martin Diehl 91cfd21c88 corrected some copy and paste errors 2012-04-11 14:12:30 +00:00
Martin Diehl 9a92d343dc added Onurs modified description for tausat in j2 law.
Polishing phenopowerlaw
2012-04-11 14:01:02 +00:00
Franz Roters 4d90d90886 last comment also holds for this one 2012-03-15 09:25:15 +00:00
Franz Roters 433d8a338c missed several occurences of constitution 2012-03-12 14:43:19 +00:00
Franz Roters c9ed989dad replaced keyword constitution with plasticity in preparation of upcomming generalized elasticity 2012-03-12 14:09:37 +00:00
Martin Diehl bd9667bd4b added new, flexible debugging scheme.
now all modules have their own debug specification.
compiles and runs, I hope nothing is broken
did a lot of polishing
2012-03-08 20:25:28 +00:00
Martin Diehl 79663a7f76 polishing: adding pInt, removing unused use-statements etc 2012-02-21 16:00:00 +00:00
Nan Jia db06c797cd store number of outputs for each instance of the constitution in constitutive_[j2/titanmod/...]_Nouput and use this value to loop over all valid outputs when determining the size of the outputs array 2012-02-14 15:19:59 +00:00
Christoph Kords 30c55c3142 added check for unknown keywords again (in agreement with Philip ;-)
indeed 'constitution' and '/nonlocal/' are the only keywords which have to be ignored, since they are parsed elsewhere
2012-02-14 09:22:37 +00:00