Commit Graph

599 Commits

Author SHA1 Message Date
Philip Eisenlohr a7f5e42c2e condensed if-else 2020-03-10 22:13:21 +01:00
Philip Eisenlohr bffce1ab9c use "nan" to represent np.nan in ASCIItable output 2020-03-09 18:50:27 -04:00
Philip Eisenlohr b2abaef0b3 added placing of data within geometry 2020-03-09 18:31:00 -04:00
Martin Diehl 9bfaf4fbfb it is RodriGues, not RodriQues 2020-03-09 13:58:10 +01:00
Martin Diehl 32378fa609 simpler use of progress bar
now written as class (avoids the managing of function attributes) which
is used as a small wrapper around a loop.
ETA is shown, based on datetime class which hast nice formatting
2020-03-09 13:44:08 +01:00
Philip Eisenlohr 20caa29b5d corrected "Rodrigues" 2020-03-06 00:53:11 +01:00
Martin Diehl 7a0c20b6de Merge branch 'development' into python-style 2020-03-05 22:00:58 +01:00
Martin Diehl c06ef00fe2 [skip ci] N_threads is not correct, we use processes 2020-03-03 14:57:48 +01:00
Martin Diehl 16b4a63c58 clearly separating deprecated functions
still there since some test rely on them
2020-03-03 14:38:32 +01:00
Martin Diehl 946231cda5 indentation adjustment 2020-03-03 14:24:27 +01:00
Martin Diehl 903af10aa7 allow to iterate over times/increments 2020-03-03 14:07:02 +01:00
Martin Diehl c33cca3351 polishing, takeover from dadf5-usability branch 2020-03-03 12:50:10 +01:00
Martin Diehl 1f3d5099cf quote still needed 2020-03-03 12:32:38 +01:00
Martin Diehl b1f21b189b removing unused functionality
should simplify transition to new table class
2020-03-03 08:28:57 +01:00
Martin Diehl edd143b423 bugfix for copy and paste error
introduced in 8798dd1af3
2020-03-03 07:00:14 +01:00
Martin Diehl 192f21df37 4 space indentation 2020-03-03 06:49:46 +01:00
Martin Diehl 88e8907031 deprecated and not used by any test 2020-03-02 23:52:40 +01:00
Martin Diehl 8798dd1af3 new names consistently used 2020-03-02 23:47:29 +01:00
Martin Diehl 00028724b8 type is float for empty element in prod, should always be int 2020-03-02 23:20:36 +01:00
Martin Diehl 0034289b1b S is 2. PK stress, T_sym is clearer 2020-03-02 23:14:59 +01:00
Martin Diehl 15c3cab549 clearer names 2020-03-02 23:11:05 +01:00
Martin Diehl 4970f22e13 better name
damask.Result is more appropriate then damask.DADF5
2020-03-02 23:05:35 +01:00
Martin Diehl 08aef5531c Merge remote-tracking branch 'origin/development' into MiscImprovements 2020-03-01 07:32:00 +01:00
Martin Diehl ed2489de9a not needed anymore 2020-02-29 19:57:37 +01:00
Martin Diehl f431dd2092 geom class is better suited than asciitable class
removing unused functionality from deprecated asciitable
2020-02-29 19:31:27 +01:00
Martin Diehl 334eb93421 infere data type automatically
need for IPF color autput
2020-02-27 21:19:56 +01:00
Martin Diehl 75528064e9 Merge branch 'development' into DADF5-multiprocessing 2020-02-25 17:58:07 +01:00
Martin Diehl 1683e18c1f keep order
mainly relevant for increments
2020-02-25 11:53:02 +01:00
Martin Diehl f256493e79 fixed indentation 2020-02-22 01:05:02 +01:00
Martin Diehl 9d4cbe5168 4 space indentation 2020-02-22 00:19:27 +01:00
Martin Diehl fd11f073f0 fixing prospector complaints 2020-02-22 00:11:00 +01:00
Martin Diehl be45d62f53 polishing 2020-02-21 23:59:33 +01:00
Martin Diehl dc9bfd1849 Merge branch 'DADF5_point_calculations-2' into DADF5-multiprocessing 2020-02-21 23:57:22 +01:00
Martin Diehl 12c69ed3ca Merge branch 'DADF5_point_calculations-2' of magit1.mpie.de:/damask/DAMASK into DADF5_point_calculations-2 2020-02-21 23:56:56 +01:00
Martin Diehl f20a82ce6d migrate name: damask.Result better than damask.DADF5 2020-02-21 23:56:18 +01:00
Martin Diehl 1dddfa040e adjusting indents
should be always 4 spaces
2020-02-21 23:25:22 +01:00
Martin Diehl f604314207 polishing 2020-02-21 23:16:25 +01:00
Martin Diehl e9bf02a52c one underscore commonly denotes internal functions 2020-02-21 21:37:02 +01:00
Martin Diehl 0774e12169 report progress 2020-02-21 21:27:08 +01:00
Martin Diehl c2ae657f5b arguments should be documented 2020-02-21 21:04:23 +01:00
Martin Diehl 0358e7343b polishing 2020-02-21 19:39:17 +01:00
Martin Diehl 05476ff85c parallelize addition of datasets
threads does not work, muliprocessing shows good performance: Overhead
is small compared to the performance gain.
Especially useful for long running functions of the orientation class
2020-02-21 19:25:37 +01:00
Martin Diehl b9966b95e0 consistently use small letters 2020-02-21 18:52:58 +01:00
Martin Diehl ffb80981b1 use central functionality 2020-02-21 17:49:17 +01:00
Martin Diehl 6a0760a13c documentation polishing 2020-02-21 17:42:01 +01:00
Martin Diehl a433f7ef54 style unification
backport from dadf5-usability branch
2020-02-21 13:03:50 +01:00
Martin Diehl 16ddd9c5b2 better name
backport from dadf5-usability branch
2020-02-21 12:20:42 +01:00
Martin Diehl 58610e23a7 use 4 space for indentation 2020-02-21 10:53:44 +01:00
Martin Diehl c84a6e90c9 no 'dangling' functions
@staticmethod is what we need here
2020-02-21 10:45:14 +01:00
Martin Diehl c1caef4bc9 fixing prospector complaints 2020-02-21 08:13:10 +01:00
Martin Diehl 98f5c601a3 line too long 2020-02-21 07:58:10 +01:00
Martin Diehl f6c921e811 Merge branch 'development' into DADF5_point_calculations-2 2020-02-21 07:56:19 +01:00
Martin Diehl 8ae3346bd4 constituents/components are not handled by "view" (active) 2020-02-21 07:46:55 +01:00
Martin Diehl c3740b4ba0 follow 4 space indentation convention 2020-02-21 07:45:05 +01:00
Martin Diehl effaef46db simplified interface 2020-02-21 07:39:53 +01:00
Martin Diehl 9beca6488c more verbose description 2020-02-21 07:21:45 +01:00
Martin Diehl 1e1cb3f151 avoid long modules 2020-02-20 23:29:12 +01:00
Martin Diehl 5ce143e36e numpy is already imported 2020-02-20 23:17:54 +01:00
Martin Diehl 898c696ef7 avoid long modules 2020-02-20 23:16:35 +01:00
Martin Diehl 16ed0623af 4 space indentation (as suggested by PEP) 2020-02-20 23:10:38 +01:00
Martin Diehl a670ab269f proper spacing 2020-02-20 22:50:54 +01:00
Martin Diehl a608310920 correct printing of error messages
'{}'.format(np.ones(3)) gives only '1', but we want to see '[1 1 1]'
2020-02-20 18:59:57 +01:00
Martin Diehl 251d55fe09 current thread pool is useless for performance
https://stackoverflow.com/questions/33969151
https://stackoverflow.com/questions/10789042
2020-02-16 11:00:09 +01:00
Martin Diehl 065fc9ffde using DAMASK_NUM_THREADS controls # workers for add_XXX 2020-02-16 09:49:55 +01:00
Martin Diehl a70721df53 write out proper Miller indices 2020-02-15 20:09:24 +01:00
Martin Diehl 5235c27ad0 making new mechanics functions available for DADF5
+ testing them
2020-02-15 17:56:20 +01:00
Martin Diehl 118c03c485 tests for new functionality 2020-02-15 16:59:30 +01:00
Martin Diehl ad062ada6b option (as in addSpectralDecomposition) 2020-02-15 16:26:56 +01:00
Martin Diehl 5822ad8b05 new functions (takeover from old branch) 2020-02-15 15:13:56 +01:00
Martin Diehl e46395be41 sorted alphabetically 2020-02-15 14:21:23 +01:00
Martin Diehl 79533b075e eigenvalues is more specific name than principal components 2020-02-15 13:56:15 +01:00
Martin Diehl c2c84d698f Merge remote-tracking branch 'origin/development' into MiscImprovements 2020-02-11 17:11:43 +01:00
Martin Diehl 57c70cd5d5 preparing removal 2020-02-04 00:12:08 +01:00
Martin Diehl 4999f5aa4d first steps of removing deprecated
use faster, pandas-based alternative 'table'
2020-02-03 21:40:10 +01:00
Martin Diehl 4c28e7f626 better have tests 2020-02-01 09:44:21 +01:00
Martin Diehl 4d07ab7519 prospector complained 2020-01-29 16:31:05 +01:00
Martin Diehl fa39a7423b preparing for actual use 2020-01-29 13:20:16 +01:00
Martin Diehl 5d1f68bf93 Merge branch 'fix-elem-7-57' into noAbaqus 2020-01-27 19:27:53 +01:00
Martin Diehl ed9347e9bd more robust:
* split(maxsplit=1) will raise ValueError if split into two strings is not
  possible
