Commit Graph

6246 Commits

Author SHA1 Message Date
Philip Eisenlohr 48e642bb15 twin resistance evolution did not use magnitude of shear rate (dot gamma) but the signed quantity... leads to non-physical oscillations of twin resistance. 2009-10-20 12:15:37 +00:00
Philip Eisenlohr 7914f80931 stiffness calculation for structure > 3 was missing: "case(3)" --> now "case(3:)" as in all other constitutive_xyz..! 2009-10-19 14:47:52 +00:00
Philip Eisenlohr a94e551c5f absolute tolerance was just fine -- residuum is in Lp not in stress. Hence, unit is strain and not Pa... 2009-10-19 12:53:56 +00:00
Philip Eisenlohr ba27947142 material point now cuts back by 1/8
crystallite does not accelerate anymore, since, typically, longer step immediately fails and uses resources in vain. (future: remember number of successful steps to increase step size after x of those...)
2009-10-19 12:50:59 +00:00
Philip Eisenlohr b5fc0a9769 small rearrangement of cutback dealings. may give minute speed improvement... 2009-10-19 12:46:02 +00:00
Philip Eisenlohr 5a5d461a30 changed abs tolerance in stress loop to 1 Pa (from 1e-8 Pa ..?) 2009-10-19 12:44:20 +00:00
Christoph Kords 6e613303a3 2009-10-19 08:01:02 +00:00
Christoph Kords ba02dfca1e 2009-10-19 07:56:47 +00:00
Philip Eisenlohr 992077e88e fixed cut back issue with Marc. Necessity to introduce compMode 7 to capture tangent restoration at lovl=4 call. 2009-10-17 09:25:36 +00:00
Philip Eisenlohr 974116808b fixed a potential memory leak for hexagonal structures. added some status output to constitutive_xx 2009-10-15 20:02:52 +00:00
Philip Eisenlohr 5adcb5e36c now contains the number of grains "m" as first entry (thanks to Koen for appending the document) 2009-10-15 11:53:07 +00:00
Philip Eisenlohr 7f84961c93 less debug clutter... 2009-10-14 13:23:52 +00:00
Philip Eisenlohr c3cb72d356 put some comments to hybridIA 2009-10-14 13:21:03 +00:00
Luc Hantcherli 00450b2c16 Added constraint on the dipole distance
if dipole distance > dislocation mean free distance then
   dipole distance = dislocation mean free distance
2009-10-13 18:14:44 +00:00
Luc Hantcherli 3bf3d7ddbd New version of constitutive_dislotwin after first-round checks 2009-10-13 15:05:21 +00:00
Franz Roters 2c1a610b14 removed Koen's loading subroutine from abaqus interface 2009-10-13 06:55:15 +00:00
Philip Eisenlohr 0a34da292e # no need for materialpoint_results in hypela2
# homogenization updated to be compatible with abaqus interface
2009-10-12 17:01:42 +00:00
Luc Hantcherli ca1c61bf98 Changed constitutive_dislobased into constitutive_dislotwin 2009-10-12 16:44:17 +00:00
Philip Eisenlohr 8b66b8def2 # small remark to set "-free" switch for compile
# rename to Abaqus-compatible ".f" extension
2009-10-12 16:32:57 +00:00
Philip Eisenlohr 7d05845d5d # now $ID aware
# LF as line separation and some tidy up
2009-10-12 16:26:16 +00:00
Philip Eisenlohr 2c06cad4d0 now $ID aware 2009-10-12 16:25:48 +00:00
Philip Eisenlohr 21cad32137 # new interface for Abaqus
# IO has some additional functionality for Abaqus parsing
# ping pong scheme in FE interface now similar (and more human understandable) in both versions
# mesh has better splitting of different tasks, plus operation on database whenever possible
# FEsolver as new global var to indicate FEM solver type
# computation mode reshuffling: 6 is now Marc special case of recycling...
2009-10-12 16:01:49 +00:00
Philip Eisenlohr 02602144d2 can now be executed from different directories...but will operate on "its" one 2009-10-12 14:18:54 +00:00
Luc Hantcherli 3f41b271fb The new dislocation model is now implemented in constitutive_dislotwin.f90
(seems to run fine, but still under investigation)
2009-10-09 20:28:23 +00:00
Christoph Kords 4ff497e5ba mesh_build_sharedElems does not need an input argument anymore 2009-10-08 09:23:15 +00:00
Philip Eisenlohr e7247551f0 changed "build_sharedElements" to use (then existing) internal element data structure instead of reading again from the input file. The data structure is already established by "build_elements"... 2009-10-08 09:01:59 +00:00
Luc Hantcherli 8cb156dc35 in Documentation\ConstitutiveLaw\DisloTwinLaw
Added tex source that generates PDF-file describing dislocation glide as implemented in constitutive_dislotwin.f90
2009-10-08 07:33:01 +00:00
Luc Hantcherli bb8a71557b Added comment on FCC different interaction types
1 --> self
2 --> coplanar
3 --> collinear
4 --> Hirth locks
5 --> glissile junctions
6 --> Lomer locks
2009-10-07 17:00:35 +00:00
Christoph Kords 9b3a59646a constitutive_nonlocal
- take orientation gradients into account when calculating dislocation stress and dislocation fluxes
- hard coded value for nu
- changed kinetics (parameter G0 is currently defined as a parameter, needs to be read from material.config)
- added some output statements

