Commit Graph

363 Commits

Author SHA1 Message Date
Martin Diehl 5661f60552 fname seems to be the common name 2019-11-26 21:36:24 +01:00
Martin Diehl 925a4f73d6 staticmethod better suited than class method
a classmethod changes the class, i.e. it assigns attributes and gives
them specific values.
a staticmethod does not alter the class

https://www.geeksforgeeks.org/class-method-vs-static-method-python
2019-11-26 20:32:54 +01:00
Martin Diehl 845cfc34ec similar logic as in geom class
- filename is not part of the object
- transparent handling of files, strings, and path-like objects for file
IO
2019-11-26 14:26:25 +01:00
Martin Diehl 81abc43920 Merge branch 'development' into new-ASCII 2019-11-26 10:29:05 +01:00
Martin Diehl 23f5e0fa58 filters for operations on regular grids (in fourier space) 2019-11-26 10:25:39 +01:00
Martin Diehl af78aaf2f1 testing rescale 2019-11-25 14:01:40 +01:00
Martin Diehl e16024ddf9 Merge branch 'PythonImprovements' into pytest 2019-11-25 14:00:24 +01:00
Martin Diehl 476569390a enable use of path objects, strings, and opened files 2019-11-25 13:47:14 +01:00
Martin Diehl b757f02649 avoid repetitions 2019-11-25 12:04:57 +01:00
Martin Diehl 6d25506204 test for new pack functionality 2019-11-25 09:28:59 +01:00
Martin Diehl 969fa9bbc7 Merge branch 'PythonImprovements' into pytest 2019-11-25 09:15:06 +01:00
Martin Diehl 3e8518d861 following prospector guidelines 2019-11-24 19:30:00 +01:00
Martin Diehl c9f9f7c681 pack causes trouble with tests .. 2019-11-24 19:02:19 +01:00
Martin Diehl b2cdabd009 getting rid of shell scripts 2019-11-24 18:25:53 +01:00
Martin Diehl 816e86ae5f phasing out python shell scripts 2019-11-24 15:13:26 +01:00
Martin Diehl 8186be6293 compress functionality should be part of the geom class
automated decision is base on heuristic whether compression is memory
efficient
2019-11-24 14:27:24 +01:00
Martin Diehl 02df55b9bd bugfix
casting to plain array works only (and makes sense only) for a derived
type
2019-11-24 11:18:41 +01:00
Martin Diehl 6060abb375 cleaning 2019-11-24 09:10:47 +01:00
Martin Diehl c9b1944493 handling of derived datatypes/structs
currently required for orientation
2019-11-24 08:50:27 +01:00
Martin Diehl f30cbde99e use first constituent as default 2019-11-24 08:04:40 +01:00
Martin Diehl 928a5c2e55 better use fixtures 2019-11-24 06:29:00 +01:00
Martin Diehl 2b392241f9 Merge branch 'PythonImprovements' into pytest 2019-11-23 19:25:22 +01:00
Martin Diehl 406ae29897 adopting rename in mechanics 2019-11-23 19:22:18 +01:00
Martin Diehl 3be1caa4ef read_dataset has at least two dimensions 2019-11-23 19:21:41 +01:00
Martin Diehl eb80a82e05 first idea how to test pointwise operations 2019-11-23 18:58:44 +01:00
Martin Diehl e3f8195621 no not change line endings 2019-11-23 17:08:36 +01:00
Martin Diehl 4dc4442fae small DADF5 file for testing 2019-11-23 16:15:08 +01:00
Martin Diehl 510e4752fd using parametrized tests for better coverage 2019-11-23 14:03:47 +01:00
Martin Diehl 2810531c97 a test with reference results 2019-11-23 13:37:03 +01:00
Martin Diehl 834cd43b66 intention not clear
any ideas why __transforms__ was used?
2019-11-23 08:06:26 +01:00
Martin Diehl ea4c4b6636 Merge branch 'PythonImprovements' into pytest 2019-11-22 22:10:20 +01:00
Martin Diehl dfb95df689 migrating shell scripts to python class 2019-11-22 21:48:41 +01:00
Martin Diehl c00af5c402 4 space indents are common practice 2019-11-22 20:52:36 +01:00
Martin Diehl e5e3db8286 Merge branch 'PythonImprovements' into pytest 2019-11-22 15:42:27 +01:00
Martin Diehl fad679a9a5 need to catch IOError 2019-11-22 15:19:20 +01:00
Martin Diehl 6e0b2a4fab following prospector rules 2019-11-22 13:16:53 +01:00
Martin Diehl dac63f7d92 subfolders not needed 2019-11-22 12:55:56 +01:00
Martin Diehl 77e410d7d1 follow prospector rules 2019-11-22 12:17:44 +01:00
Martin Diehl a26a5738dd polishing 2019-11-21 21:48:54 +01:00
Martin Diehl e0f3fe3cc0 ported from hand written test class 2019-11-21 21:01:01 +01:00
Martin Diehl a3376a35b7 testing mechanics module with pytest 2019-11-21 20:00:28 +01:00
Martin Diehl cf88c1f907 correct syntax for integer comparison 2019-11-21 19:49:46 +01:00
Martin Diehl a5ae82fe90 handle deprecation warning in python 3.8 2019-11-21 19:47:27 +01:00
Martin Diehl 7a7eea47b5 correct handling of arrays
all strains measures except for logarithmic had wrong off-diagonal
components
2019-11-21 19:46:05 +01:00
Martin Diehl fb286af354 [skip sc] first draft 2019-10-31 10:47:40 +01:00
Martin Diehl 1c10459a5a also use fast operation order 2019-10-30 21:09:17 +01:00
Martin Diehl 8a85123abc 4 space indent is python standard 2019-10-30 18:05:44 +01:00
Martin Diehl b733bd3038 polar decomposition 2019-10-28 11:18:26 +01:00
navyanthkusam fca288ae8a performance improvement
this mapping is faster for large volumes
2019-10-25 14:47:36 +02:00
Philip Eisenlohr 894b646283 corrected name of U,V; fixed Mises_strain factor from 3/2 to 2/3; 2019-10-23 15:03:24 +02:00
Martin Diehl 2d08eb68b1 bugfix for (3x3) version of Cauchy 2019-10-23 14:39:52 +02:00
Martin Diehl 5e7f9a223b should be a passive rotation 2019-10-21 23:17:58 +02:00
Martin Diehl 9489c04ccb less confusing 2019-10-21 23:02:31 +02:00
Martin Diehl ecc51e34d3 rouding should affect color calculation
avoid NaN in math.power(x,0.5). math.power(-0.0,0.5) is ok
2019-10-21 22:44:12 +02:00
Martin Diehl 578cbf9bbf bugfixes:
- vonMises calculation was wrong
- wrong type of data used in some add_XXX
2019-10-21 18:07:35 +02:00
Martin Diehl 78a2941436 avoid numerical issues 2019-10-21 16:59:49 +02:00
Martin Diehl 51ed4d68e6 more info 2019-10-20 13:13:48 +02:00
Martin Diehl b593dfbfd9 better layout 2019-10-20 11:34:05 +02:00
Martin Diehl f00f6952c0 selecting by increment is a common task
https://www.python.org/dev/peps/pep-0257/
The docstring is a phrase ending in a period. It prescribes the function or method's effect as
a command ("Do this", "Return that"), not as a description; e.g. don't write "Returns the pathname ...".
2019-10-20 11:00:10 +02:00
Martin Diehl 8f315836b0 easier to use if end time is included: 2019-10-20 10:42:45 +02:00
Martin Diehl 64731369e3 general definition for strain tensors 2019-10-19 16:05:53 +02:00
Martin Diehl a665d5726d polishing 2019-10-19 13:22:37 +02:00
Martin Diehl b31de5d0f6 outsourcing tensor math to mechanics class
strain calculation is generalize to arbitrary order and simplified: No
need for svd, F^T F/F F^T does the job.
2019-10-19 12:54:16 +02:00
Martin Diehl e51f6cee72 improved handling of string types for HDF5
- convert bytes to string when reading
- convert string to bytes when writing
2019-10-19 09:47:26 +02:00
Martin Diehl 5f0a48fae7 enhanced and documented 2019-10-19 08:51:51 +02:00
Martin Diehl dc9aca5710 copy and paste error/invalid syntax 2019-10-18 20:57:36 +02:00
Martin Diehl 5858d03a6b prospector complaints for stupid reasons 2019-10-18 20:55:39 +02:00
Martin Diehl 3336cfc3da better have tensor functions available
allows in-memory evaluation of results
2019-10-18 20:50:03 +02:00
Martin Diehl 1a34a6f7b5 some useful tensor operations 2019-10-18 20:41:39 +02:00
Martin Diehl 47ba7d49b5 allow to use the same label twice in a function 2019-10-18 20:39:00 +02:00
Martin Diehl de912c22b4 Merge branch 'development' into HDF5-spectral-displacements 2019-10-18 12:54:12 +02:00
Franz Roters 91691744c6 Merge branch 'Marc-No-nonlocal' into 'development'
Marc no nonlocal

