Commit Graph

442 Commits

Author SHA1 Message Date
Martin Diehl 06e76c1a81 consistent default absolute tolerances
better use conservative values, users can easily relax if needed
2021-06-25 10:13:03 +02:00
Martin Diehl ae9a48c124 polishing 2021-06-24 15:23:24 +02:00
Martin Diehl 1bfbd30ae2 polishing 2021-06-15 19:53:05 +02:00
Martin Diehl 218e6a79a8 VTK image data is the appropriate type, not VTK rectilinear grid
FFTs require constant spacing in all three directions, this is
guaranteed by the vtkImageData but not by vtkRectilinearGrid
2021-06-15 19:02:26 +02:00
Martin Diehl 3705f1d3a2 F,P, ... in loadcase are 2nd order tensors 2021-06-03 08:21:16 +02:00
Martin Diehl 5d0fc4fca3 more meaningful order
and intent(out) variables for read are at the front
2021-06-01 16:46:24 +02:00
Sharan Roongta d1a6607782 Merge branch 'load2Dtensor' into 'development'
support for 2D tensor in load case

See merge request damask/DAMASK!391
2021-05-29 13:21:47 +00:00
Martin Diehl adb1e51e24 support for 2D tensor in load case
currently optional, but should become mandatory after a transition
period
2021-05-26 08:04:14 +02:00
Martin Diehl d2855913b5 new mappings 2021-05-22 11:48:42 +02:00
Martin Diehl c8cdd7e622 better numerical parameters for thermal solver/PETSc
works for realistic values for thermal problems
parameters copied from spectral_damage
2021-05-05 18:14:53 +02:00
Martin Diehl 887524bcc1 polishing 2021-04-11 16:09:29 +02:00
Martin Diehl b67e837548 needs broadcast, otherwise rank>0 fail 2021-04-11 09:58:40 +02:00
Martin Diehl 547f2ffa69 cleaning 2021-04-11 09:46:11 +02:00
Martin Diehl 5f608ed572 only 2 and 3 dimension can be 1 2021-04-09 08:25:30 +02:00
Martin Diehl 1b89032086 names as in DAMASK paper 2021-04-08 23:45:26 +02:00
Martin Diehl c4765d3742 following paper 2021-04-08 13:31:21 +02:00
Martin Diehl d59051f576 systematic names 2021-04-07 22:42:10 +02:00
Martin Diehl 0fc7f66ef8 consistent names 2021-04-07 21:25:11 +02:00
Martin Diehl c53927ad6f not needed 2021-04-07 08:47:46 +02:00
Martin Diehl 1fbf14c148 encapsulation and namespace-like names 2021-04-07 07:53:24 +02:00
Martin Diehl 2e96fcf768 Merge branch 'development' into spring-cleaning 2021-03-29 07:26:17 +02:00
Martin Diehl 710f5b74b2 Merge remote-tracking branch 'origin/development' into 2d-table-yaml 2021-03-29 00:00:39 +02:00
Martin Diehl 0072ebfa64 polishing 2021-03-27 23:17:04 +01:00
Martin Diehl 7072ab0984 non-converging simulation is an error 2021-03-27 17:07:36 +01:00
Martin Diehl 6a2c107723 consistent names for debugging 2021-03-26 12:34:16 +01:00
Martin Diehl 4cc0dedf9f Merge branch 'avoid_data_copy_restart_MPI' into spring-cleaning 2021-03-26 08:58:44 +01:00
Martin Diehl 7320120c5d Merge branch 'development' into avoid_data_copy_restart_MPI 2021-03-26 08:58:03 +01:00
Martin Diehl a72e2db678 Merge branch 'development' into output-rename 2021-03-25 21:03:20 +01:00
Martin Diehl 3b392281e4 consistent naming in HDF5 output 2021-03-25 19:22:59 +01:00
Sharan Roongta fc172921fb unified citation style continued 2021-03-19 10:41:47 +01:00
Martin Diehl 07d79ef4ba unifying style 2021-03-17 11:25:21 +01:00
Vitesh Shah 4912342b1b added missing arguments 2021-03-15 11:46:30 +01:00
Vitesh Shah a59af55f1a read data by one process and broadcast it 2021-03-15 10:58:59 +01:00
Sharan Roongta ce91537b0f get_asXXs --> get_as1dXX 2021-03-11 18:40:16 +01:00
Vitesh Shah adcb24d2e1 write data of average quantities non parallel 2021-03-10 16:33:02 +01:00
Philip Eisenlohr e4271537c5 syntax polishing; use of YAML defaults to avoid if%contains 2021-03-04 15:14:16 -05:00
Martin Diehl 2f68c43755 new style configuration for damage 2021-03-01 06:16:16 +01:00
Martin Diehl 8af0c8dbc3 using initial temperature from load case file 2021-02-28 21:51:07 +01:00
Martin Diehl 0cde43198f modernizing:
- 'pass' for dummy thermal homogenization
- setting temperature in load case
2021-02-28 20:49:51 +01:00
Martin Diehl ef543a5b49 thermal solver is defined in load case
not in numerics.yaml
2021-02-28 20:09:08 +01:00
Martin Diehl b2fea6b149 solver not specific to load case number 2021-02-28 19:24:44 +01:00
Martin Diehl 4dd99d4c39 solver is selected in load case, not numerics.yaml 2021-02-28 19:13:20 +01:00
Sharan Roongta 9679c5403e continue with cell based map (solver + homog) 2021-02-23 15:44:58 +01:00
Sharan Roongta 5348305ac8 restart key part of loadstep and not time discretization 2021-02-22 14:42:54 +01:00
Sharan Roongta 4d5e5cfb70 Merge branch 'fix-IntelMPI' into 'development'
Bugfix for access of unallocated variable

