Commit Graph

110 Commits

Author SHA1 Message Date
Martin Diehl 7bd8452bf8 set return value 2022-01-20 07:56:45 +01:00
Martin Diehl 7b1080fdb7 better and consistent variable name 2022-01-20 07:42:16 +01:00
Martin Diehl 1f86111f57 call SNESSetDM after DMDASNESSetFunctionLocal
following example ex5f.F90, seems to resolve segmentation fault
2022-01-19 22:57:22 +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 1ddf1e5694 support for PETSc with 64bit integers
compiles, but untested
2021-12-21 23:53:46 +01:00
Philip Eisenlohr da9fdf53d2 consistent indentation and line-spacings in reporting 2021-11-15 12:35:44 -05:00
Martin Diehl 4160c4fdb4 fix for parallel HDF5
if filters are applied, writing from one process does not work if the
file is opened for parallel write
2021-08-15 13:26:15 +02:00
Martin Diehl 85735605f8 more flexibility for the L in the load case
Note that mixed boundary conditions for L introduce an ambiguity.
Consider:

L = [[1.0, x, x],
     [  0, 0, 0],
     [  0, 0, 0]]
P = [[x, 0, 0],
     [x, x, x],
     [x, x, x]]

What we need is F^(n+1)=F_dot^(n+1) x Delta_t, where F_dot^(n+1) is
F_dot^(n+1)_ij = L_ik F^n_kj.

So component F_11 has contributions from L_12 and L_13. We first assume
L_12=L_13=0 and then choose F^(n+1)_12 and F^(n+1)_13 to get
P_12=P_13=0. This implicitly gives a solution for L_12 and L_13, which
is however only one out of infinitely many.
2021-07-20 07:10:28 +02:00
Martin Diehl 03b7532cc5 numpy.MaskedArray behavior 2021-07-19 23:27:10 +02:00
Martin Diehl 1c1dc9383e symbolic names 2021-07-19 22:30:20 +02:00
Martin Diehl f9edeb40a5 descriptive names 2021-07-17 11:50:21 +02:00
Martin Diehl 2a84aa7ae4 obvious, no need for comment 2021-07-16 20:32:21 +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 58bc6e2ba6 avoid chained inclusions 2021-07-08 14:27:04 +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
Martin Diehl 0072ebfa64 polishing 2021-03-27 23:17:04 +01:00
Martin Diehl 7320120c5d Merge branch 'development' into avoid_data_copy_restart_MPI 2021-03-26 08:58:03 +01:00
Sharan Roongta fc172921fb unified citation style continued 2021-03-19 10:41:47 +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
Vitesh Shah adcb24d2e1 write data of average quantities non parallel 2021-03-10 16:33:02 +01:00
Martin Diehl 4dd99d4c39 solver is selected in load case, not numerics.yaml 2021-02-28 19:13:20 +01: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 e855083964 systematic names 2021-02-11 14:19:04 +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 97ee7e6ee5 not needed anymore 2020-12-07 17:26:50 +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 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
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
Martin Diehl f8816a6e0c Merge remote-tracking branch 'origin/development' into stress-ramp-loadcase 2020-09-24 16:57:07 +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