See merge request damask/DAMASK!98
2019-10-15 10:35:37 +02:00
Martin Diehl 708bbd3cb9 mesh/grid type transparent handling of coordinates 2019-10-12 16:15:04 +02:00
Martin Diehl b208fa6565 takeover from Vitesh's work with small adoptions to current DADF5 2019-10-12 08:02:57 +02:00
Martin Diehl 0eef73935e handling of derived types (orientation for the moment) 2019-10-11 08:35:21 +02:00
Martin Diehl b8a1a5bb7d v 0.2 is ok, not sure what the future brings so better check 2019-10-03 20:23:49 +02:00
Martin Diehl 0b29d08109 bump to DADF5 v0.3
contains displacements (for grid solver)
2019-10-03 19:02:17 +02:00
Martin Diehl 62fb4d2ea9 polishing 2019-10-01 14:30:09 -07:00
Martin Diehl e96eb55edd calculate different strain tensors 2019-09-30 14:28:58 -07:00
Martin Diehl 0e3b09adc1 negative eigenvalues are not possible
left/right Cauchy-Green Deformation Tensors are positive definit
https://de.wikipedia.org/wiki/Deformationsgradient
2019-09-30 14:12:15 -07:00
Martin Diehl d95a795e3b Merge branch 'MiscImprovements' into HDF5-spectral-displacements 2019-09-30 13:53:24 -07:00
Martin Diehl 0dd14a0652 correct reporting of version 2019-09-30 09:07:56 -07:00
Martin Diehl 457f9aa4e3 prospector found duplicated key 2019-09-30 08:53:53 -07:00
Martin Diehl 3206ee04bc nodal displacements for grid solver
currently for non-MPI only
2019-09-27 20:38:02 -07:00
Martin Diehl 970d172160 correct message 2019-09-27 17:52:01 -07:00
Martin Diehl ad83c8541d same names as in python 2019-09-20 17:18:09 -07:00
Martin Diehl fb61899c5f seems that testing has Marc 2018.1 already 2019-09-20 20:54:30 +02:00
Martin Diehl 0b6620bfb7 Merge branch 'development' into MiscImprovements
F***ing commits to development!
2019-09-20 07:40:52 -07:00
Martin Diehl 4b2263bebe conversion to float causes issues
test only current version of MSC.Marc
2019-09-20 03:21:53 +02:00
Yang Su 6fdab024b6 ensure that integer inputs to Rotation.fromX() translate into float quantities 2019-09-19 17:03:31 -04:00
Martin Diehl 7fd4b8bff6 more prospector hints 2019-09-19 12:51:16 -07:00
Martin Diehl f1f88610dd documenting 2019-09-19 12:32:15 -07:00
Martin Diehl 2e25a03d13 adopting to new prospector 2019-09-19 11:56:58 -07:00
Martin Diehl 35a009f513 prospector complaind
help details were anyway pretty useless
2019-09-19 11:41:41 -07:00
Martin Diehl 32639caec2 better readable 2019-09-19 11:12:44 -07:00
Martin Diehl bf7db26680 Merge branch 'even-more-HDF5-postprocessing' into MiscImprovements 2019-09-19 10:49:14 -07:00
Philip Eisenlohr 76b08e10bd following stricter Python docstring standards 2019-09-18 21:43:43 -04:00
Martin Diehl 4994c86e67 bugfix: hard-wired keyword resulted in missing materialpoint results 2019-09-16 13:31:49 -07:00
Martin Diehl ee1327c519 [skip ci] typo 2019-09-16 11:21:06 -07:00
Martin Diehl 28bb92021d avoid code duplication 2019-09-16 11:04:05 -07:00
Martin Diehl 980c02b0c3 selected increments by simulation time 2019-09-15 20:19:14 -07:00
Martin Diehl 86fb0a7942 time info needed for filtering of increments 2019-09-15 20:04:52 -07:00
Martin Diehl b3b710c848 polishing 2019-09-15 19:56:07 -07:00
Martin Diehl 4cedcee0b4 handling of increments follows handling of other 'visible'-items 2019-09-15 17:08:03 -07:00
Martin Diehl f6ac8c995f simplified and selected better names 2019-09-15 16:00:19 -07:00
Martin Diehl c76d4d3f87 avoid unneeded arguments 2019-09-15 15:24:23 -07:00
Martin Diehl 88eba27cec avoid name duplication + polishing 2019-09-15 15:10:32 -07:00
Martin Diehl 04aefa84bc more appropriate names 2019-09-15 15:02:16 -07:00
Martin Diehl d413aef7c3 functionality for general calculations on datasets
currently limited to vectorized expressions.
2019-09-14 12:00:23 -07:00
Martin Diehl 8251725bce WIP: different norm types 2019-09-14 10:53:33 -07:00
Martin Diehl e4e9c5f558 support glob matching
more flexibility in selecting active datasets and groups
2019-09-14 09:55:42 -07:00
Martin Diehl b85ac11c49 implemented ideas from discussion with Philip
group matching unified and with wildcard support
time step handling should become more convenient (WIP)
add_norm can not compute abs of scalar, added function for that
general polishing here and there
2019-09-14 09:07:23 -07:00
Martin Diehl c13db4b3ca renaming
on_air/active are not clear. visible seems to be the most appropriate
name
2019-09-13 21:49:22 -07:00
Martin Diehl 898f53295d iter functions for groups
restore original selection after iterating (i.e. temp setting of active)