* int('a') will raise ValueError if 'a' cannot be interpreted as an
  integer
2020-01-26 10:34:30 +01:00
Martin Diehl 6fed655500 fix for new style and test 2020-01-26 10:17:27 +01:00
Martin Diehl 13107abd39 not working and significat efforts needed to test it 2020-01-26 07:44:22 +01:00
Martin Diehl bfe8585903 Merge branch 'development' into MiscImprovements 2020-01-24 20:08:14 +01:00
Martin Diehl 54d1c35c45 Merge branch 'development' into python-module 2020-01-24 08:42:28 +01:00
Martin Diehl ce03d9f30a play it safe 2020-01-21 17:38:08 +01:00
Martin Diehl 5b63779e5c bugfix:
Wrong order of arguments resulted in wrong visualization
2020-01-21 14:37:42 +01:00
Martin Diehl 9f61b0d34a not needed,
pd.DataFrame can handle that
2020-01-21 07:14:43 +01:00
Martin Diehl 74927d9622 np.prod(()) is 1.0 (float), casting is therefore needed 2020-01-20 16:05:07 +01:00
Martin Diehl e3d35b41b4 bugfixes: invalid python code 2020-01-20 13:06:32 +01:00
Martin Diehl b23479bfc9 Merge remote-tracking branch 'origin/development' into MiscImprovements 2020-01-20 12:51:41 +01:00
Martin Diehl 757dc4e234 new style table
no header, comments given by '#': Very standard format, we just take
care of multidimensional columns via special label notation
2020-01-20 12:51:09 +01:00
Franz Roters 701a9b18cc Merge remote-tracking branch 'remotes/origin/marc-improvements' into development 2020-01-18 12:21:24 +01:00
Philip Eisenlohr 87767f0cc2 Merge branch 'no-python-quaternion' into 'development'
No python quaternion