constitutive: 
- some functions and subroutines needed additional input variables for passing to constitutive_nonlocal 

crystallite:
- some functions and subroutines needed additional input variables for passing to constitutive
- call microstructure with current temperature, Fp, Fe, not "sub0" values
- show number of IPs, that are "onTrack" instead of those not "onTrack"
- calculate Fe at beginning of substep, since we need it for state preguess
2009-10-07 15:31:52 +00:00
Luc Hantcherli 7d6729f1c5 Added summary of dislocation model as implemented in constitutive_dislotwin.f90 2009-10-07 14:28:55 +00:00
Luc Hantcherli cc6aa1aeba Updated constitutive_dislotwin
Deleted constitutive_dislobased
2009-10-06 15:19:19 +00:00
Luc Hantcherli bc5a408c1a Changed constitutive_dislobased into constitutive_dislotwin:
in constitutive.90
in constitutive_dislotwin.f90
in mpie_cpfem_marc.f90
2009-10-06 15:16:03 +00:00
Franz Roters c5865bb7ec corrected calculation of dTdLp 2009-10-02 06:40:12 +00:00
Christoph Kords c67412c36b added missing constitutive outputs for nonlocal law 2009-10-01 16:31:06 +00:00
Christoph Kords b09b2b17f3 convergence of state in crystallite is now tested as follows:
(state < relevant state) or (residuum < relative tolerance * state)
since the relevant value for the state variables depend on their nature and can vary by large scales (e.g. volume fraction: 1e-10, dislocation density: 1e5) it is not possible to set a unique value. instead the constitutive law has to decide what is relevant. therefore, all constitutive laws now read in parameters from the material.config that determine the values for relevantState [@luc: in dislobased law relevant State is for the moment generally set to 1e-200, so no additional parameters necessary in material.config. if you also want this feature, we can still implement it, no big deal]

- added sanity checks in constitutive_nonlocal.f90

- corrected coordinate transformation for backstress calculation in constitutive_nonlocal.f90

- corrected equations for evolution of dipole dislocation densities (athermal annihilation and formation by glide)
2009-09-18 15:37:14 +00:00
Denny Tjahjanto ec524a1dd2 homogenization_RGC.f90
>> Fixing problems related to the size of homogenization_RGC_state vector.
2009-09-07 15:28:32 +00:00
Denny Tjahjanto 5f7e5b8409 homogenization_RGC.f90
<< correction for a very stupid mistake. replacing stress P with the absolute value of stress abs(P) during convergence check. it should work upon deep-drawing.
2009-09-03 20:26:20 +00:00
Franz Roters a16dbe4d32 material_config: added w0_slip in [Aluminum_phenopowerlaw] 2009-08-31 15:38:09 +00:00
Franz Roters 6d3c620e46 forgot to "use" the new init-routines 2009-08-31 15:21:15 +00:00
Franz Roters 2029b23f98 added version information to all files
do NOT edit text like this:
$Id: constitutive_phenopowerlaw.f90 406 2009-08-31 14:13:10Z MPIE\f.roters $
2009-08-31 15:09:15 +00:00
Franz Roters bb0840ecb2 constitutive_phenopowerlaw.f90: check for non-zero w0_slip
IO.f90: added respecteive error message

