Martin Diehl
adbf6739a9
Merge branch 'Adaptive-Euler-one-loop' into RKCK45-one-loop
2020-03-26 10:56:51 +01:00
Martin Diehl
fe8ee825d6
bugfix: F, not Fp for explicit nonlocal
2020-03-26 10:52:10 +01:00
Martin Diehl
8725c2ceba
Merge remote-tracking branch 'origin/development' into Adaptive-Euler-one-loop
2020-03-26 10:49:34 +01:00
Martin Diehl
a4674a6461
whitespace adjustments
2020-03-25 20:55:37 +01:00
Martin Diehl
3ce8902245
no need to split up
2020-03-25 20:47:10 +01:00
Martin Diehl
aa2d440107
finally one loop left
2020-03-25 20:37:37 +01:00
Martin Diehl
599de26dad
further integration
2020-03-25 19:44:51 +01:00
Martin Diehl
939d2af1d9
bugfix: explicit nonlocal requires F, not Fe
2020-03-25 18:58:58 +01:00
Martin Diehl
9900bf0be7
Merge branch 'FPI-one-loop' into RKCK45-one-loop
2020-03-25 18:56:51 +01:00
Martin Diehl
2d5d48288c
bugfix, related making nonlocal state update explicit
2020-03-25 13:20:14 +01:00
Martin Diehl
ddef241dcc
Merge branch 'FPI-one-loop' into Euler-one-loop
2020-03-25 13:19:42 +01:00
Martin Diehl
a6f94efa51
bugfix, introduced when making nonlocal explicit
2020-03-25 13:17:48 +01:00
Martin Diehl
86abba477a
use same loop
2020-03-25 11:27:03 +01:00
Martin Diehl
b54a109d99
do plasticState and sourceState at once
2020-03-25 11:20:39 +01:00
Martin Diehl
652846cdc9
no need for extra loop
2020-03-25 11:16:26 +01:00
Martin Diehl
67f64cf7e1
correct iteration skipping
2020-03-25 11:13:46 +01:00
Martin Diehl
32b9a5ab15
all in one loop
2020-03-25 11:07:47 +01:00
Martin Diehl
9a188784e2
no need for an extra loop
2020-03-25 10:54:17 +01:00
Martin Diehl
02774a89d9
2 space indentation
2020-03-25 10:33:41 +01:00
Martin Diehl
52ca7cc43c
only one stateJump per integration
2020-03-25 10:27:55 +01:00
Martin Diehl
2dd3ccdad1
no need to transpose
2020-03-25 10:22:21 +01:00
Martin Diehl
8f6dc054d0
move up the nonlocal skip
2020-03-24 22:25:40 +01:00
Martin Diehl
e7c585a02e
loop order that allows more memory efficient code
2020-03-24 20:47:41 +01:00
Martin Diehl
66aa20ad39
extra check for nonlocal needed
2020-03-24 20:35:27 +01:00
Martin Diehl
0740c9f339
dot state in loop
2020-03-24 20:33:26 +01:00
Martin Diehl
44e24a9c4f
merging into one loop
2020-03-24 20:25:29 +01:00
Martin Diehl
eb6fe8a3a2
merge into one loop
2020-03-24 16:14:14 +01:00
Martin Diehl
369ea31a4b
name unification for simple copy and paste
2020-03-24 15:02:55 +01:00
Martin Diehl
93abf2b6d8
this SEEMS to be the way how it was planned
2020-03-24 13:06:29 +01:00
Martin Diehl
424fcabb90
move into the same loop
2020-03-24 12:54:31 +01:00
Martin Diehl
871241e31b
first round of loop removal
2020-03-24 12:43:41 +01:00
Martin Diehl
b88ffb8d4f
converged(g,i,e) matters only for FPI
2020-03-24 12:30:43 +01:00
Martin Diehl
d16af3bfb3
one loop for Euler integrator
2020-03-24 12:19:36 +01:00
Martin Diehl
d45f1f1c6f
further integration into one loop
2020-03-24 11:37:00 +01:00
Martin Diehl
0e5f0a3068
no need for two loops
2020-03-24 11:27:53 +01:00
Martin Diehl
106cc1de92
complete iteration of each materialpoint step by step
2020-03-24 10:45:38 +01:00
Martin Diehl
cde558e736
convergence check on the fly
2020-03-24 10:34:15 +01:00
Martin Diehl
4c485f1af0
state jump in same loop
2020-03-24 10:18:17 +01:00
Martin Diehl
3a6269e802
wrong omp pragmas
2020-03-24 10:06:08 +01:00
Martin Diehl
8d6dcd779c
dotstate/residual/state calculation in the same loop
2020-03-24 06:34:42 +01:00
Martin Diehl
830ea61739
better readable
2020-03-24 06:27:43 +01:00
Martin Diehl
9c134e68fc
in-line dot state
2020-03-23 08:15:33 +01:00
Martin Diehl
e5743c7d27
same logic
2020-03-23 06:53:23 +01:00
Martin Diehl
027818c942
run in one loop
2020-03-23 00:32:41 +01:00
Martin Diehl
0b321bd9d4
bugfix for nonlocal
...
logic is hard to understand ...
2020-03-23 00:18:57 +01:00
Martin Diehl
86db8f8ca4
avoid flush
2020-03-23 00:15:00 +01:00
Martin Diehl
e7d61e49fe
can be done in the same loop
2020-03-22 23:16:00 +01:00
Martin Diehl
91e728d065
polishing
2020-03-19 11:30:36 +01:00
Martin Diehl
9ed48f7e5f
getting rid of totalNslip in nonlocal
2020-03-16 10:09:58 +01:00
Martin Diehl
66302fa6da
rotational part is always of 3x3 tensor
2020-03-15 14:21:11 +01:00
Martin Diehl
ae49e6710d
documenting for doxygen
2020-03-15 12:54:35 +01:00
Martin Diehl
8cc16da53f
atol is part of the state structure, no need for suffix
2020-03-15 09:51:40 +01:00
Martin Diehl
eb08f9f0b2
polishing
2020-03-14 19:40:05 +01:00
Martin Diehl
3713810592
simplified allocation for same shape
2020-02-29 13:53:04 +01:00
Martin Diehl
bcccf06450
Merge remote-tracking branch 'origin/development' into less-public-variables
2020-02-29 13:18:02 +01:00
Martin Diehl
82dee9db0e
matching names
2020-02-25 17:53:15 +01:00
Martin Diehl
48604292e2
Merge remote-tracking branch 'origin/development' into MiscImprovements
2020-02-25 17:33:39 +01:00
Martin Diehl
2c952c3410
these variables can be at leat write protected
2020-02-25 09:50:21 +01:00
Martin Diehl
7d7eff0d94
crystallite should be responsible of crystallite variables
2020-02-25 09:42:07 +01:00
Martin Diehl
2cf89b1fdd
bugfix: output dataset was too large in case of Ngrains>1
...
material_phaseAt is defined per constituent/grain/component => no need
to multiply with homogenization_maxNgrains
2020-02-22 11:28:03 +01:00
Martin Diehl
a2e710c89c
alinged for better readability
2020-02-21 08:45:11 +01:00
Martin Diehl
c9c78aa90d
do not store invFp and invFi for all points
...
requires to explicitly calculate inverse of Fp and Fi for the tangent
calculation. Hence, classical tradeoff between memory consumption and
runtime.
2020-02-21 08:41:08 +01:00
Martin Diehl
d108d76a61
was never read
...
probably it was optimized away by the compiler, still confusing
2020-02-20 15:08:32 +01:00
Martin Diehl
a8e2ee0a86
[skip ci] is read only for other modules
2020-02-14 21:31:03 +01:00
Martin Diehl
6adb116712
[skip ci] whitespace adjustments
2020-02-14 06:24:17 +01:00
Martin Diehl
4f7bbb323e
not needed
2020-02-13 18:43:20 +01:00
Martin Diehl
64e86666c6
also set initial det(Fp)=0
...
Marc element lib test failed otherwise for type 117
2020-02-13 17:10:27 +01:00
Martin Diehl
0f70a19266
Fp matters, not Fp^-1
...
mathematically absolutely equivalent, but numerically not. Sometikes makes a
huge difference in convergence behavior, even though abs(det(Fp)-1) is
in the order of 1e-15
2020-02-13 14:48:32 +01:00
Martin Diehl
fc82ec9b1b
tiny deviations from det(Fp) = 1 cause convergence problems
2020-02-13 09:18:49 +01:00
Martin Diehl
b861ad11c1
tiny differences between orientation conversions result in more
...
iterations
Seen so far only for plasticityDetectChanges test (confirmed for dislotwin and
phenopowerlaw).
The max difference between the entries of the rotation matrix from
orientation0%asMatrix() and eu2om(Eulers)/eu2om(orientation0%asEulers) is
1e-15. This is the ratio of km/atom radius! Still, the number of
iterations is consistently higher.
Results are the same. I believe this is a strange coincidence where one
particular orientation causes problems. The current version recovers almost the 'good' behavior
of math_EulerToR(Eulers)
2020-02-12 20:49:02 +01:00
Martin Diehl
8770613e9c
better readable
2020-02-12 06:26:22 +01:00
Martin Diehl
ab475b7c6b
need 'error return'
...
revert from change in 5b72110d
2020-02-12 06:02:37 +01:00
Martin Diehl
08174a119f
consistent name
2020-02-11 17:50:07 +01:00
Martin Diehl
5b72110d0a
simplified
2020-02-11 17:47:48 +01:00
Martin Diehl
e212f91fac
print statements prevents reading code
...
first re-structure and clean, than re-implement where useful
2020-02-11 17:41:30 +01:00
Martin Diehl
6463fcdabd
consistent names
2020-02-11 17:36:43 +01:00
Martin Diehl
c2c84d698f
Merge remote-tracking branch 'origin/development' into MiscImprovements
2020-02-11 17:11:43 +01:00
Martin Diehl
e932b386b9
Merge branch 'development' into MiscImprovements
2020-02-07 17:11:01 +01:00
Martin Diehl
5d4d1dcf9a
all nonlocal parts are fully explicit
...
i.e. they are based on converged (partioned0) states
2020-02-07 12:41:01 +01:00
Martin Diehl
f854dc27e9
explicit dotState for nonlocal
...
all flux related quantities are calculated based on the converged
quantities
2020-02-07 12:23:22 +01:00
Franz Roters
47109b903b
Merge branch 'plasticity-submodule' into 'development'
...
Plasticity submodule
See merge request damask/DAMASK!120
2020-02-06 10:13:48 +01:00
Martin Diehl
3f96c12e06
avoid code duplication
2020-01-29 11:09:57 +01:00
Martin Diehl
9c7f6811a2
use default string length
2020-01-26 12:17:59 +01:00
Martin Diehl
e532641015
dependency on element not needed for homogeneous meshes
2020-01-25 09:24:42 +01:00
Martin Diehl
cad6fc7843
Merge branch 'development' into plasticity-submodule
2020-01-13 20:57:12 +01:00
Martin Diehl
4ebd89c040
shape is known (no need for automatic allocation)
2020-01-03 13:47:04 +01:00
Martin Diehl
34af10fac1
using default string length
2019-12-21 12:39:54 +01:00
Martin Diehl
f0d3b29b82
Merge branch 'development' into MiscImprovements
2019-12-21 06:53:56 +01:00
Martin Diehl
4b6388fbb2
always use HDF5 output
2019-12-18 20:05:51 +01:00
Martin Diehl
9b67ead62f
removed postResults completely
2019-12-11 00:10:02 +01:00
Martin Diehl
07ebd8d1b3
only damage/thermal 'homogenization' postResults is currently needed
2019-12-09 05:48:37 +01:00
Martin Diehl
acc252ea5b
thermal/damage constitutive (i.e. source) results are not tested
2019-12-09 05:38:15 +01:00
Martin Diehl
ab1f0dc16b
submodules allow inter-module communication
2019-12-04 22:31:15 +01:00
Martin Diehl
c36a5bdfbb
bugfix: calculation of size of postResults was wrong
2019-12-02 23:06:28 +01:00
Martin Diehl
c7d675a1e9
not needed anymore
2019-11-30 16:03:18 +01:00
Martin Diehl
97474e05a8
not needed anymore
2019-11-24 11:01:04 +01:00
Martin Diehl
e20477099e
no crystallite output
2019-11-24 09:46:46 +01:00
Martin Diehl
50b48b8bf7
IP neighbourhood deprecated
...
trivial for grid and, hence, not written out.
Test for marc/abaqus/mesh would make more sense
2019-11-24 07:54:34 +01:00
Martin Diehl
872c85112f
bugfix, Lp not available anymore for crystallite
2019-10-20 14:02:12 +02:00
Martin Diehl
f93336b072
postResults for isotropic not needed anymore
2019-10-20 13:21:51 +02:00
Martin Diehl
11993a3ad1
phasing out crystallite output
...
some outputs are still needed for a few remaining tests.
2019-10-20 12:03:08 +02:00
Martin Diehl
603973e963
correct output for multipe integration points
2019-10-19 19:55:00 +02:00
Martin Diehl
de912c22b4
Merge branch 'development' into HDF5-spectral-displacements
2019-10-18 12:54:12 +02:00
Franz Roters
e85e13b380
[skip ci] only corrections to comments made
2019-10-11 15:21:29 +02:00
Martin Diehl
8fd9341e39
not needed
2019-09-27 14:23:19 -07:00
Martin Diehl
77011a5dba
this fix restores the previous behavior of dislotwin
...
very strange behavior in plasticity_detect changes for dislotwin. This
fix restores the old behavior with respect to number of iterations.
Using orientation%fromMatrix() results in much more iterations and an
increase in runtime for the test from approx 6 min to 40 min. Results
still match in the end. Also, crystallite_Fp0 differs by approx 1e-15
only between the two methods.
I assume that something is wrong with either dislotwin or the
state/stress integration
2019-09-22 07:46:30 -07:00
Martin Diehl
53283d5c01
using newer interface
2019-09-20 18:20:33 -07:00
Martin Diehl
ad83c8541d
same names as in python
2019-09-20 17:18:09 -07:00
Martin Diehl
792dda866d
rotation class has consistent set of conversions
...
crytallite_oriention0 was essentially a copy of material_EulerAngles
2019-09-19 19:42:28 -07:00
Martin Diehl
be0d961954
cleaning
2019-09-19 13:40:03 -07:00
Eureka Pai Kulyadi
cf37f8d405
added some lines to help while debugging
2019-09-06 15:45:49 -04:00
Martin Diehl
5ff4664b6d
polishing
2019-06-30 22:09:51 -07:00
Martin Diehl
0c52262e4a
white space adjustments
2019-06-15 15:44:15 +02:00
Martin Diehl
57a0d33293
consistent names
2019-06-15 14:33:20 +02:00
Martin Diehl
7a76740c31
using new names
2019-06-14 08:51:23 +02:00
Martin Diehl
0f531d5dee
clearer name
2019-06-14 08:42:12 +02:00
Martin Diehl
9dfe71aa06
better readable
2019-06-10 09:42:23 +02:00
Martin Diehl
f22fcc7271
further removal of mesh
2019-06-07 10:20:56 +02:00
Martin Diehl
042ff7e491
microstructure is only a property of the discretization
...
will be used only by material.f90 once crystallite is removed
2019-06-07 07:44:34 +02:00
Martin Diehl
2a35a78d93
phase out mesh_elem and theMesh
2019-06-07 07:38:48 +02:00
Martin Diehl
cfc1dcf04b
mesh_elem and theMesh are deprecated
2019-06-06 22:49:17 +02:00
Martin Diehl
9e8bc7d9b1
better names
2019-06-06 11:08:58 +02:00
Martin Diehl
2f40f7a727
separating
2019-06-06 08:34:01 +02:00
Martin Diehl
9b37c62e15
mesh_element is deprecated (meaningless name)
2019-06-05 10:05:59 +02:00
Martin Diehl
ce9d6a5077
Merge branch 'development' into grid-mesh-cleanup
2019-05-30 23:52:37 +02:00
Martin Diehl
01e3b646c2
don't clutter the code with useless stuff
...
we only need to be more strict about prefixing
functions/subroutines/variables to see in which module they reside
2019-05-16 22:56:48 +02:00
Martin Diehl
028bdcff22
less compiler complaints
2019-05-16 22:24:42 +02:00
Franz Roters
d29967d8b2
Merge remote-tracking branch 'remotes/origin/improve-Lp-guessing' into development
2019-05-15 08:10:46 +02:00
Martin Diehl
3be5c6a5bc
Merge remote-tracking branch 'origin/development' into grid-mesh-cleanup
2019-05-14 11:13:09 +02:00
Martin Diehl
a8b9b5d1c9
homogenizationAt array had wrong shape for MPI (too large)
2019-05-14 08:11:23 +02:00
Martin Diehl
8dea95879c
specific for nonlocal, can be calculated during post processing
2019-05-14 07:22:29 +02:00
Martin Diehl
23cf134d6c
cleaning 2
2019-05-08 22:41:09 +02:00
Martin Diehl
4eef54f4d2
Merge branch 'development' into improve-Lp-guessing
2019-04-30 10:43:47 +02:00
Philip Eisenlohr
d74599d39a
Merge branch 'HDF5-postprocessing' into 'development'
...
Hdf5 postprocessing
See merge request damask/DAMASK!72
2019-04-29 23:24:42 +02:00
Martin Diehl
7c771647ad
adjustments for easier access to output data
2019-04-18 11:55:50 +02:00
Martin Diehl
c4784e6673
better readable
2019-04-13 15:34:51 +02:00
Martin Diehl
89679147e8
leaner group structure, centrally handled
2019-04-13 09:47:56 +02:00
Martin Diehl
52555d8c3c
key words don't contain small letters
...
moved more variables from numerics to crystallite
2019-04-11 11:27:03 +02:00
Martin Diehl
8f7239b75d
repetition not needed
...
- implicit none at the beginning of the module is enough
2019-04-11 07:35:58 +02:00
Martin Diehl
67eb39255a
keep connected data together
...
- avoids dependencies
- easier to read and modify
2019-04-11 07:24:04 +02:00
Martin Diehl
c3925b3497
small polishing
2019-04-07 14:47:21 +02:00
Martin Diehl
0b70f01e04
polishing
2019-04-07 14:28:08 +02:00
Martin Diehl
5075e1c2fb
constituent (ex crystallite) results are stored in HDF5
...
currently, not the best code but new structure for crystallite data will
fix that
output of orientations still missing
2019-04-06 12:08:25 +02:00
Martin Diehl
bfb6ad557f
WIP: crystallite HDF5 results
...
will be stored according to the phase sections
2019-04-06 12:08:25 +02:00
Martin Diehl
453eb538f7
preparing for PGI compiler
2019-04-03 16:24:15 +00:00
Martin Diehl
9759d3d041
forall is deprecated
...
- performance-wise, there should be no difference for the small loops we
have
- still, the on-liner syntax was much nicer
2019-04-03 13:25:01 +02:00
Martin Diehl
e33807aab3
fixed indentation
2019-04-03 12:54:07 +02:00
Martin Diehl
1d31c5c2db
pInt not needed
2019-04-03 12:32:30 +02:00
Martin Diehl
4604e65a42
use matmul instead of hand-written functions
...
- performance is the same
- leaner code
- matmul works (was buggy a few years ago)
2019-04-03 08:22:04 +02:00
Martin Diehl
60f4f9f39c
norm2 for PGI
2019-03-10 10:05:47 +01:00