See merge request damask/DAMASK!122
2020-01-15 22:52:55 +01:00
Martin Diehl dd70b38d46 detour via numpy array unified datatype 2020-01-15 14:15:57 +01:00
Martin Diehl ce47e18e5c not needed for integer arrays 2020-01-15 13:45:05 +01:00
Martin Diehl 8a674d0279 2 bugfixes:
- mixed up other and me when removing quaternion class
- 1000 random orientations are enough for testing
2020-01-14 22:30:08 +01:00
Martin Diehl 9d1c1fdb92 enforce Re(q) > 0 2020-01-14 11:33:18 +01:00
Martin Diehl 3afc011a58 fix for untested functionality
thanks to prospector
2020-01-14 10:34:13 +01:00
Martin Diehl 06fc374359 avoid overhead
length of random quaternion is one, no need to go via fromQuaternion but
direct initialization and standardization suffices
2020-01-14 10:22:51 +01:00
Martin Diehl 8e5aa60f34 fixed (and polished) printing 2020-01-14 09:37:59 +01:00
Martin Diehl 9509f1bae1 default abaqus is used if version matches or is undefined
other changes do not alter behavior, just cleaning
2020-01-14 09:15:38 +01:00
Martin Diehl 26c242b997 not needed anymore
conceptually, having the quaternion class is nice but performance-wise
it is a nightmare and prevents vectorization
2020-01-14 09:03:50 +01:00
Martin Diehl 99684c3e86 Merge branch 'vectorized-orientation-conversion' into no-python-quaternion 2020-01-14 09:02:43 +01:00
Martin Diehl 3fc616bc7d Merge branch 'development' into vectorized-orientation-conversion 2020-01-14 09:00:10 +01:00
Martin Diehl af42eae9c1 Merge branch 'development' into python-module 2020-01-14 08:58:19 +01:00
Martin Diehl c7e92c672d avoid code duplication 2020-01-14 07:30:17 +01:00
Martin Diehl ecb8510217 leaner (and hopefully faster) code 2020-01-14 05:32:42 +01:00
Philip Eisenlohr 86f27df0b2 damask.Environment reads from os.environ; python module is packaging-ready 2020-01-13 17:28:28 -05:00
Philip Eisenlohr edbee3a419 Merge branch 'development' into python-module 2020-01-13 15:24:08 -05:00
Martin Diehl 47bcdfc22c [skip sc] vtk output working and tested
need to check syntax check because ifort 17.0 has problems with new
mesh. Works, however, with Intel 17.8
2020-01-13 11:53:37 +01:00
Martin Diehl 76d0383c2f Merge branch 'MoreImprovements' into marc-improvements 2020-01-13 10:04:27 +01:00
Martin Diehl bd4db68a12 support for non QUAD cell type 2020-01-13 10:03:13 +01:00
Martin Diehl f9772a3df8 more descriptive name 2020-01-13 02:51:49 +01:00
Martin Diehl 26442ee783 bugfixes
missing import/outdated test
2020-01-12 19:35:45 +01:00
Martin Diehl 70b73762ed avoid warning due to change in default parameter 2020-01-12 19:21:16 +01:00
Martin Diehl 19e88df571 polishing 2020-01-12 07:53:41 +01:00
Martin Diehl 1315029196 do not clutter comments 2020-01-12 02:06:53 +01:00
Martin Diehl 1bb94f03b8 polishing (prospector was complaining) 2020-01-12 00:21:14 +01:00
Martin Diehl 3938f34978 Merge branch 'MiscImprovements' into MoreImprovements 2020-01-11 22:37:41 +01:00
Martin Diehl 2d9c25f8e5 Merge branch 'development' into MiscImprovements 2020-01-11 20:34:35 +01:00
Philip Eisenlohr 300f1b7015 added options to return "natural" versions of asQ, asRodrig, and asAxisAngle 2020-01-11 11:36:22 -05:00
Martin Diehl 09f42a3991 ang files might have more columns 2020-01-08 15:34:21 +01:00
Martin Diehl 385085de73 correct names for numpy (differ from math) 2020-01-04 01:05:40 +01:00
Martin Diehl e692118ec5 easier to use for single output label 2020-01-03 15:41:15 +01:00
Martin Diehl b5e4e42505 splitext includes leading dot 2020-01-03 14:44:31 +01:00
Martin Diehl 49f3de44b9 limit import statements (numpy already in use) 2020-01-02 18:02:13 +01:00
Martin Diehl 97e7f510e2 wrong time was reported in case of trailing inactive increments 2020-01-02 16:27:42 +01:00
Martin Diehl f5c58517a7 enable one grid point along all directions 2019-12-24 15:59:09 +01:00
Martin Diehl aec9c601d6 some insights from continuum mechanics formulated as test 2019-12-23 15:34:13 +01:00
Martin Diehl 60580cc45a mixed up left/right stretch tensor 2019-12-23 07:16:50 +01:00
Martin Diehl 2cb3213e37 improvements to Table class
- string comparison  should be '!=' not 'is not', latter compares
object, not value
- functions for common operations: append (vstack, growTable) and join
(hstack, addTable)
2019-12-22 22:21:32 +01:00
Martin Diehl 48c21045d7 centralized functionality for ang import 2019-12-22 14:57:57 +01:00
Martin Diehl a7d60dc52a not used anymore
geom class has own report function
2019-12-21 19:10:41 +01:00
Martin Diehl 5b7139dc22 using specialized class 2019-12-21 19:09:28 +01:00
Martin Diehl 6989679d3b using central functionality
- Table class for table data
- grid_filters for grid related functions
2019-12-21 19:03:36 +01:00
Martin Diehl 2cd2d6f506 cell_2_node/node_2_cell work only for periodic data
hence, coordinates and displacements cannot be converted easily
2019-12-21 18:07:04 +01:00
Martin Diehl 3bf9a4deb5 Merge branch 'grid-filters' into MiscImprovements 2019-12-21 17:39:39 +01:00
Martin Diehl 503626473a bugfix: wrong grid order
for x fast, z slow, the shape of the array needs to be reversed
2019-12-21 17:38:16 +01:00
Martin Diehl 0d1ff72c45 Merge branch 'grid-filters' into MiscImprovements 2019-12-21 06:57:38 +01:00
Martin Diehl f0d3b29b82 Merge branch 'development' into MiscImprovements 2019-12-21 06:53:56 +01:00
Martin Diehl 2c5f7d3b5a Merge branch 'development' into grid-filters 2019-12-20 14:32:20 +01:00
Franz Roters 034367fa6a Merge remote-tracking branch 'remotes/origin/noPostResults' into development 2019-12-20 11:40:57 +01:00
Martin Diehl 2fe163be31 Merge branch 'development' into MiscImprovements 2019-12-18 19:57:00 +01:00
Francisco Jose Gallardo Basile 80b559dc00 Merge branch 'no_phase_name_for_genericoutput' into 'development'
No phase name for genericoutput

