Commit Graph

4019 Commits

Author SHA1 Message Date
Martin Diehl 3bb5ae3d9e concurrent/parallel execution is possible here 2021-07-25 13:20:39 +02:00
Martin Diehl d2b5a4b339 pointer voodoo for ifort 2021-07-25 10:30:44 +02:00
Martin Diehl 18b3424975 handle twin and slip systems 2021-07-25 10:12:01 +02:00
Martin Diehl c388ab97c9 trying to make sense of HDF5 pointer magic 2021-07-25 09:43:52 +02:00
Martin Diehl d9ef1ef5e4 write variable length string (as other, best compatibility with h5py) 2021-07-25 09:36:56 +02:00
Martin Diehl 26e1e979f5 length is known 2021-07-24 23:08:05 +02:00
Martin Diehl 71e17ba917 WIP: report active slip systems to DADF5
needs further work, currently an array of fixed length strings is
written while all single strings are of variable length type
2021-07-24 22:51:57 +02:00
Martin Diehl b3f5e12232 using burgers vector of tw/tr system seems to make more sense here
otherwise twinning will not work in many cases.
Matching number is only required for nucleation of tw/tr
2021-07-24 18:37:25 +02:00
Sharan Roongta ae49920256 support single and double quotes in key value pairs also
escape characters not supported in double quotes
2021-07-24 17:40:27 +02:00
Martin Diehl 59d09d708e string array support for attributes 2021-07-24 17:18:31 +02:00
Martin Diehl eef7b8f0a9 nothing to select anymore 2021-07-24 15:16:30 +02:00
Martin Diehl d87b10bfe7 symbolic names 2021-07-24 15:03:26 +02:00
Martin Diehl db07ee2113 supported by recent compilers 2021-07-24 14:35:17 +02:00
Martin Diehl f22f30e05d same functionality as for 1D 2021-07-24 14:27:00 +02:00
Martin Diehl d6ce721a25 need to check type of leaf
otherwise, using a [list] where a scalar is expected results in a crash,
not in a meaningful error message
2021-07-24 12:10:59 +02:00
Martin Diehl 931dc99557 not used
climb formulation was updated a while ago
2021-07-24 11:21:07 +02:00
Martin Diehl d4ffc778c2 easier to read
removed comment regarding use of dot_state in kinetics_t(w/r). Data stored
in dotState is not reliable, FPI integrator for writes to it and Runge-Kutta
calls the dot state function at different time steps
2021-07-24 07:11:31 +02:00
Martin Diehl 527fd306e2 change of behavior
- gamma (state) increases monotoneously
- region of spontaneous annihilation is ignored in dipole formation
2021-07-23 22:25:06 +02:00
Martin Diehl 2a78174547 standard names in source code 2021-07-23 22:17:00 +02:00
Martin Diehl c46813657f better to understand 2021-07-23 21:56:34 +02:00
Martin Diehl f96b0371ac proper output name/format 2021-07-23 21:48:40 +02:00
Martin Diehl 6936ecb091 sl is the subscript for slip 2021-07-23 21:36:26 +02:00
Sharan Roongta a5c4e7232c probably not needed
We remove blank spaces while converting to flow YAML.
2021-07-23 18:37:45 +02:00
Sharan Roongta c347688410 Merge remote-tracking branch 'origin/development' into YAML-improvements 2021-07-23 17:55:03 +02:00
Sharan Roongta ca8775e0d4 allow " " in YAML, follow yamllint. 2021-07-23 17:45:10 +02:00
Martin Diehl d216e77ca6 default values for p/q are dangerous 2021-07-23 09:07:39 +02:00
Martin Diehl 2cc8612572 consistent variable names 2021-07-23 07:16:08 +02:00
Martin Diehl f6378790f1 following python
we might want to rename the whole module from 'lattice' to 'crystal'
2021-07-23 06:46:17 +02:00
Martin Diehl f5af352644 whitespace adjustments 2021-07-23 00:09:51 +02:00
Martin Diehl d682b477dd following paper 2021-07-22 23:22:45 +02:00
Martin Diehl 85fd2e3fad not needed 2021-07-22 23:15:20 +02:00
Martin Diehl 3f7043de74 standard name 2021-07-22 23:15:20 +02:00
Martin Diehl 7e27baacfe missing conversion 2021-07-22 21:39:05 +02:00
Sharan Roongta bd9cae11a5 allow multi line scalar list items.
If a scalar list item has ',', the parser would consider it as a separator and not a part of the string
For the moment, this scalar item is enclosed with double quotes ""
In the next step, the flow parser should be able to use this quotes as an indicator for strings
2021-07-22 15:51:33 +02:00
Martin Diehl a03aa97970 default name 2021-07-22 15:41:09 +02:00
Martin Diehl 4fab078d18 multinomial tested+simplified 2021-07-22 15:31:30 +02:00
Martin Diehl d9aa638ad7 shorter 2021-07-22 15:11:38 +02:00
Martin Diehl 5ac592eb9e initialize L_(i/p), L_(i,p)0 2021-07-22 12:31:10 +02:00
Martin Diehl 69cc0b528b do calculation for initialization 2021-07-22 11:38:03 +02:00
Martin Diehl aa03e59306 same statement, different syntax but silences gfortran runtime warning
with automated LHS, compiling in DEBUG mode (tested for mesh solver)
gives:
home/m/DAMASK/src/phase_mechanical.f90:1010:43: runtime error: signed integer overflow:
-9223372036854775808 - 1 cannot be represented in type 'integer(kind=8)'
2021-07-22 11:24:10 +02:00
Martin Diehl 5b66db8a39 only mechanics at the moment
will be extended, but most likely differently
2021-07-22 10:12:43 +02:00
Martin Diehl eb834b635d unify notation with grid
consistent style: Symbols, not descriptions.
also removed untested/unused loginc functionality. Once load cases are
written in YAML, we can introduce the scaling as in DAMASK_grid
2021-07-22 08:48:44 +02:00
Martin Diehl 173a5f8e55 less public/unneeded variables 2021-07-22 07:48:01 +02:00
Martin Diehl 574cfd7034 Merge remote-tracking branch 'origin/development' into more-flexible-L 2021-07-22 00:20:33 +02:00
Martin Diehl de7ef43095 documenting/silencing gfortran 2021-07-21 23:49:24 +02:00
Martin Diehl aace5d25a8 initialization needed 2021-07-21 23:19:41 +02:00
Martin Diehl 58a7921966 no need for temp, pack instead of reshape for 1D array 2021-07-21 22:45:04 +02:00
Martin Diehl b817c620a3 let the computer count 2021-07-21 21:25:33 +02:00
Martin Diehl 23077fd58c testing coordinates
I don't understand why this pattern exists (with w(2) = 3, w(3) = 2),
but it exists
2021-07-21 19:42:53 +02:00
Martin Diehl 5a04a1d661 let the computer do the counting 2021-07-21 19:41:14 +02:00
Martin Diehl c56979e2ad single source of truth 2021-07-21 18:47:19 +02:00
Martin Diehl 000007ba59 better test automatically 2021-07-21 18:06:37 +02:00
Martin Diehl b1ba64e6af understanding floating point precision
double can use 16 or 17 significant figures
- if the leading number is high (above 5 or so), only 16 figures are
significant.
- a trailing 1 is never significant
2021-07-21 18:04:50 +02:00
Martin Diehl 76572e4ca9 standard notation 2021-07-21 16:34:33 +02:00
Martin Diehl e3e9dfdc60 following paper 2021-07-21 16:29:57 +02:00
Martin Diehl 8feeda6f05 phase_mechanical_elastic should store data related to elasticity 2021-07-21 16:23:21 +02:00
Martin Diehl fc5237fa80 using central values 2021-07-21 15:46:38 +02:00
Martin Diehl 8259cb3cdc notation as in paper 2021-07-21 15:03:28 +02:00
Martin Diehl b2e94974ca short names 2021-07-21 14:52:37 +02:00
Abisheik Panneerselvam f25dee4c3a quad points updated and rounded based on literature values 2021-07-21 14:34:18 +02:00
Sharan Roongta df1fe39dc2 Merge remote-tracking branch 'origin/development' into write_ipdisplacements 2021-07-21 13:30:12 +02:00
Martin Diehl 9d349f8a7c symbolic notation 2021-07-21 06:50:28 +02:00
Martin Diehl b5bf1d525e Merge remote-tracking branch 'origin/development' into more-flexible-L 2021-07-21 06:36:05 +02:00
Martin Diehl 6f19113072 L, P, F, etc. are second order tensors 2021-07-21 06:19:04 +02:00
Martin Diehl b98819a36c adjusting names 2021-07-20 18:29:21 +02:00
Abisheik Panneerselvam a919ac0aea Merge branch 'write_ipdisplacements' of git.damask.mpie.de:damask/DAMASK into write_ipdisplacements 2021-07-20 15:35:48 +02:00
Abisheik Panneerselvam 86d918367f Round quadrature points 2021-07-20 15:34:13 +02:00
Martin Diehl 85735605f8 more flexibility for the L in the load case
Note that mixed boundary conditions for L introduce an ambiguity.
Consider:

L = [[1.0, x, x],
     [  0, 0, 0],
     [  0, 0, 0]]
P = [[x, 0, 0],
     [x, x, x],
     [x, x, x]]

What we need is F^(n+1)=F_dot^(n+1) x Delta_t, where F_dot^(n+1) is
F_dot^(n+1)_ij = L_ik F^n_kj.

So component F_11 has contributions from L_12 and L_13. We first assume
L_12=L_13=0 and then choose F^(n+1)_12 and F^(n+1)_13 to get
P_12=P_13=0. This implicitly gives a solution for L_12 and L_13, which
is however only one out of infinitely many.
2021-07-20 07:10:28 +02:00
Martin Diehl 03b7532cc5 numpy.MaskedArray behavior 2021-07-19 23:27:10 +02:00
Martin Diehl 1c1dc9383e symbolic names 2021-07-19 22:30:20 +02:00
Abisheik Panneerselvam 4a2e62fdb2 Merge branch 'development' into 'write_ipdisplacements'
# Conflicts:
#   src/mesh/mesh_mech_FEM.f90
2021-07-19 17:19:40 +00:00
Abisheik Panneerselvam a654cd4fb1 To avoid fortran double variable truncation for quadrature points 2021-07-19 17:07:43 +02:00
Martin Diehl 97203ff551 document and keep definitions together 2021-07-18 23:30:30 +02:00
Martin Diehl 53b7aab29d use ph,en access pattern 2021-07-18 09:48:49 +02:00
Martin Diehl 6ad6158bfb (en)try is the name used in the DADF5 file 2021-07-18 09:44:52 +02:00
Martin Diehl 57ad308a7f readable 2021-07-18 09:22:12 +02:00
Martin Diehl d068f45aa0 avoid superflouos damage calculations 2021-07-17 15:25:00 +02:00
Martin Diehl c109d5a37b better have different physics separated 2021-07-17 14:06:48 +02:00
Martin Diehl f9edeb40a5 descriptive names 2021-07-17 11:50:21 +02:00
Martin Diehl e6d25294d3 separating functionality 2021-07-16 23:32:08 +02:00
Martin Diehl fc735d6391 substate0 only needed for staggered state-stress integration 2021-07-16 23:19:48 +02:00
Martin Diehl 777620b800 polishing 2021-07-16 22:41:38 +02:00
Martin Diehl 594ad2c310 semi-separate handling of damage 2021-07-16 22:22:41 +02:00
Martin Diehl 2b24224c7e more meaningful name 2021-07-16 20:52:41 +02:00
Martin Diehl ed6b1be352 solver handles terminally ill 2021-07-16 20:43:08 +02:00
Martin Diehl 2a84aa7ae4 obvious, no need for comment 2021-07-16 20:32:21 +02:00
Martin Diehl 5f78f1753c split up thermal
only for grid at the moment
2021-07-16 18:03:38 +02:00
Martin Diehl 3f0eafd640 first step towards separating of mechanics, thermal, and damage 2021-07-16 17:53:11 +02:00
Martin Diehl 013c4c0a92 common variable names 2021-07-16 10:31:40 +02:00
Martin Diehl 2f1fa8292b unify style to majority of occurences 2021-07-16 10:30:45 +02:00
Sharan Roongta 3830492791 Merge remote-tracking branch 'origin/development' into write_ipdisplacements 2021-07-15 17:34:44 +02:00
Sharan Roongta 4d6a9a51ed correct logic 2021-07-15 17:32:41 +02:00
Abisheik Panneerselvam 94843becda writing ip displacements (algorithm contain bugs) 2021-07-14 19:33:54 +02:00
Martin Diehl 766db0524f Merge remote-tracking branch 'origin/Marc-start-material-at-0' into marc2021.2 2021-07-14 18:06:57 +02:00
Martin Diehl 05b319fbfb easier to read 2021-07-14 06:33:04 +02:00
Martin Diehl 2ffa6cac70 Merge remote-tracking branch 'origin/development' into Marc-start-material-at-0 2021-07-14 06:15:46 +02:00
Martin Diehl ce3b4d2a2a Merge branch 'development' into YAML-fixes 2021-07-13 20:27:21 +02:00
Sharan Roongta 45abca90c5 stricter
example of invalid YAML-->  mechanical:{type: pass}
2021-07-12 22:17:02 +02:00
Sharan Roongta d2560ebb39 function should return either 'true' or 'false' and not bear the responsibility to throw errors
We were forcing every colon to indicate either key or key: value
2021-07-12 21:42:51 +02:00
Martin Diehl df9a94422f 0-based indexing in MSC.Marc
inline with Python library and grid, still need to decide on mesh (neper
is 1-based)
2021-07-10 09:49:29 +02:00