See merge request damask/DAMASK!342
2021-02-22 12:40:37 +00:00
Vitesh d54e49e3bc restore functionality to write non-parallel
not needed at the moment, but in general useful. If PETSc = parallel
should always hold, we can simplify much more
2021-02-22 13:37:21 +01:00
Martin Diehl 6c7201610e Bugfix for access of unallocated variable
IntelMPI seems to access sendbuf for root!=0 in MPI_Scatterv
2021-02-17 17:56:39 +01:00
Martin Diehl 4eb2a981ca keeping variables local 2021-02-12 15:31:43 +01:00
Martin Diehl e855083964 systematic names 2021-02-11 14:19:04 +01:00
Franz Roters 8048d69a97 [skip ci] logic inverted 2021-02-05 16:59:28 +01:00
Sharan Roongta ba2e8b3c63 variable name follows label 2021-02-05 11:57:18 +01:00
Sharan Roongta a1a7a339d4 specify solver,initial and boundary conditions in load file 2021-02-05 11:20:28 +01:00
Sharan Roongta 2e173b4b7b 'estimate_rate' better describes what we want to do than 'drop_guessing'
true by default
2021-02-04 19:17:32 +01:00
Martin Diehl b58465415b store damage parameter like temperature 2021-01-24 18:20:47 +01:00
Martin Diehl 26c7969837 not needed anymore 2021-01-24 17:12:34 +01:00
Martin Diehl c2ae2c919b use new structure 2021-01-24 15:19:57 +01:00
Martin Diehl e22d76be9e using new structure for thermal 2021-01-24 13:26:01 +01:00
Martin Diehl 4f059910ab fix broken statistics reporting in case of multi-physics 2021-01-24 10:39:32 +01:00
Franz Roters 6fe8077b81 Merge remote-tracking branch 'origin/separate-damage' into development 2021-01-22 14:25:32 +01:00
Franz Roters da93031cbc Merge branch 'signal_input_handling_1' into 'development'
Enabling signal input handling in DAMASK