constitutive_phenopowerlaw.f90: first test with automatic file Id
2009-08-31 14:13:10 +00:00
Franz Roters 4357e29e07 yet another missing "then" in homogenization 2009-08-28 15:26:18 +00:00
Franz Roters c0d1140234 added a missing "then" 2009-08-28 15:14:27 +00:00
Denny Tjahjanto 3ea17dd2fd CPFEM.f90 >>> A very small, not important thing.
homogenization.f90 and crystallite.f90 >>> Correction in the algorithm to count the iteration distribution (for better statistics).

material.config and numerics.config >>> more collection of parameters.
2009-08-28 15:05:14 +00:00
Christoph Kords f27d66a9ae constitutive_nonlocal:
- dipole dislocations with evolution

crystallite.f90:
- collect state uses subdt and subTstar0_v
- in nonlocal modus: set all crystallites to broken if one is not on track anymore after either stress integration or state update
- constitutive_microstructure is now called inside state update and not in integrate_stress anymore

material.config:
- new parameter for nonlocal constitution

CPFEM.f90:
- age Tstar after increment was finished
2009-08-28 13:50:47 +00:00
Denny Tjahjanto 644265381e mpie_cpfem_marc.f90 >>> changing the compilation sequence of modules: numerics.f90 and IO.f90 move up, while math.f90 down.
IO.f90 >>> adding "inRad" instead of using inRad from math.f90 module, since math.f90 module is now below IO.f90.

numerics.f90 >>> now can read the parameter "fixed_seed" from numerics.config. this parameter is used to set a pseudo-random number generator/fixed seeding. default value is 0 (zero), which will give fully random number.

math.f90 >> adding a possibility to fix the seeding (i.e., pseudo random number)

numerics.config >>> add a new parameter: "fixed_seed"
2009-08-27 15:30:40 +00:00
Denny Tjahjanto b25396374a homogenization_RGC.f90 >>> adding some lines, mostly for debugging purpose. no critical change.
constitutive_phenopowerlaw.f90 >>> adding new parameter: constitutive_phenopowerlaw_w0_slip, i.e., the hardening rate exponent.
homogenization.f90 >>> most important change is to add an if-else statement (line 379-380) to switch crystallite_requeted = .false. for already converged material point iteration (el/ip). the rest of the changes are cosmetics and debugging stuffs.
crystallite.f90 >>> similar to homogenization.f90, the most important change is to add additional if-else statement (line 574) in the jacobian (perturbation) loop. now the jacobian calculation will only be performed when crystallite_requested = .true.. the rest is only cosmetic.
2009-08-27 12:10:06 +00:00
Denny Tjahjanto f70013ee9b lattice.f90: correction of typo from the last update (Philip) 2009-08-26 09:02:22 +00:00
Philip Eisenlohr 7720680f3a makeMe: some polishment
lattice: found memory leak (lattice_interactionTwinSlip had wrong size) and added further commenting
2009-08-26 07:28:43 +00:00
Christoph Kords 1dbd0865db constitutive_nonlocal.f90
- completed postResults output function
- connecting vector of neighboring material points is mapped to intermediate configuration of my neighbor

crystallite.f90
- zero out dotState only when crystallite is non-finished
- set nonfinished flag to false if crystallite is not on Track after state update
- in updateState: set onTrack flag to false if encounter NaN
- removed some old debugging outputs and added others

homogenization.f90
- in debugging mode now telling when a cutback happens
2009-08-24 08:16:01 +00:00