Commit Graph

232 Commits

Author SHA1 Message Date
Martin Diehl df5487e1a9 Re-written YAML types
Strict typing for YAML

New access pattern requires to specify the expected type, i.e. 'scalar', 'list', or 'dict'. This ensures that the node offers the expected functionality instead of polluting 'tNode' with dummy functions which throw error messages if not overwritten.

The restructuring of the code allows to hierarchically construct methods without much code duplication.

Some aspects of the error messaging system have been improved.
2022-10-25 16:09:36 +00:00
Martin Diehl 0ca4d42678 PETSc 3.18.0 compatibility
CHKERR macros are now longer, should be replaced with PetscCall in the
future
2022-10-02 12:48:54 +02:00
Martin Diehl 64fad03b97 explicit casting 2022-06-27 23:39:54 +02:00
Martin Diehl 60e097a04e something is wrong with interfaces for 64 bit 2022-06-27 22:35:29 +02:00
Martin Diehl 61dc14e0b9 Merge remote-tracking branch 'origin/development' into implicit-none-external 2022-06-27 15:13:20 +02:00
Martin Diehl 3b57934d6e Marc precision handling 2022-06-27 08:37:41 +00:00
Martin Diehl 2f1904efec only MPI_f08 is standard conforming 2022-06-21 23:11:22 +02:00
Martin Diehl b8c3d75700 [skip sc] enforce interfaces (quick fix: declare as external) 2022-06-21 22:59:01 +02:00
Franz Roters 6236ad52d1 consistent naming 2022-05-03 13:00:28 +02:00
Martin Diehl bb83d20fe9 Merge branch 'development' into structure-improvements 2022-04-27 05:55:19 +02:00
Philip Eisenlohr dece12a1a6 remove unused CLI module inclusion 2022-04-26 12:19:13 -04:00
Martin Diehl d41d03015a better matching name 2022-04-24 17:38:59 +02:00
Martin Diehl 91b71fdff8 systematic naming scheme 2022-04-24 04:45:41 +02:00
Martin Diehl 34cc66f1bf use old interface for previous PETSc versions 2022-04-04 08:14:48 +02:00
Martin Diehl cfe01b83f8 avoid deadlock for MPI runs 2022-02-17 21:37:37 +00:00
Martin Diehl b43695067d Merge remote-tracking branch 'origin/development' into nonlocal-standard-access 2022-02-11 12:53:58 +01:00
Martin Diehl 345659b0e8 update sta file after each inc 2022-02-07 15:09:26 +01:00
Martin Diehl 6d78400f87 the concept of IP/element_ID should not be used at the DAMASK core 2022-02-05 07:29:00 +01:00
Martin Diehl 82dabe29c1 mesh: separate kind for DAMASK and PETSc integers 2022-01-13 16:30:42 +01:00
Martin Diehl 29530da579 use correct kind of constants for calls to MPI/PETSc 2022-01-13 13:50:30 +01:00
Martin Diehl a7417a7ad7 default integer, PETSc integer, and MPI integer might be different 2022-01-13 12:02:33 +01:00
Martin Diehl 3fb5bd459c pInt leftovers 2022-01-13 07:44:15 +01:00
Philip Eisenlohr 43ae4983ed fixed misaligned/too short "writing..." statements 2021-11-15 12:58:59 -05:00
Philip Eisenlohr 69843d0833 Merge branch 'development' into pretty-print-init 2021-11-15 12:39:14 -05:00
Philip Eisenlohr da9fdf53d2 consistent indentation and line-spacings in reporting 2021-11-15 12:35:44 -05:00
Martin Diehl 8138d3a180 style adjustments 2021-11-11 23:59:48 +01:00
Martin Diehl ba31ff7263 do not rely on ML per default 2021-11-11 23:23:14 +01:00
Martin Diehl b4ff89f304 improved test 2021-10-27 22:54:26 +02:00
Martin Diehl a00c6743c3 symbolic notation in numerics.yaml
- p_i: integration order
- p_s: shape function order

ensure working combination (p_s = p_i: full integration, p_s = p_i+1:
reduced integration)
2021-10-26 11:51:08 +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 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 de7ef43095 documenting/silencing gfortran 2021-07-21 23:49:24 +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
Abisheik Panneerselvam f25dee4c3a quad points updated and rounded based on literature values 2021-07-21 14:34:18 +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
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 f9edeb40a5 descriptive names 2021-07-17 11:50:21 +02:00
Martin Diehl ed6b1be352 solver handles terminally ill 2021-07-16 20:43:08 +02:00
Martin Diehl 3f0eafd640 first step towards separating of mechanics, thermal, and damage 2021-07-16 17:53:11 +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 136a4b1377 PETSc defines are rather complicated
now mpi_f08 can be used on newer PETSc installations if old MPI modules
are not exposed
2021-07-09 18:48:25 +02:00
Martin Diehl 637f78bd52 old name (for PETSc < 3.15) 2021-07-09 14:50:29 +02:00
Martin Diehl 139f2c177a use MPI_f08 if possible
most PETSc installations provide outdated MPI (f90 version)

MPI_COMM_WORLD is now of derived type (Fortran 08 style)
PETSC_COMM_WORLD is the plain integer (f90 style) alias.
Note that HDF5 is assumed to have f90 interfaces
2021-07-08 16:27:37 +02:00
Martin Diehl a0ffbc5f17 little polishing
- same names as for grid
- 'local' naming misleading here (probably for x_local etc also not a
  good choice)