See merge request damask/DAMASK!325
2021-01-22 14:07:09 +01:00
Martin Diehl 32bb0d8c6e new variables for damage 2021-01-20 21:37:43 +01:00
Martin Diehl a2b5178b45 polishing 2021-01-17 21:56:19 +01:00
Martin Diehl 8af53472ee Merge remote-tracking branch 'origin/development' into signal_input_handling_1 2021-01-17 16:52:48 +01:00
Martin Diehl d2ae859b1c use new structure 2021-01-17 15:26:01 +01:00
Martin Diehl 6b452a73bb not needed 2021-01-17 12:45:28 +01:00
Martin Diehl 9b698e78c1 standard name 2021-01-17 12:35:47 +01:00
Martin Diehl b5bfb1dba9 tangent is not included anymore 2021-01-11 16:34:43 +01:00
Martin Diehl 350466dd5f not needed 2021-01-08 09:01:38 +01:00
Martin Diehl e8ea815d92 simplified 2020-12-27 11:48:02 +01:00
Martin Diehl 0a3d43e0fc only one process gets the signal: use OR, not AND 2020-12-17 15:17:20 +01:00
Martin Diehl d83e8dac59 need to share variable before if 2020-12-17 13:20:18 +01:00
Vitesh Shah da1b006315 MPI communication for SIGUSRXXX 2020-12-17 12:47:33 +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 f8756ad95a simplifying
no extral handling for homogeneous temperature (the memory that was
saved was consumed by the extra mapping)
2020-12-15 19:05:01 +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
Vitesh Shah 768d139768 reset the signal terms to false after task is done 2020-12-14 09:34:35 +01:00
Vitesh Shah 40bd5db361 signals enabling writing results,restart and termination 2020-12-14 09:17:15 +01:00
Martin Diehl a881e6e57a Merge remote-tracking branch 'origin/development' into misc-improvements 2020-12-10 23:41:59 +01:00
Martin Diehl 97ee7e6ee5 not needed anymore 2020-12-07 17:26:50 +01:00
Martin Diehl 78a246b44a avoid constant reallocation, it is slow for large vtr files 2020-12-05 12:46:48 +01:00
Martin Diehl 42eb802126 not needed anymore 2020-12-05 11:29:23 +01:00
Martin Diehl ac0a20696c rename: grid -> cells 2020-12-03 22:16:34 +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 5bed0787ed replace log scaling with geometric regression scaling
more flexibility in time discretization via parameter 'r'.
Also, changed variable names to reflect names in loadcase.yaml
2020-11-25 18:56:03 +01:00
Sharan Roongta 2157bf50cd mech --> mechanics 2020-11-17 22:21:35 +01:00
Franz Roters 523a0979eb Merge branch 'mpi-single-process-read' into 'development'
MPI single process read of grid

See merge request damask/DAMASK!277
2020-11-17 17:00:09 +01:00
Sharan Roongta c16ad845bc Merge branch 'modernize-testing' into 'development'
Modernize testing