See merge request damask/DAMASK!113
2019-12-18 18:54:46 +01:00
Martin Diehl 3c42368f66 also use newer regex 2019-12-18 11:29:13 +01:00
Martin Diehl 6a8783bab8 these functions are static
class methods change are allowed to change the attributes of the class.
This is not what we do here
2019-12-13 15:46:40 +01:00
Martin Diehl 5b376712ef bugfix: wrong coordinates 2019-12-13 14:39:10 +01:00
Martin Diehl e5448fc381 avoid code duplication 2019-12-13 14:36:52 +01:00
Vitesh Shah 7d849b639b Point based vtk file in DADF5 class 2019-12-13 14:20:18 +01:00
Martin Diehl b14c15fd9e directly output DADF5 to vtk from python 2019-12-13 12:15:45 +01:00
Martin Diehl 63fc125398 include origin do DADF5
requires updat of file version
2019-12-13 09:12:07 +01:00
Philip Eisenlohr 582f895d18 restored Solver module functionality 2019-12-12 16:58:37 -05:00
Philip Eisenlohr e37daadaff restored environment functionality 2019-12-12 14:57:07 -05:00
Philip Eisenlohr 41ed7ce462 "pip install damask" either locally or from PyPI after upload 2019-12-12 14:32:51 -05:00
Martin Diehl 1d7010778e [skip ci] silence annoying warnings 2019-12-11 19:43:23 +01:00
Martin Diehl 37e52fd81f polishing 2019-12-11 16:51:13 +01:00
Martin Diehl 4c1281b4fc rename changed order in shapes dict.
This resulted in wrong column names when writing to ASCII file

