Commit Graph

1626 Commits

Author SHA1 Message Date
Martin Diehl 3e65d44e07 centralized facilities for differential operations
note the need to reverse the grid shape in data from the ASCII table. If x is fastest,
z is slowest we require x to be the rightmost index
2019-11-28 15:46:22 +01:00
Martin Diehl 80b50f460e cleaning
trying to get rid of strange re-ordering related to ASCII table data
layout
2019-11-28 10:09:22 +01:00
Martin Diehl ca92400c2f polishing
columns is the term used py pandas
2019-11-28 05:58:28 +01:00
Martin Diehl b85049cb81 use brackets for line continuation with comments 2019-11-28 05:41:53 +01:00
Martin Diehl 98d5738fe6 Merge branch 'new-ASCII' into grid-filters 2019-11-28 05:12:36 +01:00
Martin Diehl 80002e6cfd proper capitalization 2019-11-27 13:21:41 +01:00
Martin Diehl cee095b58e better use centralized code 2019-11-27 12:22:28 +01:00
Martin Diehl 7d4b982c73 make information on modifications mandatory 2019-11-27 12:08:23 +01:00
Martin Diehl 76c3577378 pandas.DataFrame needs to be a 2nd order array 2019-11-27 12:03:35 +01:00
Martin Diehl 39734ef53c alter data
allows to access multiple columns ('f') and individual components
('1_f')
2019-11-27 10:56:29 +01:00
Martin Diehl 96714089b1 documented and tested handling of multi-dimensional data
more precise regex expressions. get_array can handle individual
components
2019-11-27 09:58:58 +01:00
Martin Diehl 882a11c5f8 get labels without shape information 2019-11-27 08:43:20 +01:00
Martin Diehl 2d96136a0d more general constructor for Table
reading from file is just one case (now handled by static method).
General constructor needs data and header information as dictionary.
Works only with python 3.7 where dict keeps the insertion order. Earlier
python versions/other implementations might fail.
2019-11-26 22:53:46 +01:00
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
Martin Diehl bf27505faa Merge branch 'development' into geometry-class 2019-05-31 16:21:50 +02:00
Martin Diehl 37de73535d following PEP style guide 2019-05-30 20:08:39 +02:00
Martin Diehl 4cb0ba3803 not needed anymore 2019-05-30 19:26:41 +02:00
Martin Diehl 46f0ad052e direct support for vtk output
- geom_check can now handle multiple files
- microstructure index is stored as integer in vtk file
2019-05-30 15:35:45 +02:00
Martin Diehl b00581f1be less picky on allowed datatypes 2019-05-30 13:29:29 +02:00
Martin Diehl 931fa9d36a standardized and cleaned
-write to file if given
-type casting is done in the geom class
2019-05-30 10:20:07 +02:00
Martin Diehl f30eda0267 no need to loop over files
will procude the same file over and over again
2019-05-30 09:32:37 +02:00
Philip Eisenlohr 17168525b6 use srepr in __repr__ 2019-05-29 18:14:30 -06:00
Martin Diehl 6e790e845a correct rescaling 2019-05-29 19:36:02 +02:00
Martin Diehl 669ca82ce1 formatted return message also on interactive shells 2019-05-28 09:05:10 +02:00
Philip Eisenlohr 1f56ac6a4a streamlining and bugfixing of geom-class 2019-05-27 22:45:34 -06:00
Martin Diehl b69f0efbbc improved and simplified reporting 2019-05-27 22:00:26 +02:00
Martin Diehl 615a4ab40f keep float datatype
based on the assumption, that no mixed float/int data is stored
2019-05-27 09:56:15 +02:00
Martin Diehl 6e06764e2d using (enhanced) central functionality 2019-05-27 08:38:02 +02:00
Martin Diehl b5cec797c0 cleaned 2019-05-26 23:03:31 +02:00
Martin Diehl c8dfba89e5 using class
still a very complex script
2019-05-26 22:49:05 +02:00
Martin Diehl 0da39b0c69 copy and paste error 2019-05-26 22:08:42 +02:00
Martin Diehl 0039ac9551 always add comment at beginning
usually, comments are related to the file history
2019-05-26 21:32:48 +02:00
Martin Diehl 7a500e77b1 not needed (DADF5 is the modern alternative) 2019-05-26 20:53:59 +02:00
Martin Diehl 07c9b8b8f0 avoiding unwanted changes 2019-05-26 20:28:19 +02:00
Martin Diehl feb2340935 self-reporting functionality for updating 2019-05-26 17:58:54 +02:00
Martin Diehl dcb79afc84 more user friendly errors 2019-05-26 12:03:21 +02:00
Martin Diehl be3513d1e0 polishing.
python imports follow PEP8
2019-05-26 09:49:56 +02:00
Martin Diehl 9f63d768de do not keep whitespaces 2019-05-25 13:48:38 +02:00
Martin Diehl 875643c363 same style 2019-05-25 10:24:45 +02:00
Martin Diehl 4788fc6046 making use of new class
@philip: 1D arrangement needed?
2019-05-25 08:37:02 +02:00
Martin Diehl cf374a04dc using new class 2019-05-25 08:21:00 +02:00
Martin Diehl 7b6003fb32 no need for numpy.loadtxt (not compatible with 'to' and 'of' compression 2019-05-25 08:17:51 +02:00
Martin Diehl 420abfa162 use new class 2019-05-24 22:34:27 +02:00
Martin Diehl f20c8fcffd easier generation and modificaton of grid geometries
fits better than the general ASCII table class
2019-05-24 22:30:25 +02:00
Martin Diehl a280f9a4a2 polishing 2019-05-23 17:26:38 +02:00
Martin Diehl f6dda99bfb more post processing functionality 2019-05-23 08:54:20 +02:00
Martin Diehl e7ca371b14 routines to do pointwise operations 2019-05-20 19:56:45 +02:00
Martin Diehl 118c74a268 enable materialpoint output again
accidently lost during a former commit
2019-05-16 22:01:12 +02:00
Martin Diehl 339b86f784 bugfix + more verbose reporting 2019-05-16 11:44:03 +02:00
Martin Diehl 9f7fa5393a fix for scalar datasets 2019-05-16 09:31:13 +02:00
Martin Diehl 3c0c0a2cd1 more flexible in selecting data 2019-05-16 00:27:06 +02:00
Martin Diehl c6863a6124 also consider homogenization/materialpoint results 2019-05-15 23:38:24 +02:00
Philip Eisenlohr 4c7af713f1 added explicit method Rotation.fromBasis, which can treat real and reciprocal basis sets 2019-05-14 12:59:21 -04:00
Martin Diehl f3c77cde87 Merge branch 'development' into MiscImprovements 2019-05-06 16:16:39 +02:00
Martin Diehl 9b0d3def1d small changes suggested by Franz 2019-05-05 22:38:06 +02:00
Martin Diehl 39cc9e35ae Merge branch 'development' into orientation_with_averaging 2019-05-05 22:12:09 +02:00
Martin Diehl ebf01dee4f store grid/size at geometry group
as outlined in the DAMASK results paper
2019-05-03 06:46:22 +02:00
Martin Diehl b8bf329a74 Merge branch 'development' into MiscImprovements 2019-04-30 00:02:35 +02:00
Martin Diehl 327a8ab757 more details 2019-04-28 12:04:11 +02:00
Martin Diehl c72518e52b reflects current temp files 2019-04-28 07:22:12 +02:00
Martin Diehl a5c620379b tools to build a python wheel distribution 2019-04-26 20:54:58 +02:00
Martin Diehl 1ccc967544 enables auto include 2019-04-26 19:24:22 +02:00
Martin Diehl 1b9355327a WIP: preparing for PIP package 2019-04-26 19:08:59 +02:00
Martin Diehl 009a47ad72 make python package independent from rest of DAMASK
https://packaging.python.org/guides/single-sourcing-package-version/
2019-04-25 20:05:42 +02:00
Martin Diehl 64c9a367c0 always install post processing scripts into {$DAMASK_ROOT}/bin
custom installation directions will be made available by more standard
approaches
2019-04-25 07:21:42 +02:00
Martin Diehl 53f6a4e030 too specific
- only works at MPIE
2019-04-25 06:00:56 +02:00
Martin Diehl 1330730717 inFZ needs 'proper' Rodriques--Franck vector 2019-04-19 09:04:54 +02:00
Martin Diehl b97f10b6ff forgotten changes in last commit + fromRandom 2019-04-19 08:17:02 +02:00
Martin Diehl feca9fe0a0 Again changes to the return values.
A python function with no return value returns 'None'
2019-04-19 08:04:04 +02:00
Martin Diehl 9a43c2e4c5 fixed return values
- homomorph, standardize, etc. are silent in-place operations (return
None)
- homomorphed, standardized, etc. are out-of place operations that
report
2019-04-19 01:05:48 +02:00
Martin Diehl 25518df80c fixes to quaternion class
- always store data as float (solves issues with truediv)
- fixed in-place multiplication and division
- consistent handling of "..ed()" functions
2019-04-19 00:44:12 +02:00
Philip Eisenlohr 4183eeaeca [skip ci] disorientation may return full-fledged orientation obj and aux info, added rotation.standardize(d) 2019-04-18 18:06:00 -04:00
Martin Diehl c4f56703a4 proper definition of homomorph 2019-04-18 17:11:51 +02:00
Martin Diehl 7570b187e7 do explicit homomorphing
only in cases when the underlying math cannot guarantee that the
resulting quaternion follows the convention
2019-04-18 16:26:05 +02:00
Martin Diehl e8464814ae explicit is better than implicit
- if the quaternion does not follow the convention, use
"fromQuaternion(acceptHomomorph=True)"
2019-04-18 14:46:12 +02:00
Martin Diehl 71b0036323 return rotation as misorientation 2019-04-18 14:26:53 +02:00
Martin Diehl 481aac7952 misorientation calculation did not always follow convention
- return homomorphed quaternion to ensure that real component is > 0
(equivalent to have axis angle limited to [0, pi]
2019-04-18 13:46:58 +02:00
Martin Diehl b746b841f7 not needed 2019-04-18 12:04:36 +02:00
Martin Diehl 6b7fd6b7ea visualizing data from DADF5: first prototype 2019-04-18 11:58:17 +02:00
Martin Diehl 7177813710 adding data to geometry 2019-04-17 19:57:16 +02:00
Martin Diehl fdd5b93e7c avoid FPE exceptions 2019-04-17 15:19:41 +02:00
Martin Diehl a6e6db0559 more stable/robust conversions 2019-04-17 12:52:48 +02:00
Martin Diehl 079e683dd1 disorientation returns Orientation, not Rotation 2019-04-17 10:48:18 +02:00
Martin Diehl 3f8c16262e fixed import statement
previous form only worked in python/damask folder
2019-04-17 09:45:18 +02:00
Martin Diehl 8609eb6eb7 improved names and layout 2019-04-17 09:34:49 +02:00
Martin Diehl c7c6627dfb don't try to figure out the input 2019-04-17 08:49:26 +02:00
Martin Diehl fa18200447 quaternion is now in separate module
avoid long modules with multiple, only loosely related classes
2019-04-17 08:46:03 +02:00
Martin Diehl d842902a76 consistent ordering
- qu, om, eu, ax, ro, ho, cu
2019-04-16 21:47:29 +02:00
Martin Diehl 8eb1a35dfb first version of a library to parse HDF5
- preliminarly called DADF5 (DAMASK HDF5)
- script to write (empty undeformed) geometries is also added
2019-04-13 11:25:53 +02:00
Philip Eisenlohr 3a7408a213 averaging possible for rotations and orientations; Rodrigues 3Dvector output only at top-level; code reordering 2019-04-12 09:03:47 -04:00
Philip Eisenlohr 3d6eb76da3 equivalentOrientations accepts scalar argument to directly return single rotation object (not single element list) 2019-04-11 19:07:41 -04:00
Philip Eisenlohr 2190c3ef46 fixed serious disorientation bug; sorted transformation functions 2019-04-11 18:32:07 -04:00
Philip Eisenlohr b8285d5749 restored orientation averaging capability 2019-04-11 17:23:04 -04:00
Martin Diehl 019d1a9c5c [skip ci] reference was wrong 2019-04-08 22:23:40 +02:00
Martin Diehl dd51945570 checking for input errors 2019-03-28 07:25:20 +01:00
Martin Diehl 85a535b99c is not used anymore 2019-03-07 22:35:43 +01:00
Martin Diehl 12587be595 was not used anymore
status bar can be used as a replacement, it does to flood log files as
extensively as the background thread
2019-03-07 20:48:09 +01:00
Philip Eisenlohr eada10548e [skip ci] no blank line after progress bars 2019-02-27 08:38:06 -05:00
Martin Diehl e88182b007 improved converte, now with test
still needs to figure out how +P is handled
2019-02-24 14:39:34 +01:00
Martin Diehl 56781dfa5b fiber was never used here and will be remove anyway
more user friendly formatting
2019-02-24 10:32:28 +01:00
Martin Diehl 73f6cb7020 fixed datatype 2019-02-24 09:12:21 +01:00
Martin Diehl d3ac3cc0f5 using new Orientation class 2019-02-24 08:34:20 +01:00
Martin Diehl 9dc8dff4b1 cleaning and adding compatibility layer 2019-02-23 22:35:04 +01:00
Martin Diehl b3455c825e transition to new orientation class
forward-backward conversion quite stable
2019-02-23 21:49:05 +01:00
Martin Diehl 93ae5cbd07 Merge remote-tracking branch 'origin/development' into 10-consistent-orientation-conversions-3 2019-02-22 23:05:36 +01:00
Martin Diehl 43376c39d8 addGrainID parses in quaternion 2019-02-22 11:25:39 +01:00
Martin Diehl 907f7ca560 transition to new class 2019-02-21 13:33:22 +01:00
Martin Diehl 88fc37d8a7 some more work on python3 compatible scripts 2019-02-15 16:22:52 +01:00
Martin Diehl 8b82941014 only Abaqus 2019 is available 2019-02-15 14:26:08 +01:00
Martin Diehl c50078bafc short version not needed any more
Abaqus version is year
2019-02-15 14:22:26 +01:00
Martin Diehl 608852df83 rotation paper has angle as last component 2019-02-12 10:58:38 +01:00
Martin Diehl 7da8980cc0 bugfixes: wrong shape, wrong conversion 2019-02-12 09:04:35 +01:00
Martin Diehl 336a80091f rodrigues is 4-vector with rotation being the last component
established a single source of truth for length
2019-02-12 08:59:26 +01:00
Martin Diehl 97ac437686 more user friendly constructors 2019-02-12 08:14:27 +01:00
Martin Diehl ef3fc0b58a bugfix: wrong array indexing
rotation of meshgrid tuple implemented
2019-02-12 07:42:46 +01:00
Martin Diehl 4215ae3888 rotation of matrix is defined in class 2019-02-12 06:32:26 +01:00
Martin Diehl e47c275e0c unknown encoding caused problem (on python2?) 2019-02-12 06:18:21 +01:00
Martin Diehl 48b0307fab using new rotation class
cannot rotate matrices (3,3) and (3,3,3,3) at the moment
2019-02-12 00:27:13 +01:00
Martin Diehl 7ee933b79d Rotation class
uses (and hides) Quaternion2. Should replace Quaternion class.
Orientation class should inherit from Rotation and adds symmetry.
2019-02-11 23:50:02 +01:00
Martin Diehl e931b716fd conversion routines from Marc de Graefs 3D rotation repository
Python version available on https://github.com/MarDiehl/3Drotations
2019-02-11 23:15:19 +01:00
Martin Diehl 40740b831e reverted code removal
was not "just commented out" but served as documentation. now easier to
see
2019-02-04 00:10:49 +01:00
Martin Diehl 9a4e9e62b6 using new rotation class 2019-02-01 20:28:51 +01:00
Martin Diehl 878331e5e9 this code was never used and is quite old 2019-02-01 19:29:19 +01:00
Philip Eisenlohr e6fe312f85 Corrected documented value for P (= -1!). Instead of repeating the assignment P=-1 in multiple internal functions, it might be advisable to define a class-wide parameter? 2019-02-01 14:04:55 +01:00
Martin Diehl 11a509970b some comments 2019-02-01 10:17:20 +01:00
Martin Diehl 45d11f81b0 python cleaning 2019-01-05 10:55:28 +01:00
Martin Diehl 02ab55d4b3 python reflects content better than lib 2019-01-05 10:52:39 +01:00