Sharan Roongta
7fe2a52b65
better logic for finalization
2020-04-23 17:10:33 +02:00
Franz Roters
289808875c
Merge branch 'state-integration-cleaning' into 'development'
...
State integration cleaning
See merge request damask/DAMASK!155
2020-04-23 13:38:37 +02:00
Sharan Roongta
11c4ff7787
finalization error
2020-04-22 16:49:31 +02:00
Sharan Roongta
6a0a8f1d27
Fortran syntax check showed an error
2020-04-22 15:51:05 +02:00
Martin Diehl
d61f302305
no need for separate file
2020-04-22 15:34:47 +02:00
Sharan Roongta
c4bcd3b430
Functions needed to store and read yaml data
2020-04-22 14:59:23 +02:00
Sharan Roongta
b9fec2a4cf
Public functions required
2020-04-22 12:23:09 +02:00
Martin Diehl
e06251e53e
proper doxygen style
2020-04-19 14:20:34 +02:00
Martin Diehl
064f4d9d9d
polishing
2020-04-17 13:18:20 +02:00
Martin Diehl
328dcf0101
polishing
2020-04-17 11:58:03 +02:00
Martin Diehl
cf53e1e8e6
bugfix: wrong logic for RK and source state
2020-04-17 11:55:43 +02:00
Martin Diehl
a51d27858e
polishing
2020-04-17 11:53:55 +02:00
Martin Diehl
65c3831add
polishing
2020-04-17 10:17:00 +02:00
Martin Diehl
7fffa26d7f
bugfix: size depends on shape
2020-04-17 10:04:10 +02:00
Martin Diehl
667d371f2e
avoid code duplication
2020-04-17 08:24:35 +02:00
Martin Diehl
2ad5bfbc3b
preparing modularization
2020-04-17 08:17:32 +02:00
Martin Diehl
84d6521183
Merge branch 'development' into state-integration-cleaning
2020-04-17 07:46:40 +02:00
Martin Diehl
a4c52ec1fa
extra variable not needed
2020-04-15 21:56:20 +02:00
Philip Eisenlohr
2a6132b793
Merge branch 'polish-homogenization' into 'development'
...
Polish homogenization
See merge request damask/DAMASK!158
2020-04-15 16:27:15 +02:00
Martin Diehl
6e48585de1
prefix for local variables not needed
2020-04-15 13:09:05 +02:00
Martin Diehl
ae95a96c88
better readable
2020-04-15 08:53:25 +02:00
Karo Sedighiani
03aa6f9c80
Merge branch 'vectorize_rotation' into development
2020-04-14 19:34:11 +02:00
Martin Diehl
c7e6277758
not needed
...
https://stackoverflow.com/questions/19687233
2020-04-14 15:34:38 +02:00
Martin Diehl
bf970bb146
2 space indentation
2020-04-14 09:49:03 +02:00
Martin Diehl
9d831cf268
not needed as module variable
2020-04-14 09:43:43 +02:00
Martin Diehl
912c064b57
indicate read-only public variables
2020-04-14 09:38:48 +02:00
Martin Diehl
0de4520580
directly calculate subF
2020-04-14 08:24:28 +02:00
Martin Diehl
0894886744
can be calculated when needed
2020-04-14 07:57:25 +02:00
Martin Diehl
d616c1dda8
better use explicit arguments
2020-04-14 07:45:39 +02:00
Martin Diehl
95e41e0b3f
not needed (just linear interpolation)
2020-04-14 07:22:30 +02:00
Martin Diehl
3bfa2d679c
simpler/correct logic for eu2om
2020-04-11 11:36:37 +02:00
Martin Diehl
a6d1e02b32
LAPACK calls the unblocked versions for our small matrices
...
so a work that holds exactly the data seems to be the best choice
2020-04-10 23:54:38 +02:00
Martin Diehl
1d5b1a17cd
same style for plastic and source
2020-04-10 19:36:29 +02:00
Martin Diehl
399a0f1b66
store information about state size only once
2020-04-10 18:53:59 +02:00
Martin Diehl
b375af83a3
bugfix for issue introduced in last merge
2020-04-10 15:52:54 +02:00
Martin Diehl
6082f3c1aa
Merge branch 'development' into state-integration-cleaning
2020-04-10 13:20:38 +02:00
Martin Diehl
a2e70612ff
interface checking for LAPACK
2020-04-10 12:52:27 +02:00
Martin Diehl
ccf62ede52
bugfix for Cubochoric
...
forward and backward mappings are different
2020-04-08 11:41:42 +02:00
Sharan Roongta
bb03483bb7
Merge branch 'MiscImprovements2' into development
2020-04-04 23:50:15 +02:00
Franz Roters
8631653fde
Merge remote-tracking branch 'remotes/origin/memory-efficient-state-storage' into development
2020-04-03 15:57:05 +02:00
Franz Roters
5e9ff7947b
[skip ci] plastic_dotstate always before source_dotstate
2020-04-03 14:01:35 +02:00
Martin Diehl
f174dd6aa7
PETSc 3.13 is out
...
grid solver still works, mesh solver is still broken
2020-04-02 09:50:02 +02:00
Martin Diehl
565cf8239f
can be done in parallel
2020-04-02 09:29:58 +02:00
Martin Diehl
d9806cb7f3
do not clutter with nonlocal checks
2020-04-02 00:23:59 +02:00
Martin Diehl
3a4bb59057
no need to store the same information multiple times
2020-04-01 18:58:48 +02:00
Martin Diehl
d0d963a2cc
set independent of number of slip systems
2020-04-01 17:58:50 +02:00
Martin Diehl
cf5fcf389b
phase is a property of the element
...
and we have no homogenization for nonlocal
2020-04-01 17:57:26 +02:00
Martin Diehl
70dd06c4ec
constitutive should handle state jump alone
2020-04-01 14:42:38 +02:00
Martin Diehl
b5efaa08a4
use already known mappings
2020-04-01 13:10:16 +02:00
Martin Diehl
5af53f0be7
nonlocal is a property of the phase
2020-04-01 11:30:01 +02:00
Martin Diehl
97e89f3f88
nonlocal can run in local mode
2020-04-01 11:09:30 +02:00
Martin Diehl
cde8c65bd1
better store data locally
2020-04-01 11:00:55 +02:00
Martin Diehl
79012c9ffb
not needed
2020-04-01 10:00:12 +02:00
Martin Diehl
b996b6c42e
merge functionality
2020-04-01 09:56:59 +02:00
Martin Diehl
ce61606c0b
not needed
2020-04-01 09:34:49 +02:00
Martin Diehl
079596f7cd
unix standard 0/.false. = OK, 1/.true. = not OK
2020-04-01 09:27:09 +02:00
Martin Diehl
6eee8f34ac
homogeneous mesh
2020-04-01 09:01:03 +02:00
Martin Diehl
d50d55cef3
avoid public variables
2020-04-01 08:54:20 +02:00
Martin Diehl
ec53e4c318
avoid writing to public variable crystallite_todo
2020-04-01 08:39:49 +02:00
Martin Diehl
6b11d43842
handle error checking centrally
2020-04-01 08:02:08 +02:00
Martin Diehl
9e926f1545
centralize test for error
2020-04-01 07:41:55 +02:00
Martin Diehl
570c042100
update of dependent state always in conjunction with state integration
2020-04-01 07:18:37 +02:00
Martin Diehl
54e3455bd4
RKCK45 store intermediate state only per point
2020-04-01 07:10:02 +02:00
Martin Diehl
6bfa51c307
LHS allocation does not work for pointers
2020-04-01 07:02:23 +02:00
Martin Diehl
e46220cd8a
OMP bugfix for FPI integrator, memory-efficient RK4
2020-03-31 22:02:53 +02:00
Martin Diehl
9c95ce36f4
automatic LHS (re)-allocation does not work for pointers
...
group_float has pointers, not allocatables
2020-03-31 20:57:09 +02:00
Martin Diehl
e818dfdb3e
not used anymore
2020-03-31 20:42:51 +02:00
Martin Diehl
20a3ebecea
Merge branch 'state-integration-one-loop' into memory-efficient-state-storage
2020-03-31 20:29:01 +02:00
Martin Diehl
e810b6b23b
not needed here
2020-03-31 12:39:23 +02:00
Martin Diehl
00be291fa0
todo will be reset after state integration
2020-03-31 12:14:54 +02:00
Martin Diehl
2de4b87c61
bugfix for FPI: loop over sources!
...
no memory waste for adaptive Euler
2020-03-31 11:24:13 +02:00
Martin Diehl
5b29af8473
clearer
2020-03-31 10:16:14 +02:00
Martin Diehl
505c1432b1
no need for temp storage
2020-03-31 10:12:25 +02:00
Martin Diehl
2cc0c746d3
no variable needed
2020-03-31 10:07:01 +02:00
Martin Diehl
28dadb4422
no need to check multiple times
2020-03-31 09:49:41 +02:00
Martin Diehl
604bcd1229
memory efficient FPI state integrator
2020-03-31 09:38:08 +02:00
Martin Diehl
18f60a94a9
one variable suffices
2020-03-31 09:04:08 +02:00
Martin Diehl
c0d03a8c26
not needed
2020-03-31 08:37:34 +02:00
Martin Diehl
a7b602f4ca
Merge branch 'development' into state-integration-one-loop
2020-03-31 08:35:07 +02:00
Martin Diehl
9507101969
can be done in one loop
2020-03-31 08:33:35 +02:00
Martin Diehl
5f2759c03c
no need to check for converged
2020-03-31 08:23:38 +02:00
Martin Diehl
2080749189
does not change during the iteration
2020-03-31 08:09:41 +02:00
Franz Roters
369682aa03
Merge branch 'fix-RK4' into 'development'
...
Fix rk4
See merge request damask/DAMASK!150
2020-03-30 20:05:09 +02:00
Martin Diehl
81c8ffe5c1
integrate into the same loop
2020-03-30 14:16:23 +02:00
Martin Diehl
28cf06ca98
extra loop not needed
2020-03-30 14:13:04 +02:00
Martin Diehl
7eeb5db15f
intention clearer
...
slip/twin/trans happens in untwinned/untransformed volume, shear banding
is independent of that
2020-03-29 22:41:47 +02:00
Martin Diehl
11e58bcc2f
not needed
...
why debugging allocate?
2020-03-29 22:37:48 +02:00
Martin Diehl
9c90aa5acb
polishing
2020-03-29 20:07:09 +02:00
Martin Diehl
2a37acfe5e
store data where it is needed
2020-03-29 20:04:51 +02:00
Martin Diehl
ba5538516c
simplified
2020-03-29 20:04:24 +02:00
Martin Diehl
08ad9d1d57
was mixed up
2020-03-29 19:18:06 +02:00
Martin Diehl
b6596a0310
compiler can do the counting
2020-03-29 19:17:24 +02:00
Martin Diehl
7b7ac294ca
volatile seems to make sense here
...
the value can be changed surprisingly
2020-03-29 19:13:29 +02:00
Martin Diehl
cff62219b6
Merge branch 'development' into adaptive-euler-substate0
2020-03-27 14:43:55 +01:00
Martin Diehl
75fff766e1
not needed anymore
2020-03-26 22:02:28 +01:00
Martin Diehl
fdbbb94aac
takeover from RKCK45
2020-03-26 21:46:28 +01:00
Martin Diehl
c490b4bea4
standard names
2020-03-26 20:19:05 +01:00
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
48c9d31720
matching names
2020-03-20 15:08:07 +01:00
Martin Diehl
03bec0221a
systematic names
2020-03-20 15:00:18 +01:00
Martin Diehl
dd30a4ca65
module name = file name
2020-03-20 14:56:04 +01:00
Martin Diehl
b569e9cd6e
clearer name
2020-03-20 14:55:10 +01:00
Martin Diehl
6ad1315b60
consistent name
2020-03-20 13:37:37 +01:00
Martin Diehl
d54b3bd3b7
typo
2020-03-20 13:30:30 +01:00
Martin Diehl
7e7b32add1
useful defaults
2020-03-20 13:25:37 +01:00
Martin Diehl
7aa47d8f5a
module name follows filename
2020-03-20 07:18:11 +01:00
Martin Diehl
91e728d065
polishing
2020-03-19 11:30:36 +01:00
Martin Diehl
e1bd49a12b
constants/parameters in capitals
2020-03-17 08:17:14 +01:00
Martin Diehl
b4ed508745
Store data only where needed
2020-03-17 07:51:14 +01:00
Martin Diehl
6097267cd2
treat as 'normal' internal function
2020-03-17 07:17:40 +01:00
Martin Diehl
71d4de269a
better store data locally
2020-03-17 00:39:32 +01:00
Martin Diehl
8d46a22f5a
better keep data close to its use
2020-03-17 00:10:23 +01:00
Martin Diehl
f718587011
was not used
2020-03-17 00:01:42 +01:00
Martin Diehl
160ef4af7e
simplified
2020-03-16 23:43:59 +01:00
Martin Diehl
fecd1586b0
using notation from paper
2020-03-16 23:31:43 +01:00
Martin Diehl
caa0e502df
only remainder of old mapping exist
...
and they are clearly marked as deprecated
2020-03-16 22:56:33 +01:00
Martin Diehl
becb04c234
simpler ...
2020-03-16 22:50:09 +01:00
Martin Diehl
c0fc7ad9a9
simpler
2020-03-16 22:50:09 +01:00
Martin Diehl
1434aa529f
default name
2020-03-16 22:50:09 +01:00
Martin Diehl
44d12669a4
works if Nslip=[0]
2020-03-16 22:50:09 +01:00
Martin Diehl
c702a9f1d7
numpy name
2020-03-16 22:50:09 +01:00
Martin Diehl
9733f4a140
standard names
2020-03-16 22:50:09 +01:00
Martin Diehl
e4792e56fb
store data where it is needed
...
avoid globals, even if they are read only
2020-03-16 21:39:53 +01:00
Martin Diehl
0bb7fea782
sort into folders ...
...
and avoid names like mesh_mesh
2020-03-16 21:03:54 +01:00
Martin Diehl
71e6c24102
2 space indentation
2020-03-16 20:58:40 +01:00
Martin Diehl
6ce0101a3d
getting rid of global totalNslip
2020-03-16 17:54:31 +01:00
Martin Diehl
c965b14d1d
forall is deprecated
2020-03-16 17:18:50 +01:00
Martin Diehl
0ff54d1c43
transpose not needed twice
...
"static" part of the interaction matrix is symmetric for one slip family
2020-03-16 16:46:16 +01:00
Martin Diehl
ad014d40be
vectorized
2020-03-16 16:41:55 +01:00
Martin Diehl
9d6bd1cb77
vectorized
...
There seems to be a bug in the interaction matrix, there should be no
transpose. However, the transpose recovers the old behavior (up to
machine precision)
2020-03-16 16:02:14 +01:00
Martin Diehl
8d5d31988a
cleaning
2020-03-16 15:36:34 +01:00
Martin Diehl
ecd74ff8b5
internal functions need no prefix
2020-03-16 15:22:44 +01:00
Martin Diehl
47f91d08ca
handle most stupid case
2020-03-16 15:04:51 +01:00
Martin Diehl
b19665f235
works for elasticity only
2020-03-16 14:58:42 +01:00
Martin Diehl
8ae5814815
symbol name as in DAMASK paper
2020-03-16 13:36:24 +01:00
Martin Diehl
5760c680b6
no need to store for the whole simulation
2020-03-16 13:14:44 +01:00
Martin Diehl
f8049b85be
works for no active slip systems
2020-03-16 13:06:39 +01:00
Martin Diehl
5d7ff888fc
should work for elasticity only
2020-03-16 11:14:55 +01:00
Martin Diehl
7b3b4ffb1c
following python style
2020-03-16 11:14:27 +01:00
Martin Diehl
9ed48f7e5f
getting rid of totalNslip in nonlocal
2020-03-16 10:09:58 +01:00
Martin Diehl
044b816005
better to read w/o cycle
2020-03-16 09:42:58 +01:00
Martin Diehl
ab5177e0be
better readable
2020-03-16 09:37:25 +01:00
Martin Diehl
fc15616ef7
simplifying
2020-03-16 09:18:05 +01:00
Martin Diehl
4d62432d34
internal functions at the end
2020-03-16 08:22:36 +01:00
Martin Diehl
ef4b24646d
only store parameters that are needed during the simulation
2020-03-16 08:16:55 +01:00
Martin Diehl
23c6510faa
atol=0.0 is fine
...
crystallite takes max(atol, rtol*X), so atol=0.0 means that convergence
is based on rtol only
2020-03-16 00:52:18 +01:00
Martin Diehl
e3bbd32b1e
polishing
2020-03-16 00:12:18 +01:00
Martin Diehl
0735d2da7c
no need to store # sytems/family
2020-03-16 00:05:51 +01:00
Martin Diehl
c7f3c2cb56
notation from DAMASK paper
2020-03-15 21:58:28 +01:00
Martin Diehl
e53ba801fa
more systematic file structure
2020-03-15 17:04:28 +01:00
Martin Diehl
d37f42da4f
better sort files according to solver
2020-03-15 16:58:30 +01:00
Martin Diehl
5b71f1050f
better make internal function
...
- not used
- no check whether matrix is positive-definite, i.e. danger of NaN
2020-03-15 16:11:28 +01:00
Martin Diehl
8c78347a8b
equivalent, but systematic better visible
2020-03-15 16:05:56 +01:00
Martin Diehl
7677bc876b
more precise documentation
...
symmetric is not enough, could result in taking the square root of negative eigenvalues
2020-03-15 15:58:25 +01:00