Su Leen Wong
c2ee6ff299
Renaming transformation input variables to more logical names
2014-09-23 15:38:41 +00:00
Pratheek Shanthraj
556d485ca4
typo: diffusion not difusion
2014-09-23 12:30:52 +00:00
Pratheek Shanthraj
5ce49387f6
added history variable for brittle damage to prevent healing. renamed/removed some lattice damage tensors and symmetrize them.
2014-09-23 12:22:34 +00:00
Pratheek Shanthraj
6ace12be0c
removed unused variables
2014-09-22 20:34:42 +00:00
Luv Sharma
e83a0fb3f7
polished field state related changes and brittle damage
2014-09-22 18:15:19 +00:00
Martin Diehl
7cb7815176
polishing style
2014-09-13 10:04:44 +00:00
Su Leen Wong
f8646daf85
Added projection matrix for strain-induced transformation
2014-09-12 09:10:19 +00:00
Martin Diehl
5b6f143fb0
intel fortran behaves strange for standard check:
...
https://software.intel.com/en-us/forums/topic/506419
worked around that
2014-09-11 16:02:05 +00:00
Luv Sharma
dc406a01c0
added funtions to get averged properties at integration points.
2014-09-10 08:37:12 +00:00
Su Leen Wong
5f1e49c053
Cleaner way of calculating the Bain strain
2014-09-01 10:47:48 +00:00
Su Leen Wong
565e703f49
Minor fix for now
2014-09-01 09:30:33 +00:00
Pratheek Shanthraj
fc941a6436
fixed some bugs in previous commit
2014-09-01 08:57:34 +00:00
Su Leen Wong
e8a3b7ed19
Pitsch orientation relationship for phase transformation
2014-08-29 13:03:48 +00:00
Su Leen Wong
1da874a6db
Modification of basic states for phase transformation
2014-08-14 13:18:33 +00:00
Su Leen Wong
591a82de26
Fixed issue with previous commit
2014-08-14 12:21:51 +00:00
Su Leen Wong
5719987f95
Calculation of eigendeformation tensor for phase transformation
2014-08-14 10:04:13 +00:00
Su Leen Wong
1707f7d367
updated to read in TRIP parameters
2014-07-22 07:43:03 +00:00
Pratheek Shanthraj
4af3459424
fixed bug in symmetrizing 2nd order tensor
2014-07-08 01:02:29 +00:00
Martin Diehl
8fa2dcffbd
changed to new state, please report bugs to Luv or Martin
2014-07-02 12:27:39 +00:00
Pratheek Shanthraj
0c66204904
reference temperature for thermal problems parsed and stored in lattice
2014-06-24 22:54:19 +00:00
Pratheek Shanthraj
9cdee47500
now parsing thermal conductivity, thermal expansion coeff and damage tensor from material config if present and symmetrizing according to lattice structure. setting up for multi physics
2014-06-24 13:48:29 +00:00
Pratheek Shanthraj
bf24bd83f2
fixed error check for CoverA ratio
2014-06-18 13:26:16 +00:00
Martin Diehl
eaa3e32f21
improved warning and error messages
2014-06-18 09:10:16 +00:00
Martin Diehl
488927a231
worked on phenopowerlaw test, made material.config writer case insensitive, polished lattice, removed deprecated part of documentation
2014-06-16 13:11:26 +00:00
Martin Diehl
da8f10fe6f
consistency checks for lattice type improved
2014-06-13 08:57:00 +00:00
Martin Diehl
d9e8e8fc10
added consitency check: At least one phase must be present
2014-05-21 13:03:59 +00:00
Christoph Kords
c027e8e1a8
added comment and citation for non-Schmid matrices for bcc
2014-04-30 09:56:30 +00:00
Martin Diehl
4bb5439994
removed copyright from *.f90 and *.f files, will be added using the deployMe script for release/nightly build. Now based on presence of svn:keywords property set (usually "Id"). Similar thing will be done for .py, .sh, and .config files but more involved because they might be executable
2014-03-29 08:20:36 +00:00
Martin Diehl
ef8fbf4dda
introduced case in dislotwin for bcc (peierls stress as critical stress)
...
renamed some parameters, now exponents (p,q) for slip are per family, shear band got own ones. exponent for twin (r) now per family
fixed bugs in lattice ("empty" interactions should be 1 not zero)
see both Phase examples to check what is needed
2014-03-11 17:40:59 +00:00
Martin Diehl
721183e702
removed some forgotten debug statements
2014-03-08 22:51:32 +00:00
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
32493675d6
fixed bug in constitutive introduced in rev 2988 causing wrong names in *.outputConstitutive
2014-03-05 08:06:21 +00:00
Martin Diehl
a0d75ee05e
moved quaternion disorientation to lattice because it requires the knowledge of the lattice structure.
2014-02-28 13:28:27 +00:00
Martin Diehl
fe13bb16fe
added some consistency check and remove unnamed constants
2014-02-27 18:57:46 +00:00
Martin Diehl
69992638a8
added missing covera_ration in hex test. was not necessary before for constitutive_none, now it is
2014-02-17 09:45:54 +00:00
Martin Diehl
4efb1e5617
fixed bug: wrong initialization of lattice structure, had effect on j2 and phenopowerlaw
2014-02-14 18:05:59 +00:00
Martin Diehl
d45aea4467
moved reading in of lattice stru
2014-02-10 14:31:19 +00:00
Martin Diehl
9f3a17b1b6
fixed bug in hexagonal slip system definition
2014-01-15 12:08:46 +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
7885ebaf8f
added 'reset' flag for recursive function IO_read, need to reset stack when stopping exectution (will be used by constitutive and homogenization)
2013-12-11 16:49:20 +00:00
Martin Diehl
0bc99a9622
change latticeName to latticeID
2013-11-27 16:20:27 +00:00
Philip Eisenlohr
0a292d8d8b
fixed final bug in hex twintwin matrix
2013-10-15 22:02:39 +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
Philip Eisenlohr
0a7052a7da
fixed two errors in hexagonal slipslip and twintwin interaction matrix
2013-10-08 13:52:19 +00:00
David Mercier
ce926aaf1f
Minor contribution :
...
- add SVN keyword to the material.config file for cp-Ti
- add comments in lattice file
2013-09-19 09:17:09 +00:00
David Mercier
a8eb6a985e
- Addition of an example of a material.config file for hcp material (cp-Ti).
...
- New Error Message #214 when elastic constants are not correctly defined.
- Error message when the c/a ratio for hcp is higher than 2 (no physical sense).
2013-09-17 12:20:50 +00:00
Christoph Kords
5f973a21c0
require all hardening coefficients/ non schmid coefficients to be specified in material.config, do not silently ignore any
...
warning message now more meaningful (?) when using less than maximum number of slip families
2013-09-12 14:47:09 +00:00
Christoph Kords
39c05e0d9e
for bcc: exchanged 2nd and third hardening coefficient to be consistent with fcc; now 2nd is coplanar and 3rd is collinear; added newer reference concerning the bcc hardening coefficients
2013-08-14 11:47:03 +00:00
Christoph Kords
813ed130b0
nonSchmid behavior now ready to use for bcc with phenopowerlaw and nonlocal constitutive model.
...
nonSchmid tensors according to Koester,Ma,Hartmaier,2012.
extended lattice_Sslip with non-Schmid tensors (the full non-symmetric tensors are required for the tangent and cannot be retrieved from the symmetrized Mandel notation)
2013-08-05 09:23:21 +00:00
Christoph Kords
3749cd5564
changed "math_AxisAngleToR" to "math_axisAngleToR" to be consistent with spelling in math.f90
2013-07-22 09:43:35 +00:00
Philip Eisenlohr
8ccdfb27f3
reworked the hexagonal slip system order and adjusted interaction matrices to a logic that facilitates later system additions without altering existing structure.
2013-07-01 14:01:42 +00:00
Franz Roters
4a291dc372
implementation of twin nucleation criteria according to Davids PhD thesis
...
applies for fcc crystal structure only
2013-07-01 13:06:01 +00:00
Philip Eisenlohr
81cdd2b1cc
added second type prismatic slip system for hexagonal lattices as 6th slip family.
...
consequently, 4 new interaction types (21,22,23,24) available for slip/twin and twin/slip.
interaction of slip/slip got rearranged and now has 42 types...
list of former --> new:
6 7
7 8
8 9
9 10
10 11
11 13
12 14
13 15
14 16
15 18
16 19
17 20
18 22
19 23
20 25
21 28
22 29
23 30
24 31
25 33
26 34
27 35
28 37
29 38
30 40
2013-06-14 10:20:31 +00:00
Martin Diehl
85d4a37d95
moved public data res,size and homog from mesh to DAMASK_spectral_utilities (as grid and geomSize)
2013-05-08 15:52:29 +00:00
Franz Roters
02f092492e
updated copyright header
2013-03-22 17:35:05 +00:00
Martin Diehl
3e2ecbe0a3
added time stamp to init of lattice
2013-03-07 22:45:00 +00:00
Martin Diehl
7e0ea5dd04
hickups in doxygen documentation fixed
2013-03-05 14:35:26 +00:00
Christoph Kords
62e55483f7
fixed bug in lattice: line continuation character was missing
2013-02-27 10:49:23 +00:00
Martin Diehl
bac186c5b7
removed 2003 standard initialization expression not supported by ifort so far
2013-02-27 07:35:53 +00:00
Martin Diehl
0be6706483
some more detailed doxygen comments
2013-02-26 19:01:31 +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
e644c6dbc5
improved reading in of values, now only warnings in case of problematic entries in material.config
...
divergence calculation sqrt scaling optionally introduced for basic scheme spectral solver
2013-02-08 15:55:53 +00:00
Martin Diehl
2b319f02e6
small corrections on changes related to non-schmid systems
2013-01-22 10:04:15 +00:00
Pratheek Shanthraj
60fec0e8ec
added code structure for non-schmid mechanics. work in progress…
2013-01-21 23:11:16 +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
Philip Eisenlohr
1e32eb560e
corrected buggy calculation of Schmid matrix for twins introduced in rev1809.
...
(stress acting on twin systems was overestimated by factor of sqrt(3) due to that!!)
additional polishing.
2012-11-23 17:02:50 +00:00
Nader Zaafarani
dc5cd8a4c4
A modified twin-twin interaction matrix for BCC is introduced.
...
An introduction of a third parameter at the interactionTwinTwin in the material.config for BCC-dislotwin materials is essential.
2012-11-16 13:39:08 +00:00
Nader Zaafarani
c0a5a1dfd1
Formation of the Slip-Slip interaction matrix for BCC.
2012-11-14 17:35:33 +00:00
Martin Diehl
1896c07c70
corrected some bugs in the last commits
2012-11-14 14:33:41 +00:00
Nader Zaafarani
c8be3a03bd
The twin system <111>{112} for BCC is introduced.
2012-11-14 13:43:59 +00:00
Nader Zaafarani
6b010b4a46
Twin-slip interaction matrix for BCC is set to 0.
2012-11-14 11:53:22 +00:00
Nader Zaafarani
b0464ad176
A modified slip-twin interaction matrices for FCC and BCC are introduced.
...
The shear twin value for BCC is corrected.
An introduction of a third parameter at the interactionSlipTwin in the material.config for dislotwin materials is essential.
2012-11-14 11:13:16 +00:00
Philip Eisenlohr
fb2981b4c4
switched matrix indices in SlipSlip, SlipTwin, TwinSlip, and TwinTwin such that first index refers to first name and second to second...
2012-11-14 10:27:23 +00:00
Philip Eisenlohr
79a5a30a90
removed now obsolete vectorproduct variables st, tt...
2012-10-18 07:25:49 +00:00
Philip Eisenlohr
31f20e51da
just to be able to tell about the bug I found in the hex slip systems---which I actually forgot to mention during the last commit---I slipped in a syntax error that now is fixed, too...
2012-10-12 20:31:50 +00:00
Philip Eisenlohr
82a13af474
tidied up the Schmid matrix calculations.
...
added internal check against dilatation in Schmid matrices.
2012-10-12 17:59:50 +00:00
Martin Diehl
0bcb8f59db
added doxygen comments, some polishing, added "protected" statements where applicable
2012-10-02 12:53:25 +00:00
Martin Diehl
0434ef3daa
some comments to be seen in documentation
2012-08-15 13:38:38 +00:00
Philip Eisenlohr
4d09ef0648
changed variable name "debug_what" to "debug_level"
2012-07-05 09:54:50 +00:00
Martin Diehl
dbdc7ddfa2
debug.config, debug.f90, DAMASK_abaqus_exp.f, DAMASK_abaqus_std.f: changed to new debug scheme (wasn't working)
...
lattice.f90, FEsolving.f90: explicitly defined public functions and variables, all others are now private
numerics.f90: changed output format of real numbers, now instead of 0.1eX 1.0e(X-1) is printed to screen
Makefile: now using correct Optimization flags for OPTIMIZATION=AGGRESSIVE
DAMASK_spectral_AL.f90: improved, but still testing. Stress BCs now seem to be handled correctly
2012-03-20 18:01:31 +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
23cda48709
cleaning up, removing includes not needed
2012-02-21 15:42:47 +00:00
Martin Diehl
6c0f9d163b
polishing: removed variable names like 'unit' and 'data' that are keywords of fortran and ensured that integer and real precision matches independent of machine standard.
...
removed cut_off parameter for damask_spectral
removed outpot of derived divergence measures and added RMS output in brackets
added comments and options to the makefile
2012-02-15 18:58:38 +00:00
Christoph Kords
c786336af3
reordered (and partly redistributed) error message identifiers, deleted those which are not in use anymore.
...
all constitutive as well numerics now raises an error, if an unknown keyword is found in the respective config file
2012-02-13 17:41:27 +00:00
Martin Diehl
37ac7bf1b4
fixing inconsistencies in variable assignments
2012-02-10 11:56:05 +00:00
Martin Diehl
800e291240
made code standard conform to Fortran 2008 (ignoring warning concerning comments beyond character 132). Basically, changing "x" format specifier to "Nx" ("1x") plus removing $ format specifier
...
added compiler switches for gfortran and ifort to check for standard conformity
old gnu compilers <4.4 are not longer supported because they don't provide the c binding for fftw
2012-01-31 19:18:55 +00:00
Martin Diehl
80583fefb5
added compilation_info.f90, to store compilation date,time and compiler info in each file
...
added #include statement at each init() routine
2012-01-31 14:54:49 +00:00
Christoph Kords
1330576a01
added new math function "math_deviatoric33" which returns the deviatoric part of a 3x3 tensor
...
renamed some math functions, so that we have a universal naming scheme: for matrix multiplications use an "x" (e.g. math_mul33x3); don't use the "x" to describe the shape of the tensor that the function is applied to (e.g. math_invert33 instead of math_invert3x3)
2012-01-26 13:50:00 +00:00
Philip Eisenlohr
a7d9d711f6
edited lines exceeding 132 chars (before any comment started)
2012-01-11 16:56:35 +00:00
Martin Diehl
c35ea33f8e
did a lot of polishing:
...
- removed unnecessary "return" before end of subroutine or function:
- changed undetermined array length (:) to (1:3)
To prevent problems with some code analysing tools:
- "3D oneliner loops" (with ";) only for "do" and "enddo" at the same time
- removed line continuation in OMP statements
made the makefile more flexible, removed heap-arrays switch
2011-09-13 15:54:06 +00:00
Martin Diehl
fe9754a41c
previous commit was wrong file
2011-09-02 10:46:37 +00:00
Martin Diehl
43e2684cfb
added new glide system for hex lattice
2011-09-02 10:43:49 +00:00
Martin Diehl
75c67f53f7
introduced alternative location for material configuration.
...
If present, the >>>JOB.materialConfig<<< file takes precedence over the standard >>>material.config<<<
2011-08-02 10:14:16 +00:00
Franz Roters
7d84a0911e
removed unused variables
2011-04-13 14:16:22 +00:00
Franz Roters
c1b8391110
changed enconding of all source files to UTF-8 without BOM (signature) Codepage 65001
2011-04-07 07:20:28 +00:00
Franz Roters
fcdb805225
added copyright text to all f90 (free) format files
2011-04-04 14:09:54 +00:00
Christoph Kords
11138e3ee2
debugging output is now controlled by the "verbosity" parameter in the debug.config ranging from 0 (=almost no output) to 8 (=very detailed output)
...
0 : only version infos and all from "hypela2"/"umat"
1 : basic outputs from "CPFEM.f90", basic output from initialization routines, debug_info
2 : extensive outputs from "CPFEM.f90", extensive output from initialization routines
3 : basic outputs from "homogenization.f90"
4 : extensive outputs from "homogenization.f90"
5 : basic outputs from "crystallite.f90"
6 : extensive outputs from "crystallite.f90"
7 : basic outputs from the constitutive files
8 : extensive outputs from the constitutive files
If verbosity is equal to zero, all counters in debug are not set during calculation (e.g. debug_StressLoopDistribution or debug_cumDotStateTicks). This might speed up parallel calculation, because all these need critical statements which extremely slow down parallel computation.
2011-03-21 10:31:17 +00:00
Christoph Kords
235266b169
openmp parallelization working again (at least for j2 and nonlocal constitutive model).
...
In order to keep it like that, please follow these simple rules:
DON'T use implicit array subscripts:
example: real, dimension(3,3) :: A,B
A(:,2) = B(:,1) <--- DON'T USE
A(1:3,2) = B(1:3,1) <--- BETTER USE
In many cases the use of explicit array subscripts is inevitable for parallelization. Additionally, it is an easy means to prevent memory leaks.
Enclose all write statements with the following:
!$OMP CRITICAL (write2out)
<your write statement>
!$OMP END CRITICAL (write2out)
Whenever you change something in the code and are not sure if it affects parallelization and leads to nonconforming behavior, please ask me and/or Franz to check this.
2011-03-17 10:46:17 +00:00
Martin Diehl
cd5407b08b
removed all math functions only for double precision by the more flexible counterpart, e.g. "dsqrt --> sqrt", "dsin --> sin". Should not cause any harm, as long as "implicit none" is used.
...
Now it is possible to compile a single precision spectral solver/crystal plasticity by replacing mesh.f90 and prec.f90 with mesh_single.f90 and prec_single.f90.
For the spectral method, just call "make precision=single" instead of "make". Use "make clean" evertime you switch precision
2011-02-25 09:25:53 +00:00