See merge request damask/DAMASK!280
2020-11-16 20:10:38 +01:00
Martin Diehl cf3a28952a fixed tests 2020-11-16 16:38:17 +01:00
Martin Diehl 0bd8a410ad check all errors, avoid intermediate wait 2020-11-16 09:22:55 +01:00
Martin Diehl e419eea507 read vtr file only by process 1 2020-11-12 14:40:25 +01:00
Martin Diehl bb471cb923 it's a process, not a thread 2020-11-12 07:51:07 +01:00
Martin Diehl cd7ada0da9 use Fortran internals for error handling 2020-11-11 20:09:14 +01:00
Martin Diehl 3dd5eaf1c1 clean exit with stack trace 2020-11-11 14:06:21 +01:00
Martin Diehl 5531f892c3 z = 0 for invalid number of processes
e.g. using 24 processes for a 128x128x128 grid would need 21 processes
with z=6 and 1 process with z=2
2020-11-11 12:47:13 +01:00
Martin Diehl 429c226008 IO is not inherited when using ifort 19
this is intented, public modules should only bring their own functions
and variables into global scope
2020-11-11 12:19:39 +01:00
Martin Diehl b46a25a7d2 C capitalization 2020-11-11 11:47:23 +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 a1ab526456 avoid global variables 2020-10-24 16:01:56 +02:00
Martin Diehl 1c13737935 better readable 2020-10-21 21:12:55 +02:00
Martin Diehl 96243a4ac8 simplifying 2020-10-21 17:46:29 +02:00
Sharan Roongta f25f7ad01e [skip sc] consistent naming convention 2020-10-16 16:17:06 +02:00
Sharan Roongta 3f3a88fdda capitalization 2020-10-15 23:32:38 +02:00
Sharan Roongta 6c79093a75 [skip sc] Fdot --> dotF 2020-10-15 23:22:37 +02:00
Sharan Roongta 6455627af9 accessed by correct dict now; tests improved 2020-10-15 18:09:45 +02:00
Sharan Roongta 1c911f6213 simplified 2020-10-14 17:55:57 +02:00
Sharan Roongta 35fe935088 not used 2020-10-14 13:53:31 +02:00
Sharan Roongta e9ecda7d2e Merge branch 'development' into loadcase.yaml 2020-10-14 13:28:06 +02:00
Sharan Roongta f291166a03 initialisation not needed 2020-10-14 10:53:37 +02:00
Sharan Roongta 1426a35602 loadcase in yaml 2020-10-14 10:31:34 +02:00
Martin Diehl 2db5c9bade geom -> vtr (zero-based) 2020-10-09 22:19:53 +02:00
Martin Diehl cdf3c8cdee Merge remote-tracking branch 'origin/development' into no-crystallite-dPdF 2020-10-03 08:34:02 +02:00
Martin Diehl 7f8613f6ad always update dPdF (was the default anyways) 2020-09-30 10:24:24 +02:00
Martin Diehl 002fe04d35 test for stress ramp 2020-09-26 12:09:45 +02:00
Martin Diehl 32b81770d9 shorter 2020-09-25 21:35:47 +02:00
Martin Diehl 8396af5aec not needed 2020-09-25 15:19:31 +02:00
Martin Diehl 421d4b8f37 forgotten renames 2020-09-25 15:12:56 +02:00
Martin Diehl 8081ed3693 Merge remote-tracking branch 'origin/development' into stress-ramp-loadcase 2020-09-25 15:05:45 +02:00
Philip Eisenlohr 792e5045b8 fixed grid size assignments for MPI layers 2020-09-24 19:05:10 +02:00
Martin Diehl 79d672f4a7 cleaning 2020-09-24 17:04:06 +02:00
Martin Diehl f8816a6e0c Merge remote-tracking branch 'origin/development' into stress-ramp-loadcase 2020-09-24 16:57:07 +02:00
Martin Diehl 0f64954300 whitespace adjustment 2020-09-24 09:36:19 +02:00
Martin Diehl b995f34834 Merge branch 'development' into geom-fully-out-of-place 2020-09-23 22:50:20 +02:00
Martin Diehl fa413efcbb microstructure -> material 2020-09-23 21:25:14 +02:00
Martin Diehl cfeec53178 dataset is called 'material', not 'materialpoint'
avoid infinite loop in case it is not found
2020-09-23 21:10:39 +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 329cc1c953 tighter tolerance for stress 2020-09-20 17:36:11 +02:00
Martin Diehl 0a7d4f61ac Need only logical mask
'merge' substitutes multiplication with float mask
2020-09-20 16:54:58 +02:00
Martin Diehl 6367cb8fcb consistent handling of boundary conditions
A stress boundary condition 'P' indicates the stress at the end of the
load case (same as for 'F') 'Pdot' for given increase of (technical)
strain is not implemented.
Does not change anything for the most common case of zero-stress
boundary conditions, but simplifies the specification of stress ramps
2020-09-20 15:48:41 +02:00
Martin Diehl d584207e0a same layout for easy diff 2020-09-20 13:01:56 +02:00
Martin Diehl 8dfb972ac1 private is already default (module wide) 2020-09-20 11:49:20 +02:00
Martin Diehl 593a40b392 Merge branch 'Fortran-simplifications' into stress-ramp-loadcase 2020-09-20 11:42:04 +02:00
Martin Diehl 053c3f39ea solution completely relies on state defined by 'forward' 2020-09-19 23:40:17 +02:00
Martin Diehl d0b5905544 remaining write(6,...) without advance='no' 2020-09-19 11:02:40 +02:00
Martin Diehl c6c34ccf7e Merge remote-tracking branch 'origin/development' into stress-ramp-loadcase 2020-09-19 08:46:38 +02:00
Martin Diehl cc92b0ad84 print is more appropriate than write 2020-09-19 08:29:50 +02:00
Martin Diehl 1ff098d004 Merge remote-tracking branch 'origin/development' into Fortran-simplifications 2020-09-15 19:36:59 +02:00
Martin Diehl a2e9420336 boundary conditions to not change during iteration 2020-09-14 14:58:44 +02:00
Martin Diehl 89f25eb7d7 use reasonable tolerances for checking regular grid spacing 2020-09-14 14:06:09 +02:00
Martin Diehl 3ebba9b3c0 more sensible locations for reporting 2020-09-13 21:21:55 +02:00
Martin Diehl 5558d95886 print is better suited for output to screen then write 2020-09-13 21:15:08 +02:00
Martin Diehl 84b9104302 clearly indicate origin of functions
also supresses (flawed) error message of gfortran related to
non-standard type 'bytes'
2020-09-13 20:14:34 +02:00
Martin Diehl f266def906 Merge branch 'vtr-as-input' into Fortran-simplifications 2020-09-13 19:34:48 +02:00
Philip Eisenlohr 507910ffcd improved language/descriptions 2020-09-13 18:32:49 +02:00
Martin Diehl c14241a8e9 no need to store variables that are used only during init 2020-09-13 12:31:01 +02:00
Martin Diehl 316c5f7d20 internal errors (do not depend on user input) 2020-09-13 12:20:44 +02:00
Martin Diehl 3c5b89ac78 not needed anymore 2020-09-13 11:28:48 +02:00
Martin Diehl 74b35f5612 short numpy name 2020-09-13 11:18:57 +02:00
Martin Diehl 38a4118dc5 prefix to global variables increases readability 2020-09-13 11:05:42 +02:00
Martin Diehl b499578a95 prefix should be name of the module
poor substitute for namespace
2020-09-13 10:39:17 +02:00
Martin Diehl da0e16520c handling of MPI in 'parallelization' 2020-09-13 10:26:33 +02:00
Martin Diehl e2ded43636 polishing
- unified style (CamelCase)
- more sanity checks
- simplified determination of grid
2020-09-13 06:58:34 +02:00
Martin Diehl 81063046c4 improved error handling, potentially faster algorithm 2020-09-12 22:55:30 +02:00
Martin Diehl 307b1b20cc forgotten rename for ifort workaround 2020-09-12 15:26:16 +02:00
Martin Diehl 566ab7e7d9 reading in VTR files
will replace geom file in the near future
2020-09-12 14:43:04 +02:00
Martin Diehl 23bf51cca0 homogenizationAt from discretization not needed anymore 2020-08-29 16:45:18 +02:00
Sharan Roongta 7754a1ea56 Restructuring for material.yaml 2020-08-15 16:08:46 +02:00
Martin Diehl 68bf21c900 can use string of dynamic length 2020-08-09 06:40:43 +02:00
Martin Diehl 2db8ba13fc better reporting: show small values 2020-08-08 20:01:32 +02:00
Martin Diehl 8de3b67c26 no silent crash 2020-07-13 21:13:53 +02:00
Sharan Roongta 48b42debe0 redundant 2020-07-03 20:55:05 +02:00
Martin Diehl 432609ec14 cleaning 2020-07-03 16:45:11 +02:00
Sharan Roongta 2056b4223a better name 2020-07-01 23:01:37 +02:00
Sharan Roongta 02ee64bce4 make use of submodule property 2020-07-01 22:51:21 +02:00
Sharan Roongta dda2f2cf22 defined locally 2020-07-01 22:39:44 +02:00
Sharan Roongta 57e4d01a6b Merge branch 'development' into YAML-compatible-debug 2020-07-01 13:40:56 +02:00
Sharan Roongta 0b2d62e98d polishing 2020-06-29 17:05:11 +02:00
Martin Diehl 640bc7b190 [skip ci] polishing 2020-06-29 15:09:13 +02:00
Sharan Roongta 14a4dc5184 Merge branch 'YAML-compatible-numerics' into YAML-compatible-debug 2020-06-27 21:48:59 +02:00
Sharan Roongta 77e7e3d3c4 polishing 2020-06-26 20:12:05 +02:00
Sharan Roongta 78b6b3ecdb Merge branch 'development' into YAML-compatible-numerics 2020-06-25 11:02:54 +02:00
Sharan Roongta e155bef9a5 better names; polishing 2020-06-24 17:38:39 +02:00
Sharan Roongta 445d8b4f74 sanity checks 2020-06-24 17:09:15 +02:00
Sharan Roongta be84561e2e num structure replicated; polishing 2020-06-24 16:48:51 +02:00
Sharan Roongta 434bfffc46 hard coding of tolerance variables in solvers not correct 2020-06-24 16:39:09 +02:00
Sharan Roongta 6062cc43c4 extending num structure to other modules; hard coding of tol variables was incorrect 2020-06-24 16:37:30 +02:00
Sharan Roongta 692fc98fd5 'num' structure for data to avoid multiple reading of parameters 2020-06-24 16:35:47 +02:00
Martin Diehl e2a0e98267 small polishing 2020-06-23 11:06:41 +02:00
Sharan Roongta 7c4afe06c9 less generic variables 2020-06-19 03:56:16 +02:00
Sharan Roongta 0cf06a77d4 bugfix 2020-06-18 18:14:53 +02:00
Sharan Roongta 4942304ee8 extended for grid 2020-06-18 17:43:25 +02:00
Sharan Roongta cdb4a11a2e proper error message; Comments starting point is standardized 2020-06-18 00:17:43 +02:00
Sharan Roongta 0fc482585b used for both grid & mesh; polishing 2020-06-17 23:00:03 +02:00
Sharan Roongta ac2539b305 further cleaning of numerics.f90 2020-06-17 20:46:03 +02:00
Sharan Roongta d3f9e9f115 polishing 2020-06-17 18:02:22 +02:00
Sharan Roongta d4d29ff376 cleaning: comments added 2020-06-17 17:19:21 +02:00
Sharan Roongta f6355d199a better as local variables 2020-06-17 16:47:13 +02:00
Sharan Roongta e455dd4b9a sanity checks 2020-06-17 15:21:51 +02:00
Sharan Roongta 7f0c2d3825 further removal of public variables 2020-06-16 20:49:58 +02:00
Sharan Roongta 19c44d5e97 Read numerics.yaml once 2020-06-16 18:47:19 +02:00
Sharan Roongta c19ed21468 Begin to update DAMASK structure 2020-06-16 17:53:14 +02:00
Martin Diehl a9e0e93213 need to handle case of zero length file when splitting 2020-06-05 13:38:40 +02:00
Martin Diehl dc508cdfce Merge remote-tracking branch 'origin/misc-improvements' into vectorize_rotation 2020-05-15 23:25:42 +02:00
Martin Diehl 5a94218d23 fixes error:
[0]PETSC ERROR: Object is in wrong state
[0]PETSC ERROR: Cannot set coordinates until after DMDA has been setup
2020-05-11 08:02:34 +02:00
Martin Diehl 0f2447d413 restart does not overwrite existing results 2020-05-06 21:48:55 +02:00
Martin Diehl 7ec1ae977e new names
spectral => grid
FEM      => mesh

because there are FEM solvers for both discretizations. old names will
be available for a certain time
2020-04-25 09:56:51 +02:00
Martin Diehl 08ad9d1d57 was mixed up 2020-03-29 19:18:06 +02:00
Martin Diehl 7aa47d8f5a module name follows filename 2020-03-20 07:18:11 +01:00