two fixes (one would be enough):
1) keep order (build new directory)
2) write in order of labels in pandas dataframe, not in order in shapes
dict
2019-12-10 20:04:03 +01:00
f.basile ca06c1d3a2 Fix bugs in relatedOperations for NW,GT and GTprime. 2019-12-10 13:49:33 +01:00
Martin Diehl d1fa2a14dc was used only for yield surface fitting 2019-12-09 05:28:00 +01:00
Martin Diehl 53cb59fc47 use pytest instead of hand-written test class 2019-12-08 21:29:26 +01:00
Martin Diehl 6dfe24290c Merge remote-tracking branch 'origin/development' into fix-orientation-relationship-2 2019-12-08 21:10:50 +01:00
Martin Diehl 21431295fb documenting 2019-12-08 20:20:13 +01:00
Martin Diehl 4e2e7d02f6 more sensible interface 2019-12-08 18:54:41 +01:00
Martin Diehl 7dc128ad12 polishing 2019-12-08 18:33:43 +01:00
Martin Diehl 828e82605e ensure that data is correctly ordered 2019-12-08 18:13:45 +01:00
Martin Diehl 8d0c4310cf improvements to grid generation
- handling of origin
- inverse functions: calculate grid,size,origin from regular coordinates
(cell or node). should replace corresponding functionality in util
2019-12-08 18:12:22 +01:00
Martin Diehl 9dc726ff53 polishing 2019-12-08 09:17:57 +01:00
Martin Diehl ba69f5a631 polishing 2019-12-07 22:33:31 +01:00
Sharan Roongta 96710a238d Merge branch 'development' of magit1.mpie.de:damask/DAMASK into incs-no-leading-zero 2019-12-06 15:25:21 +01:00
Martin Diehl 4ddfd82304 better names 2019-12-05 18:32:21 +01:00
Martin Diehl b1ff178109 Merge branch 'new-ASCII' into grid-filters 2019-12-05 18:06:56 +01:00
Philip Eisenlohr 2648a67dcd fixed sort_by to respect updated index (upon subsequent adding of new data) 2019-12-05 12:02:10 -05:00
Philip Eisenlohr 3caf2c1296 condensing code 2019-12-05 09:05:50 -05:00
Martin Diehl 274aaa7359 Merge branch 'new-ASCII' into grid-filters 2019-12-05 10:50:56 +01:00
Martin Diehl 1018b89296 nice to have.. 2019-12-05 10:48:42 +01:00
Martin Diehl 1bf4946e67 invalid escape sequence 2019-12-05 08:37:39 +01:00
Martin Diehl 469d638afb making table class feature complete 2019-12-05 06:57:09 +01:00
Martin Diehl ee8e3386f4 shorter but still descriptive names 2019-12-05 06:16:29 +01:00
Martin Diehl e7a67262f8 clear enough 2019-12-05 06:00:49 +01:00
Martin Diehl 5fdf112f78 allow strings as data in ASCII file 2019-12-05 05:45:27 +01:00
Martin Diehl 1c83572589 more descriptive names 2019-12-05 05:11:58 +01:00
Martin Diehl 381c95bd1e WIP: regrid functionality 2019-12-04 10:41:02 +01:00
Martin Diehl 999321e588 Merge branch 'new-ASCII' into grid-filters 2019-12-04 07:45:01 +01:00
Martin Diehl 285075bb6b ordered alphabetically 2019-12-04 06:15:32 +01:00
Martin Diehl fecd4632b4 correct reporting of time 2019-12-04 05:49:17 +01:00
Martin Diehl 1110affec2 Merge branch 'new-ASCII' of magit1.mpie.de:/damask/DAMASK into new-ASCII 2019-12-04 05:10:01 +01:00
Martin Diehl 9ad8743396 using central functionality 2019-12-03 22:00:21 +01:00
Martin Diehl e006e0ebec functions for spatial coordinates on regular grids 2019-12-03 18:59:59 +01:00
Martin Diehl 8f77843b0f improved naming
- clearer variable names
- no '-' in attributes
- single source of truth
2019-11-30 09:01:37 +01:00
Martin Diehl 354c0123a1 backward compatibility 2019-11-30 08:40:59 +01:00
Martin Diehl 4185fcb4c3 adjust to new naming 2019-11-29 21:40:54 +01:00
Martin Diehl dc3fc8f70c do not clutter with leading zeros 2019-11-29 17:00:48 +01:00
Martin Diehl 76a1506893 small improvements
bugfix: writing correct labels (now consistent with readin)
error handling for inconsistent initialization
2019-11-28 20:18:54 +01:00
Martin Diehl f2e722ed2e polishing 2019-11-28 18:22:34 +01:00
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 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