- following names in PETSc notation (https://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/DMPLEX/DMPlexGetPointLocal.html)
- using allocation with bounds to simplify access
- NOTE: The nodal coordinates are not what damask.Result expects except
  for simple, 1 IP elements!
2021-07-02 23:49:06 +02:00
Abisheik Panneerselvam b322ed3e03 feauture to write nodal displacements to hdf5 file added 2021-06-25 20:46:21 +02:00
Abisheik Panneerselvam 36bf68b336 Out of plane coordinates for 2D elements are updated with dummy values 2021-06-17 20:26:37 +02:00
Abisheik Panneerselvam b9d4217d86 permutationStar111 for 4th order integration is updataed 2021-06-16 14:58:26 +02:00
Martin Diehl e10701b32a easier to understand 2021-06-14 15:21:10 +02:00
Sharan Roongta 5f01b076d2 This change makes the test work for GNU too
Probably something was uninitialized and GNU was accessing unallocated memory
2021-06-14 14:58:14 +02:00
Sharan Roongta c64f9eb805 hardcoding '3' is an issue for 2d simulations 2021-06-11 20:42:31 +02:00
Sharan Roongta 6cd0d79c61 old merge not reflected 2021-06-02 14:08:12 +02:00
Martin Diehl 91015fd07c write out undeformed configuration 2021-05-31 19:41:22 +02:00
Abisheik Panneerselvam 650fbd7509 Initial nodal and ip coordinates added to the HDF5 output file 2021-05-31 15:01:42 +02:00
Abisheik Panneerselvam 718880f177 Initial nodal and ip coordinates added to the HDF5 output file 2021-05-31 14:09:11 +02:00
Martin Diehl 2bfed863ba line was to long
macro was changed in PETSc 3.15
2021-04-05 09:04:44 +02:00
Martin Diehl 84e383964b polishing/fixing tests 2021-03-27 23:58:49 +01:00
Martin Diehl 6a2c107723 consistent names for debugging 2021-03-26 12:34:16 +01:00
Martin Diehl e855083964 systematic names 2021-02-11 14:19:04 +01:00
Martin Diehl 5891786680 Merge remote-tracking branch 'origin/development' into new-gmsh-version 2021-01-13 22:52:50 +01:00
Sharan Roongta 52aaf2fa5e not needed 2021-01-07 17:04:30 +01:00
Sharan Roongta 793e5d0d2b Merge branch 'development' into new-gmsh-version 2021-01-07 16:38:16 +01:00
Martin Diehl 437d91495b No FEsolving 2021-01-06 14:24:02 +01:00
Martin Diehl 3884549e19 store field variables as 1D array
first step of simplifying layout:
1) Solver translates from ip,el tuple (FEM) or cells(1),cells(2),cells(3) triple to list.
2) DAMASK iterates over all points
3) homogenization knows mapping (point,constituent) -> (instance,member)
2020-12-16 21:56:02 +01:00
Martin Diehl afbcb82502 Merge remote-tracking branch 'origin/development' into misc-improvements 2020-12-15 10:32:59 +01:00
Martin Diehl 2dd520b4a2 P_aim should be independent from P_av
P_av is not defined after restart or cutback. Restart with change of
load case is probably still an issue
2020-12-15 08:06:50 +01:00
Martin Diehl 8fbadef524 print instead of write 2020-12-14 22:37:14 +01:00
Martin Diehl 189597dbff drop support for old PETSc versions 2020-12-13 08:55:07 +01:00
Sharan Roongta 21faee4eaa '0' based indexing 2020-12-07 13:03:18 +01:00
Sharan Roongta f563313ce9 PETSc provides subroutine to read physical tags 2020-12-06 00:10:04 +01:00
Sharan Roongta 665dd3020d new gmsh version 2020-12-04 03:30:39 +01:00
Martin Diehl 80c8c9e51e fixing use for new Intel Fortran
visibility of use associated entities can now be limited
2020-11-28 07:23:55 +01:00
Martin Diehl c9356fd447 error checking, making readable with damask.Result 2020-11-15 15:39:54 +01:00
Martin Diehl 9119254210 materialpoint => homogenization
especially as prefix for global data (clear name spaces)
2020-10-24 17:26:42 +02:00
Martin Diehl 1681889e0b PETSc 3.14 is out 2020-10-06 07:12:04 +02:00
Martin Diehl cdf3c8cdee Merge remote-tracking branch 'origin/development' into no-crystallite-dPdF 2020-10-03 08:34:02 +02:00
Sharan Roongta 776901cb81 microstructure --> material 2020-10-01 12:43:05 +02:00
Martin Diehl 7f8613f6ad always update dPdF (was the default anyways) 2020-09-30 10:24:24 +02:00
Martin Diehl 41fbc58c1b standard conforming name 2020-09-22 13:09:12 +02:00
Martin Diehl 53ce4e07d2 forgotten renames in subfolders 2020-09-22 13:02:33 +02:00
Martin Diehl cc92b0ad84 print is more appropriate than write 2020-09-19 08:29:50 +02:00
Martin Diehl 74b35f5612 short numpy name 2020-09-13 11:18:57 +02:00
Martin Diehl e5c2382f73 missing renames ... 2020-09-13 11:17:49 +02:00
Martin Diehl 38a4118dc5 prefix to global variables increases readability 2020-09-13 11:05:42 +02:00
Martin Diehl da0e16520c handling of MPI in 'parallelization' 2020-09-13 10:26:33 +02:00
Martin Diehl 23bf51cca0 homogenizationAt from discretization not needed anymore 2020-08-29 16:45:18 +02:00