polishing: correct names and more details for HDF5 meta data
2019-09-13 21:14:52 -07:00
Martin Diehl 69462f8190 polished
strain calculation agrees up to 1e-4 with results from addStrainTensors.
Not too exciting, but ok
2019-09-13 19:37:25 -07:00
Martin Diehl 38f6609ad7 high level functions for selecting output
tested Cauchy stress calculation (comparison with addCauchy.py)
2019-09-13 18:36:06 -07:00
Martin Diehl c5006e264b handling prospector complaints 2019-09-13 16:07:39 -07:00
Martin Diehl 002383afc2 solved problem with postprocessing
- to not 'try' with h5py library, it might have another 'try'. Check
explicitly for empty argument

also some polishing
2019-09-13 16:01:30 -07:00
Martin Diehl b2b625af3e notes from discussion with Philip 2019-09-13 15:17:46 -07:00
Martin Diehl f83a167414 file mode for high level funtion not useful 2019-09-13 09:49:30 -07:00
Martin Diehl 6f008c5d5f rewrite pointwise add function
- all vectorized: Much faster
- passing in all relevant information allows to do sanity checks and add
useful meta data in HDF5
- improved readability
2019-09-13 06:02:42 -07:00
Martin Diehl 3db3e9e762 preparing for use of optional arguments to function 2019-09-11 21:20:14 -07:00
Martin Diehl de313269d9 bugfix 2019-09-11 18:54:54 -07:00
Martin Diehl 953ba53211 adjusting for strict prospector checking 2019-09-11 18:22:33 -07:00
Martin Diehl a6c69a744b do operations vectorized 2019-09-11 17:57:24 -07:00
Martin Diehl 462bb07efd Merge branch 'development' into even-more-HDF5-postprocessing 2019-09-11 16:29:44 -07:00
Martin Diehl bc893762ec no need to inverse a rotation, transpose is faster 2019-09-11 07:29:34 -07:00
Martin Diehl fa2c100d6a need to update microstructure to get grid update 2019-09-04 20:20:55 -07:00
Martin Diehl f415a8cad2 Merge branch 'PythonProspectorRules' into even-more-HDF5-postprocessing 2019-09-04 14:23:07 -07:00
Martin Diehl 28c11cc373 bugfix
-update function was resetting size if not given
-dim does not work an all terminals, therefore also emph new values in
addition to dim old ones
2019-09-04 11:14:44 -07:00
Martin Diehl ef285b482f more references + citation style correction 2019-09-04 08:55:05 -07:00
Martin Diehl 6f07a20919 not sure what this code was intended to do 2019-09-03 17:23:26 -07:00
Martin Diehl 3657f81c59 documenting (in accordance with new prospector rules) 2019-09-03 17:18:06 -07:00
Martin Diehl a428a924eb DAMASK default citation style 2019-09-03 16:34:02 -07:00
Martin Diehl 97fc8a4029 following python3 recommendations 2019-09-03 15:44:28 -07:00
Martin Diehl 234019bb4d dummy stuff not needed 2019-09-03 15:41:16 -07:00
Martin Diehl b0d3615d67 more detailed documentation 2019-09-03 15:32:01 -07:00
Martin Diehl 7d48764999 added documentation and references 2019-09-03 15:25:25 -07:00
Martin Diehl a073f36471 update for solver wrappers 2019-09-03 09:48:42 -07:00
Martin Diehl fea16327ac now properly escaped 2019-09-02 23:42:34 -07:00
Martin Diehl d84cef4fab pep8: W605 / invalid escape sequence '\ ' seems to be a false positive 2019-09-02 23:37:52 -07:00
Martin Diehl 9cf4f9537e documenting 2019-09-02 23:23:46 -07:00
Martin Diehl ba395977db adjusting to new prospector 2019-09-02 11:09:03 -07:00
Martin Diehl 34b3beda27 DefaultMap needed for newer paraview 2019-09-02 10:51:32 -07:00
Martin Diehl c51cf8d506 transferring post processing capabilities 2019-07-15 13:55:14 -07:00
Martin Diehl b6bb8a4650 simple strain calculation for DADF5
further enhancement requires to give optional arguments to
add_genericpontwise
2019-07-06 21:41:29 -07:00
Martin Diehl b6830b3ac1 Merge branch 'development' into even-more-HDF5-postprocessing 2019-06-14 10:28:22 +02:00
Martin Diehl cede188e76 enable to explicitly set the environment
required for running MPI processes when mpi4py is imported
2019-06-07 17:51:27 +02:00
Martin Diehl 1186bd16f5 Merge branch 'development' into even-more-HDF5-postprocessing 2019-06-04 22:39:10 +02:00
Philip Eisenlohr dff690611e fixed origin bug in VTK; VTK can be float; size defaults to 1 as longest dimension 2019-06-03 13:29:30 -04:00