Franz Roters
a08d263865
remnoved some unused fuctions from use statements
2013-08-02 06:18:41 +00:00
Christoph Kords
a7f0f4ed79
moved some small part of the code that remembers maximum and minimum stress/stiffness values to different location
2013-08-01 16:27:37 +00:00
Christoph Kords
728facd451
corrected indentation level of parts of the code
...
moved debugging output of stress and stiffness to different position in code
2013-08-01 16:10:56 +00:00
Martin Diehl
ac2ca43cfc
added svn properties
2013-08-01 09:13:46 +00:00
Martin Diehl
2dc985f558
set tolerances to useful values and renamed them.
...
allowed "keyword = value" in numerics.config (simply removing "=" from line)
2013-07-31 15:03:38 +00:00
Martin Diehl
b5a11f9d31
fixed bug in AL, weakened correction slightly
2013-07-30 21:04:41 +00:00
Martin Diehl
81531097f1
changes on convergence tolerances of AL and Polarisation, switched back to immediate correction of stress bc but only when last two average stresses are close to each other (cosine decay)
2013-07-30 15:32:55 +00:00
Pratheek Shanthraj
03d8f14a98
introduced dynamics for high strain rate simulations. so far only works for materials with homogeneous density. the density is read in as an optional argument in the load file using the keyword 'den' or 'density'. if density > 0 then inertial terms are added to the stress equilibrium. an implicit euler time discretisation is used to calculate the inertial terms.
...
dynamic problems are length scale dependent so make sure the geometry size is meaningful (1 m^3 or N m^3 for example is too big for a RVE!).
not specifying a density (density = 0) will perform a quasi static simulation as before.
2013-07-26 16:25:37 +00:00
Martin Diehl
216063fe36
added Polarisation scheme as solver
2013-07-24 13:06:16 +00:00
Franz Roters
4f7cd76b29
renamed texture_rotation into texture_transformation
...
changed keyword for material.config to axes in line with geom_fromAng.py
former keyword rotation is still recognized for compatibility
2013-07-24 11:09:39 +00:00
Franz Roters
f896b4a01e
updated Marc/Mentat integration once more to minimze interference with original instal
...
added support for Marc2013, which is now default in apply_DAMASK_modifications
2013-07-24 08:41:58 +00:00
Martin Diehl
ebe8361af0
decoupled compatibility/equilibrium calculation from stress BC correction. needs more iteration for mildly contrasted materials, but there the basic scheme is better suited anyway. but now converges better for highly contrasted VEs
2013-07-23 17:42:15 +00:00
Christoph Kords
3749cd5564
changed "math_AxisAngleToR" to "math_axisAngleToR" to be consistent with spelling in math.f90
2013-07-22 09:43:35 +00:00
Martin Diehl
bbb0803ce4
itmin was always +1
2013-07-17 19:58:48 +00:00
Martin Diehl
74a7840a59
wrong intent(in) statement fixed
2013-07-15 10:13:28 +00:00
Martin Diehl
8210b14e90
comments for doxygen
2013-07-12 06:57:15 +00:00
Martin Diehl
4407edd802
checked convergence reporting for AL and BasicPETSc, seems to be ok now.
2013-07-08 15:48:13 +00:00
Martin Diehl
27c64ba4ad
corrected line breaking for /echo/ tag
2013-07-08 09:46:38 +00:00
Franz Roters
1db24d2a72
removed duploicate writes
...
changed last occurences of old mode syntax
one more change in the direction of a plain mode, i.e. when there is no collect cycle
2013-07-04 11:59:45 +00:00
Pratheek Shanthraj
8f146ad385
fixed bug in cosine filter
2013-07-02 04:38:18 +00:00
Philip Eisenlohr
8ccdfb27f3
reworked the hexagonal slip system order and adjusted interaction matrices to a logic that facilitates later system additions without altering existing structure.
2013-07-01 14:01:42 +00:00
Franz Roters
4a291dc372
implementation of twin nucleation criteria according to Davids PhD thesis
...
applies for fcc crystal structure only
2013-07-01 13:06:01 +00:00
Martin Diehl
6ec57db0c6
fixed writing out of initial configuration for spectral solver in case of ngrains != 1, small formating improvements in other files
2013-07-01 06:40:09 +00:00
Martin Diehl
40ace5c666
more documentation and parameters capitalization unified and using ipc in all modules (sometimes called gr)
...
nonlocal: only missing line continuation in string fixed
2013-07-01 06:10:42 +00:00
Philip Eisenlohr
f408ea3381
corrected error msg typos
2013-06-30 00:17:58 +00:00
Martin Diehl
5f20c86905
small documentation and output fixes
2013-06-28 18:59:21 +00:00
Martin Diehl
ef2c2af471
doxygen documentation for J2
2013-06-28 18:58:10 +00:00
Philip Eisenlohr
fd8d85896a
error msg in case of unknown keyword was not properly trimmed --> 64kB of spaces...
2013-06-27 16:41:00 +00:00
Philip Eisenlohr
f9f76fa158
missed these three files in last commit!
...
[added possibility for multi-level inclusion of files in *.config and loadcase files.
include subfiles by stating
{path/to/include}
]
2013-06-26 19:19:41 +00:00
Philip Eisenlohr
98528f9a89
added possibility for multi-level inclusion of files in *.config and loadcase files.
...
include subfiles by stating
{path/to/include}
2013-06-26 19:19:00 +00:00
Martin Diehl
0f1bb4f555
corrected doxygen documentation tags
2013-06-25 06:08:33 +00:00
Harsha Phukan
aea8ab144a
changed all file reads consistently to 65536 bytes length
2013-06-24 13:33:30 +00:00
Franz Roters
9a1ad7e089
added third value for slip twin interaction in fcc dislotwin example
2013-06-24 12:53:56 +00:00
Pratheek Shanthraj
7b2e48df68
new 'gradient' filter based on greens function from gradient elasticity theory. work in progress
2013-06-21 17:26:05 +00:00
Philip Eisenlohr
81cdd2b1cc
added second type prismatic slip system for hexagonal lattices as 6th slip family.
...
consequently, 4 new interaction types (21,22,23,24) available for slip/twin and twin/slip.
interaction of slip/slip got rearranged and now has 42 types...
list of former --> new:
6 7
7 8
8 9
9 10
10 11
11 13
12 14
13 15
14 16
15 18
16 19
17 20
18 22
19 23
20 25
21 28
22 29
23 30
24 31
25 33
26 34
27 35
28 37
29 38
30 40
2013-06-14 10:20:31 +00:00
Franz Roters
a78f91311e
added svn properties: line ending: LF and keywords: ID
2013-06-14 09:49:33 +00:00
Pratheek Shanthraj
1c25403b5b
changed default values of AL spectral solver tolerances. should've been done along with commit 2254.
2013-06-12 10:06:04 +00:00
Christoph Kords
daf89806b1
fixed bug in deltaState; used to lead to unpredictable values in accumulated shear, since deltaState was not defined at this state position
2013-06-11 21:03:23 +00:00
Martin Diehl
296a5040b9
fixed bug in initialization when reading in material.config.
...
Fortran does not short-circuit, e.g. (if a>0 .and. b(a) ==c) might cause an out-of-bounds error when a=-1 it'll try to access b(-1)!
2013-06-11 20:16:40 +00:00
Martin Diehl
6f7740a243
made doxygen working for MSC.Marc again, small changes on the todo-statements for doxygen, they don't work on single lines of codes but only on module/variables
2013-06-11 16:35:04 +00:00
Ding Wang
ce9f92a884
polishing output
2013-06-11 10:27:38 +00:00
Martin Diehl
1b53bad9a4
removed doubled equal sign in compiler name definition
2013-06-11 09:06:25 +00:00
Martin Diehl
a7b6093edc
fixed bug in include_linux64 for Marc 2012, tests should run again after updating the copy in /msc/....
...
polished two other versions of this file
unified output format for /echo/ in material.f90
2013-06-11 07:28:08 +00:00
Christoph Kords
55735b9580
grainrotation output now uses corrected rotation math
2013-06-07 09:35:00 +00:00
Martin Diehl
5d7f7f1bc5
reverted accidently commited changes to Makefile.
...
one public statement in math.f90 still prevented compilation of core module, fixed that
2013-06-07 07:27:12 +00:00
Martin Diehl
e6ca36c7d7
removed old DAMASK_marcXXXX.f90 source files.
...
If you just use one Marc version, simply select DAMASK_marc.f90, this matches for all releases.
DAMAKS_marc.marc compile with Marc 2010 does not work with Marc 2012. In case you need more than one Marc version in parallel, run symLink_Code.py in /code/setup to generate symlinks for Marc version 2010,2011,2012
2013-06-06 16:04:40 +00:00
Martin Diehl
06b977ff61
added public statements to fftw functions and constants after whole math module is private now
2013-06-06 09:25:27 +00:00
Christoph Kords
622e2dcf15
Fixed bug in math rotations: passive and active rotations were not clearly distinguished and partly mixed up; yet, luckily, only resulted in wrong output of euler angles.
...
Now fixed with following convention:
Rotation conversions do not switch implicitly from active to passive or vice versa EXCEPT when converting to or from any "Euler" type (Euler angles or Euler axis/angles). Those functions expect a passive rotation as input if converting to Euler type and return a passive rotation if converting from Euler type.
2013-06-05 19:10:37 +00:00
Philip Eisenlohr
84c43741a6
reworked distribution of microstructure constituents. now each material point represents "as good as possible" the fractional content of constituents.
...
removed error for volume fractions not equalling 1.
implemented capability to rotate the texture given in material.config.
2013-05-29 17:23:49 +00:00
Martin Diehl
a21dd816c7
init reporting of constitutive_*.f90 had less/to much spaces, renamed label to LABEL because it is a parameter.
...
removed debug output of geom_fromEuclideanDistance.py
2013-05-28 17:31:55 +00:00
Christoph Kords
a6361738fb
(again!) fixed bug that was introduced in rev 2085: messed up indices of stiffness matrix in calculation of Poisson's ratio
2013-05-26 14:31:31 +00:00
Christoph Kords
ab997f19ac
fixed bug in nonlocal state init that was introduced in rev 2438 and used to reset states from other constitutions
2013-05-24 13:43:44 +00:00
Christoph Kords
c0539d2383
replaced all remaining occurrences of state indices
2013-05-24 11:48:34 +00:00
Christoph Kords
e2d970ce57
combined some state indices to an array with a more generic name
2013-05-24 09:02:30 +00:00
Christoph Kords
ad4a66cb4e
use named state variable indices in "deltaState"
2013-05-23 21:46:15 +00:00
Christoph Kords
332b207270
use named state variable indices in "kinetics" and "microstructure"
2013-05-23 21:40:00 +00:00
Christoph Kords
5900076d72
rename state variable index for critical resolved shear stress from "iTau" to "iTauF"
2013-05-23 21:32:36 +00:00
Christoph Kords
ad2a245cdf
use named state variable indices in "microstructure"
2013-05-23 21:28:45 +00:00
Christoph Kords
c02645c996
use named state variable indices in "aTolState"
2013-05-23 21:13:56 +00:00
Christoph Kords
f04a531e9b
use named state variable indices in "stateInit"
2013-05-23 21:10:31 +00:00
Christoph Kords
65524b7f84
corrected named indices for state variables; however, not yet used
2013-05-23 20:30:06 +00:00
Christoph Kords
e249366ded
introduced named indices for state variables; however, not yet used
2013-05-23 20:15:23 +00:00
Christoph Kords
72129cae00
removed prefix "constitutive_nonlocal_" from all private variables
2013-05-23 19:56:36 +00:00
Christoph Kords
b559666436
replaced FE_maxNipNeighbors with mesh_maxNipNeighbors, which is sufficient for memory allocation, since this gives the maximum of neighbors in all cp elements
2013-05-23 17:46:21 +00:00
Christoph Kords
77e9b80a16
bug fix for calculation of fluxdensity and slipnormal/direction in constitutive_nonlocal_postResults: indices for Fe were missing
2013-05-23 14:52:57 +00:00
Christoph Kords
41faa60323
fixed bug in backstress calculation for elements with periodic neighbors
2013-05-23 12:36:48 +00:00
Christoph Kords
3aaf60cffe
polishing
2013-05-23 12:25:56 +00:00
Christoph Kords
ec2503253e
added output of slip direction and slip normal
...
changed name of fluxdensity outputs
2013-05-23 08:19:36 +00:00
Pratheek Shanthraj
399a0218c7
bug fix on commit 2424 that caused compilation errors
2013-05-22 09:40:23 +00:00
Christoph Kords
e758ee32be
improved accuracy of accumulated shear output: take shear rate from LpAndItsTangent for time integration
2013-05-21 10:04:52 +00:00
Nader Zaafarani
882c3e155f
Adding two titles for accumulated shear due to "slip" and "twin"
2013-05-19 20:34:40 +00:00
Nader Zaafarani
a104fda3b9
Adding accumulated shear due to "slip" and "twin" as two outputs
2013-05-19 20:32:06 +00:00
Christoph Kords
3759024b42
forgot to set neighboring_rho (also reverting changes made in rev 2384)
2013-05-19 19:23:31 +00:00
Nader Zaafarani
871df5427d
Correction for shear_rate_twin in postresults: characteristic twin shear was missing
2013-05-19 15:45:34 +00:00
Martin Diehl
c7ba8a2a9b
introduced plain mode (no ping pong) again and added test for MSC.MArc 2012 as prove that its working
2013-05-17 17:52:46 +00:00
Martin Diehl
4416efe89b
doxygen documentation for constitutive_none
2013-05-17 17:09:42 +00:00
Martin Diehl
7833f79f75
replaced numerics_unitlength with mesh_unitlength
2013-05-17 16:52:19 +00:00
Christoph Kords
0504fb3b21
reverted changes made in rev2384
2013-05-17 12:54:47 +00:00
Ding Wang
57b591ff39
corrected PETSc debug and Capitalization
2013-05-16 08:55:10 +00:00
David Mercier
190a59b707
set Lib_VTK_IO-master.zip and related files back to initial version, new version is not working with MSC.Marc 2010
2013-05-15 16:43:18 +00:00
Christoph Kords
7ae786e802
fixed bug in mesh_spectral_build_ipneighborhood that was introduced in rev2390: loop counter were mixed up
2013-05-14 09:45:22 +00:00
Martin Diehl
364267afa2
fixed bug when having . at end of directory name, added check to see if the specified working directory exists
2013-05-13 14:10:48 +00:00
Martin Diehl
872f6a9d90
introduced possibility so specify deformation gradient aim at end of load case, rate will be calculated using difference between start of load case and aim. Needed for cyclic loading.
...
Use keyword "f" for this behavior, don't use it as short name for freq any more!
2013-05-13 09:44:23 +00:00
Christoph Kords
6fac7c347c
fixed bug in constitutive_nonlocal_kinetics that was introduced in rev2088 along with the non-Schmid behavior: nonSchmid matrix of last slip system was used for all slip systems; led to extremely bad convergence due to flawed dLp_dT
2013-05-10 22:29:12 +00:00
Martin Diehl
b83b557af2
updated Lib_VTK_IO again. Contains small bug fix ans support for Base64 encoding
2013-05-10 12:57:00 +00:00
Christoph Kords
d9cc42daef
slight change in flux formulation: no flux to neighbor, not only if there is a sign change in the velocity, but also if the neighboring velocity is exactly zero
2013-05-10 08:42:42 +00:00
Martin Diehl
cfac73043d
some lines in crystallite.f90 exceeded limit of 132 characters
...
fixed bug in Lib_VTK_IO.f90 (informed author as well)
added zip file containing source of Lib_VTK_IO.f90
2013-05-08 17:48:00 +00:00
Martin Diehl
755e0e2440
vtk files are now correctly written to current working directory.
...
updated Lib_VTK_IO.f90
2013-05-08 16:10:21 +00:00
Martin Diehl
85d4a37d95
moved public data res,size and homog from mesh to DAMASK_spectral_utilities (as grid and geomSize)
2013-05-08 15:52:29 +00:00
Christoph Kords
3b788720e5
added crystallite output "neighboringelement" and "neighboringip"
...
some polishing in crystallite_postResults
2013-05-08 12:02:30 +00:00
Martin Diehl
b2a3c9235b
fixed some warnings issued by gfortran (type conversion, not needed use statements)
2013-05-08 09:23:47 +00:00
Christoph Kords
6e64b5c476
better not allow for deads to contribute to flux, since not clear at which interface they got stuck
2013-05-07 18:47:17 +00:00
Christoph Kords
1c2c9b8436
ip neighborhood was screwed up for spectral solver as of rev 2332 due to new "mesh_spectral_ipNeighborhood": used to have fastest index in z direction although it should be in x direction!
...
also removed output of node twins in "mesh_tell_statistics" when using spectral solver, since not allocated
2013-05-07 17:50:58 +00:00
Christoph Kords
fb5f94812f
corrected format strings in mesh_read_meshfile and mesh_write_meshfile
2013-05-07 13:27:51 +00:00
Christoph Kords
c7f987a3c1
"unitlength" parameter, which determines the physical size of the mesh, now available as a global mesh variable "mesh_unitlength" and written to the .mesh file during init.
...
Hence, it is available to the marc_deformedGeometry.py script via "mesh_init_postprocessing()" and "mesh_get_unitlength()", so no need for setting the scaling of the displacement vectors explicitly through an option; now displacements and nodal positions are always consistent
2013-05-07 13:06:29 +00:00
Franz Roters
d2416abdb4
introduced new keyword 'rotation' to specify texture rotation
...
ATTENTION: so far it is read but NOT yet applied!!!
waiting for updated code for orientation assignement
2013-05-02 08:35:37 +00:00
Martin Diehl
b98ce3d22d
fixed out of range bug introduced with singleRun changes in rev. 2356
2013-04-30 12:14:07 +00:00
Martin Diehl
2a5dfbbfa0
removed #define Marc and substituted #ifdef Marc by #ifdef Marc4DAMASK which is defined by either the submit scripts or DAMASK_marcXXXX.f90
2013-04-30 09:49:30 +00:00
Philip Eisenlohr
e912c74da5
added possibility to select "mapping" of multiple grains.
...
'average', 'avg', 'mean' --> result averaged over Ngrains.
'parallel', 'sum' --> result added up from Ngrains.
2013-04-30 09:40:06 +00:00
Franz Roters
0d95d33646
use disk shape for twin also in initialization
2013-04-30 07:34:05 +00:00
Martin Diehl
533fcec96f
named some loops and made BUTCHER TABLEAUs parameters in crystallite_integrateStateRKCK45
2013-04-29 11:17:30 +00:00
Christoph Kords
cc72c0b17b
added two new scripts:
...
"marc_extractData" is a simple variant of the "postResult" script that extracts all data from a macro *.t16 file (quadratic elements not yet supported) and writes it into an asciitable
"addDataToGeometry" searches for corresponding *.txt and *.vtk file in a given directory and adds the data from the *.txt file as SCALARS to the *.vtk file
first script needed an additional function in mesh that returns the corresponding node of a given ip in a specific element
2013-04-28 20:56:17 +00:00
Martin Diehl
9fb6d8167b
simplified logic for single run, now not checking for extra arguments but simply checking if start and end elem/IP are the same
2013-04-26 13:23:36 +00:00
Martin Diehl
60739abb0d
corrected statistics reporting in case of cutback
2013-04-26 09:13:39 +00:00
Martin Diehl
f18c6c5903
fixed bug causing no fluctuation in case of using with 3Dvisualize
2013-04-25 14:43:20 +00:00
Martin Diehl
d05ebff400
introduce commented new output with stream (no markers at begin/end) and with grid/size instead of res/dim
2013-04-25 14:03:54 +00:00
Martin Diehl
6e1cbb427d
parallel execution currently doesn't work, now disabled for explicit
2013-04-24 12:32:25 +00:00
Christoph Kords
650b7ef4ac
added python script that produces vtk files with the (node based and ip based) deformed mesh from marc output file
2013-04-23 18:30:56 +00:00
Christoph Kords
51552b027d
fixed bug: initialize computation mode to zero, used to be unset for lovl=4 and not(timinc < theDelta .and. theInc == inc), which unpredictably caused trouble with marc
2013-04-23 14:42:22 +00:00
Martin Diehl
5837b25e27
accidently commited constitutive.f90 wasn't working, fixed now
2013-04-23 07:37:14 +00:00
Martin Diehl
d5e4a354e6
misplaced space corrected
2013-04-22 15:35:15 +00:00
Franz Roters
b5b6bf56d4
reintroduced Calculation of forest projections for edge dislocations, got lost after rev.1908
2013-04-22 15:17:24 +00:00
Martin Diehl
8da7544978
marc doesn't need error prone setup_code any more, moved Marc includes from code/include to lib/includeMarc
...
DAMASK_marcXXXX.f90 now is not a copy any more but contains one definition and an include statement
setup_code of spectral solver is now replaced by the standard 1) configure 2) make 3) make install
2013-04-22 14:41:33 +00:00
Christoph Kords
a7706090d2
neighborhood relations were screwed up for some elementtypes as of version 2318, might have caused segmentation faults with nonlocal model, now fixed
2013-04-22 13:35:35 +00:00
Philip Eisenlohr
49ef6d7193
spectral_build_neighborhood now "hidden" in spectral compile part. (should not interfere with Marc/Abaqus compile anymore)
2013-04-22 09:01:58 +00:00
Christoph Kords
ca99274a5d
fluxes now always periodic for spectral solver, no need to explicitly state this in the geom file by use of "periodic" keyword
2013-04-22 08:32:51 +00:00
Christoph Kords
60fa91be9a
calculation of cellnode positions now available in python via damask.core
...
first call damask.core.mesh.mesh_init_postprocessing(meshfilename) to initialize all necessary mesh variables
then damask.core.mesh.mesh_build_cellnodes(nodes) calculates the cellnode positions for a given list of node positions
the meshfile that is needed for the init is created automatically by mesh_init in DAMASK
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
For marc simulations, run
./code/setup/setup_code.sh
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2013-04-21 18:48:59 +00:00
Philip Eisenlohr
d203e8dece
removed extra comma (might have caused issues?)
2013-04-19 16:05:13 +00:00
Philip Eisenlohr
e8f238a413
added specialized ipNeighborhood calculation for spectral solver case
2013-04-19 16:04:20 +00:00
Christoph Kords
12760026a4
last version still did not compile: IO_write_jobFile was not used by mesh_init
2013-04-19 13:02:37 +00:00
Christoph Kords
55bc741d1d
last version did not compile: fixed small typo in mesh_init
2013-04-19 12:59:45 +00:00
Martin Diehl
4bc5e6717b
fixed small bug when calculating mesh_Ncells
2013-04-19 12:41:06 +00:00
Christoph Kords
103c770ee6
fixed bug in cell generation: "FE_Ncellnodes" was not correct for elem type 17 and 136
...
too much memory allocated for mesh_cell
2013-04-18 17:56:14 +00:00
Martin Diehl
6b46a9c338
introduced output of initial geometry (vtk file) to mesh
2013-04-18 16:40:49 +00:00
Martin Diehl
8b2d9d8155
further improvements on implementing the plain mode
2013-04-16 17:07:27 +00:00
Martin Diehl
2ba986be2a
introduced new dummy module "libs" for inclusion of further library sources. contains kdtree2 and Lib_VTK_IO at and is enabled for the spectral solver only at the moment
2013-04-16 12:45:12 +00:00
Christoph Kords
2a6ac44496
Major restructuring of mesh.f90 due to introduction of "cells". A cell is the volume (area in 2D elements) that surrounds an ip. It is described by up to 8 cell nodes and is used to calculate ip volume, area, and face normals. It can also be used to generate a mesh for e.g. paraview that contains ip output as cell centered data.
...
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
For marc simulations, run
./code/setup/setup_code.sh
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2013-04-15 08:13:20 +00:00
Christoph Kords
eaccf88e12
fixed bug that was introduced in the element type mapping in version 2305
2013-04-10 13:22:02 +00:00
Christoph Kords
9b1fd579d4
corrected phase numbering in example material.config
2013-04-10 12:09:09 +00:00
Martin Diehl
ddcc795461
allowed arbitrary grid (formerly know as resolution), i.e. any integer>1 in each dimension is possible.
...
removed square root correction for divergence (doesn't make sense)
fixed FFT debug of spectral solver
2013-04-10 10:19:16 +00:00
Christoph Kords
4338cd13bc
- added element type 54 for macro (2d 8node 4ip reduced integration)
...
- automatically raising error for unknown element type inside mapping function
2013-04-10 09:38:40 +00:00
Christoph Kords
338e338c9a
- fixed bug in volume calculation of 2d elements
...
- subroutine "mesh_build_ipVolumes" uses openmp parallelization
2013-04-10 08:24:53 +00:00
Christoph Kords
d80d416c32
2d elements now have a volume corresponding to a thickness of 1; used to have zero volume
...
now also 2d elements can be used with nonlocal model
2013-04-09 18:07:30 +00:00
Christoph Kords
5b508b5ee4
no need to exclude any geometry type from usage of nonlocal model
2013-04-09 13:10:31 +00:00
Martin Diehl
924d943edc
simplified interface of CPFEM_general (removed P and F, made cs and dcs/dE optional)
...
commented and cleaned up the marc interface.
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
For marc simulations, run
./code/setup/setup_code.sh
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2013-04-09 10:08:00 +00:00
Martin Diehl
7b5a202e8c
enabled alternative (and soon standard) keywords grid (resolution) and size (dimension).
...
removed errors for odd resolution
2013-04-08 14:22:32 +00:00
Christoph Kords
ad879ebcf9
forgot to delete all occurrences of obsolete "constitutive_nonlocal_ accumulatedShear" in last commit
2013-04-08 08:51:12 +00:00
Christoph Kords
10e50bf41d
improved accuracy of "accumulated shear": now added as a state variable, which facilitates integration (dotstate=shearrate); needs absolute tolerance value for state integration in material.config
2013-04-04 13:37:14 +00:00
Christoph Kords
3c25723139
- make sure that formerly blocked density is not able to move to neighbor until it is remobilized
...
- added some explicit indices instead of ":"
2013-04-03 16:29:48 +00:00
Christoph Kords
6d3f05b387
small changes in nonlocal constitutive model:
...
- make sure neighboring density is always greater equal zero
- no extra Bauschinger in postResults
2013-04-03 16:22:55 +00:00
Martin Diehl
5b8257a7f9
added debugging possibility for MSC.Marc, rename parameters to CAPITALS
2013-03-31 13:06:49 +00:00
Martin Diehl
2f76365ac8
fixed wrong string concatenation
2013-03-30 19:43:06 +00:00
Christoph Kords
965ab38217
corrected error bounds for spectral parameter "maxCutback"
2013-03-28 16:04:47 +00:00
Martin Diehl
d59e072209
general polishing
2013-03-28 13:50:20 +00:00
Martin Diehl
7f37f55904
added missing line continuation in numerics and explicit private statements in the other files
2013-03-28 10:37:00 +00:00
Martin Diehl
d2ae06015a
moved "Random is random" to output of random seed, cleaned up a little
2013-03-28 10:02:11 +00:00
Martin Diehl
745ca5a6a5
added "public" (and where possible "protected") statements to functions/subroutines/variables/parameters where needed
...
added -fmodule-private to compile options for gfortran, i.e. gfortran won't compile anymore if an entity is not explicitly declared as public but used in another module to ensure stronger encapsulation
2013-03-28 07:40:30 +00:00
Christoph Kords
b8f8d66f82
total density used in backstress calculation now based on average of neighborhood
...
fixed small bug in state_init: random distribution of density was probably not working correctly, as some variables were not properly initialized
2013-03-27 13:04:01 +00:00
Martin Diehl
39a70e8a19
fixed bug in coordinate calculation when no average F was given (scaled wrong by ncp_elems**2)
...
other changes: just polishing + some more comments
2013-03-27 12:28:55 +00:00
Christoph Kords
b6aecdac17
corrected debugging output of node twins
2013-03-27 10:25:37 +00:00
Christoph Kords
e25af5db04
added function for finding the (non-periodic) nearest neighbor
2013-03-27 10:14:44 +00:00
Christoph Kords
44eb771583
added crystallite output of current ip coordinates
2013-03-27 10:12:28 +00:00
Martin Diehl
15b6242585
set more appropriate default values for spectral solver tolerances (abs stress BC was at huge())
2013-03-26 16:36:52 +00:00
Martin Diehl
33dc8251c0
saved some memory not copying data within one function
2013-03-25 19:02:12 +00:00
Franz Roters
97fe4400ff
corrected comment explaining structure of nBlock
2013-03-25 18:36:21 +00:00
Martin Diehl
e6f6c22a30
polished Abaqus Standard, changed inclusion of OMP functionality from "spectral style" (include) to "marc style" (use) to prevent explicit from crashing
2013-03-25 18:25:15 +00:00
Martin Diehl
966ad2826b
merged two-stepped subroutine call into one call, added comments and cleaned up.
...
working for small example (with and without openMP), don't know if the results make any sense
2013-03-25 17:45:58 +00:00
Christoph Kords
19655c2d92
significantRho check was flawed for dipole density
2013-03-25 17:36:04 +00:00
Martin Diehl
d55ba3e3e6
now using correct exit routine for Abaqus/Explicit
2013-03-25 13:52:22 +00:00
Franz Roters
02f092492e
updated copyright header
2013-03-22 17:35:05 +00:00
Philip Eisenlohr
5b96c1d62a
scaling of deformation gradient fluctuations now possible in x,y,z independently (give array).
2013-03-22 15:09:55 +00:00
Pratheek Shanthraj
be655ae536
Changed AL solver errors to absolute. Stress boundary error now max of relative and absolute error
2013-03-22 14:46:55 +00:00
Martin Diehl
2a6f66d504
Abaqus explicit now with correct interface, seems to work now
2013-03-21 17:24:58 +00:00
Christoph Kords
cee90bbdb3
simplified dislocation kinetics: dropped relativistic correction of velocity, since the infinite attack frequency already sets a limit for the velocity; dropped second; also dropped the correction term for backward jumps, since it was probably not meaningful
2013-03-21 12:52:29 +00:00
Franz Roters
0b10c52b77
restore Jacoby after cutback, was lost during restructering
2013-03-15 06:27:04 +00:00
Martin Diehl
dd06d07e1c
set default number of iteration for spectral solver to 250 instead of 40, abaqus doxygen now does the correct inclusion (everything appeared twice before)
2013-03-14 23:10:02 +00:00
Martin Diehl
1779510dda
remove some unused variables, set default value for divergence calculation to 1.e-5 and made calculation independent of dim and res
2013-03-12 18:48:28 +00:00
Martin Diehl
3e2ecbe0a3
added time stamp to init of lattice
2013-03-07 22:45:00 +00:00
Martin Diehl
b9e0326240
added function to calculate the gradient, addGradient.py will follow
2013-03-07 07:58:42 +00:00
Martin Diehl
1ce6028ad3
simplified CurlFFT and DivergenceFFT functions, and did the last changes to Utilities related to the new structure of the spectral solver
2013-03-06 19:34:30 +00:00
Martin Diehl
60633ffd98
some doxygen corrections
2013-03-06 14:41:15 +00:00
Pratheek Shanthraj
1f4d7c2ca4
changed reference stiffness to min max avg from volume avg. using terminally ill information in convergence check
2013-03-06 14:31:13 +00:00
Martin Diehl
7e0ea5dd04
hickups in doxygen documentation fixed
2013-03-05 14:35:26 +00:00
Pratheek Shanthraj
5c1185a5d2
renamed F_lambda to F_tau for clarity. using stress tangent to precondition equations
2013-03-04 09:49:40 +00:00
Martin Diehl
ada2beb8b8
reorganized calculation modes for CPFEM, now having better readable and cleaner structure
2013-03-01 11:48:29 +00:00
Martin Diehl
33e75972cc
unified indices used for better understanding
2013-03-01 09:36:45 +00:00
Pratheek Shanthraj
72bc1df832
forgot in previous commit
2013-02-28 17:37:26 +00:00
Pratheek Shanthraj
0209a1d5a7
restructured AL solver to resemble polarization scheme and introduced alpha and beta parameters in numerics to determine what kind of solution you want. alpha = beta = 1 results in the AL scheme. alpha = beta = 2 results in the accelerated scheme. safe values are anything in between. changed the solver to use stress calculations on the campatible field which seems to result in faster convergence.
2013-02-28 17:35:02 +00:00
Martin Diehl
59da88460e
preparation for introduction of plain mode and restructuring of calc modes for CPFEM_general
2013-02-27 20:41:14 +00:00
Christoph Kords
875abcd06f
replaced some array assignments, which might have caused trouble when using the "timeSyncing" option, by parallelized loops of scalar value assignments
2013-02-27 16:36:12 +00:00
Christoph Kords
62e55483f7
fixed bug in lattice: line continuation character was missing
2013-02-27 10:49:23 +00:00
Christoph Kords
3736ab1d97
added shortcuts for two do loops in the "timesyncing" procedure
...
math_pDecomposition enclosed by omp critical statement; somehow, this subroutine is not thread safe, not clear what exactly the problem is
2013-02-27 10:32:37 +00:00
Martin Diehl
bac186c5b7
removed 2003 standard initialization expression not supported by ifort so far
2013-02-27 07:35:53 +00:00
Martin Diehl
0be6706483
some more detailed doxygen comments
2013-02-26 19:01:31 +00:00
Martin Diehl
04c2b22766
removed time information from interface routines, should work now
2013-02-26 12:49:07 +00:00
Martin Diehl
9ec87e8d1f
moved include statement of IO.f90 before corresponding use statement, still untested
2013-02-26 06:28:28 +00:00
Martin Diehl
72418f7b60
removed -c from options to compile_spectralSolver and added functionality to remove "-c" or "--compile" from command line arguments befor calling compile_spectralSolver
2013-02-25 18:46:36 +00:00
Pratheek Shanthraj
07ff1f7c93
reporting current time for most module inits
2013-02-25 16:34:59 +00:00
Pratheek Shanthraj
5b16f57727
added int vec pointer for more efficient memory allocation of homog and micro counting (elemsOfHomogMicro) in material.f90
2013-02-25 13:13:52 +00:00
Martin Diehl
8f2e164fd2
some more documentation, mainly on the exit codes
2013-02-23 00:24:30 +00:00
Martin Diehl
393c60565d
one line was beyond 132 characters
2013-02-22 05:38:02 +00:00
Martin Diehl
42b96354db
doxygen comments
2013-02-21 23:08:36 +00:00
Martin Diehl
1f86e098ba
doxygen documentation, enabled uncommented debug statement to be turned on by switches, minor polishing
2013-02-20 22:06:15 +00:00
Martin Diehl
a98be4e0cf
IO_error and IO_warning crashed for string of zero length (or only containing whitespaces), fixed now.
...
Also added BEGIN and END statement to numerics in case of non-presen DAMASK_NUM_THREADS, would prevent this error and is better for debugging
2013-02-20 21:56:59 +00:00
Martin Diehl
dfe34fd162
specified quit as external as it is not part of a module
2013-02-20 14:37:12 +00:00
Martin Diehl
ecbc15abd0
doxygen related changes: corrected arrows in material.f90 and replaced $REVISION$ by substitution key to be changed after test
2013-02-19 22:12:05 +00:00
Philip Eisenlohr
d8da2f60d8
added core module function math_periodicNearestNeighborDistances
2013-02-19 14:56:26 +00:00
Philip Eisenlohr
7461e13c1e
relocated spectral_quit() into driver code.
...
added (dummy) core_quit() for Python damask module.
2013-02-19 14:54:34 +00:00
Philip Eisenlohr
b57d001e71
added hints on offending positions when parsing material.config
2013-02-15 08:26:38 +00:00
Philip Eisenlohr
c1cf446774
parsing of material.config file now expects adequate number of (slip/twin) family entries according to given lattice type.
...
used to read up to maxN, but that caused unnecessary IO_warnings...
2013-02-14 22:24:55 +00:00
Martin Diehl
cd0325baf1
introduced atol_twinfrac for dislotwin
...
set values in material.config example
atol_rho 1.0,
atol_twinFrac 1.0e-7
2013-02-14 09:57:26 +00:00
Martin Diehl
77c0b32af9
removed possible (but not-working) output of schmid_factor_shearband from dislotwin
2013-02-14 08:53:17 +00:00
Martin Diehl
d715ec769b
removed debug statements from symlink_Code.py, added autodetection for fortran compiler and disabled compiling on default
2013-02-13 18:45:49 +00:00
Martin Diehl
1496c62258
updated doxygen config file for FEM solvers, replaced some external statements, removed debugging options from abaqus_v6.env causing Abaqus to crash (didn't detect the bug so far), added new homogenization test to automator, added more debug options + comments to Makefile
2013-02-13 17:54:56 +00:00
Martin Diehl
b78fafc3b5
corrected integer initialized to reals
2013-02-13 15:47:00 +00:00
Martin Diehl
12b81a2b75
moved second file extension (.pes) into DAMASK_abaqus_*.f
2013-02-13 10:56:50 +00:00
Franz Roters
35346b70b5
fixed RGC homogenization in case dt==0
...
removed misplaced parameter statement in IO.f90
2013-02-13 09:36:06 +00:00
Martin Diehl
0856a7aa32
fixed bugs and simplified warning reporting when reading in int, float, and string values
2013-02-12 19:00:41 +00:00
Martin Diehl
59a265ec7f
forgot intent(in) statements needed for pure routines
2013-02-11 10:56:10 +00:00
Martin Diehl
f0b4281400
removed unused variables, added pure statements, and declared external functions as external (using gfortrans debug option)
2013-02-11 10:43:45 +00:00
Martin Diehl
c7c81a5ab5
removed unused variables and declared external functions as external
2013-02-11 09:44:17 +00:00
Martin Diehl
a89efaa4a6
added missing bracket and substituted one more forall by do loop
2013-02-09 08:23:47 +00:00
Martin Diehl
f928d0ca0f
some changes on the IKML libs, now using explicit linkin
2013-02-09 08:17:12 +00:00
Martin Diehl
e9f351c69b
forgot to commit
2013-02-08 15:56:58 +00:00
Martin Diehl
147cc8efca
removed debug statement
2013-02-08 15:56:24 +00:00
Martin Diehl
e644c6dbc5
improved reading in of values, now only warnings in case of problematic entries in material.config
...
divergence calculation sqrt scaling optionally introduced for basic scheme spectral solver
2013-02-08 15:55:53 +00:00
Martin Diehl
59e59c90c5
added Option DEBUG to Makefile to turn run time debugging on, compile tests use this option
2013-02-08 15:43:15 +00:00
Philip Eisenlohr
32a416e298
fixed memory leak associated to accumulated shear storage.
2013-02-08 13:33:25 +00:00
Philip Eisenlohr
c7740b41a5
added possible accumulated shear output request to example list of phenopowerlaw
2013-02-07 11:09:14 +00:00
Franz Roters
eacf6f1196
now also fixed the abaqus part
2013-02-07 10:45:10 +00:00
Franz Roters
a036f1eb3a
as some IO functions are no longer pure I changed some forall statements to ordinary do loops
2013-02-07 08:52:47 +00:00
Philip Eisenlohr
722d5574fb
added output capabilities for accumulated shears on slip and twin systems.
2013-02-06 18:09:11 +00:00
Mahesh Balasubramaniam
362cbf3359
Made corresponding changes in the constitutive files and DAMASK_spectral_driver and interface files with respect to the changes made to IO.f90
2013-02-06 16:45:34 +00:00
Mahesh Balasubramaniam
b591dd5f33
made changes to string, int, float interpretations and added warnings.
2013-02-06 16:41:09 +00:00
Franz Roters
c4b877d4f1
replaced missued family index by system index
2013-02-06 08:45:08 +00:00
Mahesh Balasubramaniam
037081831b
last commit did't compile, hope it's working as it should now
2013-02-05 20:07:25 +00:00
Martin Diehl
4997328de1
added use statements
2013-02-05 15:03:36 +00:00
Philip Eisenlohr
865842b0ed
LpandTangent assumed to be called with deviatoric stress input.
...
Now calculates deviator internally...
(Might have led to non volume preserving deformation.)
2013-02-05 13:47:00 +00:00
Philip Eisenlohr
79e7deca55
introduced dedicated calculation of interface normals in IP neighborhood. (2D elements did not work so far..!)
...
fixed definitions of some (2D) interface planes to have all normals pointing outward.
removed "int, private :: i" defined for spectral compilation.
2013-02-05 13:27:37 +00:00
Martin Diehl
cc9eb685fe
fixed wrong setting of coordinates in spectral solvers and removed old python scripts for setup of code and processing
2013-02-05 12:31:44 +00:00
Franz Roters
45344cff6b
added check if nGrains==1 when non-local plasticity is used
2013-02-04 14:34:01 +00:00
Franz Roters
01a7850517
in Abaqus there is a second input file ending (.pes), if this file exists it is to be preferred over the *.inp file (thanks Steffen)
2013-02-04 08:29:58 +00:00
Martin Diehl
7f5e9f70b2
added missing flags
2013-02-03 09:22:25 +00:00
Martin Diehl
6cd6172c0c
fixed bug in dotState causing strange hardening for certain parameters
2013-02-01 15:44:50 +00:00
Martin Diehl
b0263a8aab
added possibility to parse options for setup_code.sh and setup_processing.sh + other improvements in setup functionality
2013-02-01 12:21:56 +00:00
Martin Diehl
c2495d0d4a
changed misplaced private to public statement and renamed qsort to math_qsort
2013-02-01 07:26:21 +00:00
Martin Diehl
e74b5da19a
changed all remaining routines to fortran-fast arrays (geometry reconstruction etc.)
...
changed all remaining routines in f2py to more clever determination of array size (requires f2py >= 2.0)
enabled 3D visualize to work with odd resolution by switching to linear reconstruction
PLEASE NOTE: Redefinition of routines for f2py might cause trouble -> DELETE DAMASK_ROOT/lib/damask/core.so in this case
further changes: added pure statement where possible, polished, unified use of "Q" for "Quaternion" and reordered math to have similar routines together
2013-01-31 16:28:08 +00:00
Mahesh Balasubramaniam
04d48c79b9
symlink_Code.py split seperately from the previous setup_code.py
2013-01-29 15:31:01 +00:00
Mahesh Balasubramaniam
bbd7e72fe8
setup_Makefile split seperately from the previous setup_code.py
2013-01-29 15:30:28 +00:00
Mahesh Balasubramaniam
6dcea3f419
a simple shell script to run setup_Makefile.py,compile_SpectralSolvers.py and symlink_Code.py in the said order
2013-01-29 15:29:43 +00:00
Mahesh Balasubramaniam
c816d5ca74
compiling DAMASK_Spectral split seperately from setup_code.py
2013-01-29 15:28:21 +00:00
Franz Roters
5228af627c
corrected calculation of gmod from c_66 (Voigt approximation for a random polycrystal)
...
approximate twin volume by a disk rather than an elipsoid
2013-01-29 14:59:26 +00:00
Martin Diehl
08a2aa79f7
doxygen comments for homogenization.f90, unified naming ip->i, el->e
2013-01-29 10:28:01 +00:00
Martin Diehl
1594a4bdf8
doxygen comments for isostrain, unified naming ip->i, el->e
2013-01-28 16:36:26 +00:00
Martin Diehl
3ffd6499b1
change bash-only "let" to "`expr`", abaqus_v6.env now suppresses warnings about long lines (there are only comments anyway)
2013-01-28 15:30:51 +00:00
Claudio Zambaldi
ae9af9143d
in python never put import of standard library modules on the same import
...
line as own modules (here:damask)
- und die folgenden Zeilen werden ignoriert --
M setup_code.py
2013-01-24 14:45:23 +00:00
Martin Diehl
db12e6e0c8
removed forgotten debug write statements (thanks Franz!)
2013-01-24 13:20:57 +00:00
Pratheek Shanthraj
7a84209a14
bug fix in microstructure
...
-This line, and those below, will be ignored--
M constitutive_dislotwin.f90
2013-01-24 13:12:51 +00:00
Martin Diehl
6ce78cf806
gfortran now detects "call flush" statements, removed the last of them in mesh.f90
2013-01-23 21:50:01 +00:00
Martin Diehl
d1985e0bef
checked and improved on Franz' one call to CPFEM only improvement
2013-01-23 19:56:45 +00:00
Martin Diehl
96577b18fb
introduced error code for run_test.py
2013-01-23 18:33:46 +00:00
Pratheek Shanthraj
50e874f887
fixed bug in elasticity matrix calculation
2013-01-22 15:48:47 +00:00
Martin Diehl
652a8366fe
splitted lines > 132, added pure statements where suggested by gfortran 4.7
2013-01-22 13:02:23 +00:00
Martin Diehl
df089b94bd
line break in lines > 132
2013-01-22 11:06:39 +00:00
Martin Diehl
2b319f02e6
small corrections on changes related to non-schmid systems
2013-01-22 10:04:15 +00:00
Pratheek Shanthraj
f3bd920c23
added non-schmid structure
2013-01-21 23:50:28 +00:00
Pratheek Shanthraj
60fec0e8ec
added code structure for non-schmid mechanics. work in progress…
2013-01-21 23:11:16 +00:00
Pratheek Shanthraj
fd94c786f0
moved stiffness tensor calculation to lattice
...
introduced 'isotropic' and 'orthorhombic' lattice types to use corresponding symmetries in stiffness tensor. intended to be used with non-crystal plasticity models (j2, constitutive_none with isotropic, cubic or orthotropic elasticity).
2013-01-21 21:57:26 +00:00
Franz Roters
c195f316e1
corrected calculation of twin stiffness matrix
2013-01-21 08:17:43 +00:00
Martin Diehl
9ee8108b6b
added doxygen documentation to material.f90 and marked read-only quantities as protected where possible, removed substituted "call flush" by "flush"
2013-01-18 11:30:52 +00:00
Martin Diehl
c6a79d2b3d
divergence_correction for basic solver variants has now 3 possibilities:
...
0: uncorrected, slope per sidelength (physical dimension) e = res/dim
1: corrected by sidelength, slope per unitlength e = res/1
2: corrected such that distance between FPs e = 1
alway regarding the medium length of x,y,z direction
2013-01-16 10:40:53 +00:00
Martin Diehl
20bc97b7eb
added doxygen comments and unified naming scheme for ip, element and grain
2013-01-16 10:14:57 +00:00
Christoph Kords
8a45a90775
new crystallite output "grainrotationX", "grainrotationY", "grainrotationZ" that gives the deviation of the initial orientation in degrees around the sample reference x/y/z axis, while "grainrotation" still gives the same as axis angle pair in crystal coordinates
2013-01-16 08:45:41 +00:00
Martin Diehl
645b2605e1
corrected reporting to statistics file (*.sta)
2013-01-11 10:40:16 +00:00
Martin Diehl
4c145376a0
forgot some integers
2013-01-10 18:50:14 +00:00
Martin Diehl
6e3e06bed7
corrected PETSc macro expansion
2013-01-10 15:36:55 +00:00
Martin Diehl
563b1f5e4b
added some warning and explicit size of arrays
2013-01-10 13:33:43 +00:00
Martin Diehl
0d5e91ac87
corrected reporting of basic PETSc variant and unified reporting of all spectral solvers
...
improved warning and error in IO, now able to report correctly elements up to 9 digits
2013-01-09 22:19:32 +00:00
Martin Diehl
55b88e47b7
fixed wrong temperature when using spectral solver
2013-01-09 18:08:08 +00:00
Martin Diehl
00246ade4e
missing range in array fixed
2013-01-09 14:43:27 +00:00
Martin Diehl
093cf92338
remove omp statements during initialization, "line" for reading in from material.config now has a default (empty) value to prevent conditional jump depend on this value
2013-01-08 22:11:59 +00:00
Martin Diehl
4eaa97b33c
minor changes on buggy latest commit (wrong use statement)
2013-01-08 21:54:25 +00:00
Martin Diehl
19d86ca06a
removed unnecsessary omp statements, removed one transpose in constitutitve
2013-01-08 11:09:20 +00:00
Martin Diehl
ce7a0571fd
fixed bug in forwarding fields for AL solver
2013-01-08 10:12:03 +00:00
Martin Diehl
d90efef535
fixed bug in cutback scheme
2013-01-07 21:42:00 +00:00
Martin Diehl
738f363263
corrected small issues with PETSc debugging
2013-01-03 16:17:23 +00:00
Martin Diehl
7a43d1b6ad
added funtionality to specify working directory to spectral solver
2013-01-02 17:02:12 +00:00
Christoph Kords
766202bae9
corrected debug output of aged state: first reports for selected debug_el,debug_ip
2012-12-28 12:15:59 +00:00
Christoph Kords
f14fd45ce1
new material parameter "egdejog": fraction of annihilated screw dipoles that forms edge jogs
2012-12-23 12:56:15 +00:00
Martin Diehl
64d167fa90
loadcase rotation now working for AL solver
2012-12-17 10:18:39 +00:00
Christoph Kords
7dd1130e92
reset syncSubFrac flag when turning terminallyIll
2012-12-16 16:18:36 +00:00
Christoph Kords
92d2c83334
more debugging info for timesyncing
2012-12-16 11:30:19 +00:00
Christoph Kords
4f12073dcb
once again corrected parallelization statements
...
added some debugging writes for timesyncing
2012-12-16 10:54:13 +00:00
Martin Diehl
1baf8dea5d
load case rotation no working for Basic PETSc solver
2012-12-15 23:52:06 +00:00
Martin Diehl
5c0c7121e7
made PETSc silent by removing -snes_view from default options.
...
introduced PETSc option for debugging that introduces some debugging options into the petsc options and move PETSc initialization from numerics to DAMASK_spectral_utilities
2012-12-15 18:07:49 +00:00
Martin Diehl
566b680319
made new spectral solver the default (no need for SOLVER=NEW anymore) and added additional warnings switche to be used with gfortran >= 4.6
...
added comments
2012-12-15 16:21:10 +00:00
Martin Diehl
b1f28ba5e7
made restart working for all solvers and added corresponding test
...
corrected error handling for FFT based function in case of odd numbers etc.
2012-12-14 17:30:22 +00:00
Martin Diehl
7b87987751
introduced option for regridding to numerics.f90, working as follows:
...
first cut back is tried if material point model oder BVP solver does not converge.
If no regridding is enabled after max cut back, in case of non-converged material point the simulation stops and in case of non-converged BVP solver it continues.
set regridMode to 2 to enable regridding if BVP solver OR materialPoint model do not converge,
set regridMode to 1 to enable regridding if materialPoint model do not converge, non-converged BVP solver will be ignored as in the standard case.
For regridding, the load case need to have a restart freq set.
enabled restarting for Basic PETSc variant
2012-12-14 15:18:04 +00:00
Christoph Kords
64d9c70dc7
corrected nonconforming use of openmp parallelization
2012-12-14 14:30:08 +00:00
Martin Diehl
d559653722
small improvements on tests
2012-12-13 20:20:04 +00:00
Martin Diehl
2b4eb2a257
changed shell variable containing name of Workstation from $HOST to $HOSTNAME as this is also working on Ubuntu
2012-12-13 13:53:54 +00:00
Christoph Kords
f744fc1d47
fixed bug in parallelization: flushing of crystallite_todo was missing at a couple of places
2012-12-11 15:05:08 +00:00
Christoph Kords
6a9b19e4c0
fixed bug in timesyncing procedure: if any ip that synchronizes its time step did not converge, all nonlocals become terminally ill; before, this led to an infinite loop in crystallite
2012-12-11 13:42:22 +00:00
Christoph Kords
03a88d4798
fixed timesyncing for special case of ip that synchronizes its time step, but does not have a neighbor
2012-12-11 13:38:36 +00:00
Christoph Kords
35a0483507
fixed bug in last revision: FE_geomType was not in namespace
2012-12-10 17:22:16 +00:00
Philip Eisenlohr
10ed848258
fixed 2 bugs: missing mapping with FE_geomtype(mesh_element(2,...))
2012-12-10 17:03:28 +00:00
Christoph Kords
37028455e9
always use the current state for leaving flux calculation when no neighbor is present
2012-12-09 12:24:32 +00:00
Christoph Kords
98d02dcffb
removed call to microstructure in stateJump function, since this is already done in the state integrator subroutine
2012-12-07 07:50:41 +00:00
Christoph Kords
149c747688
use non-corrected densities for rate check in dotState
2012-12-06 17:14:35 +00:00
Christoph Kords
1f5a30d6f0
corrected typo in random multiplication term
2012-12-06 14:04:18 +00:00
Christoph Kords
20f7053ad3
correction of interaction coefficients due to line tension effect only applies to coefficients 3, 4 and 5
2012-12-04 18:23:46 +00:00
Christoph Kords
0986a66449
accidentally also included some changes in crystallite_integrateStress in last commit; reverted these changes in this revision
2012-12-03 16:34:41 +00:00
Christoph Kords
f2dacb5f40
polished debugging output
2012-12-03 16:29:54 +00:00
Christoph Kords
9eb89b0050
made random multiplication switchable via material.config
2012-12-03 12:59:38 +00:00
Christoph Kords
62ddbf26df
slightly changed the multiplication term in the nonlocal model for the starvation case
2012-11-29 18:50:25 +00:00
Christoph Kords
f92d34dd22
removed some unused variables
2012-11-29 18:44:00 +00:00
Martin Diehl
57fed66a8e
simplified load case parsing
2012-11-29 13:26:17 +00:00
Philip Eisenlohr
7358dd6679
fixed wrong index contraction in acoustic tensor calculation
...
(blew up calculations with zero Poisson ratio...)
2012-11-28 18:46:07 +00:00
Philip Eisenlohr
6bb3a475ce
added output of current relative tolerance when reporting relative errors
2012-11-28 18:44:51 +00:00
Martin Diehl
5ea0139678
simplified the rate calculation interface in DAMASK_spectral_utilities.f90, corrected bug in rotation parsing and added debug option "rotation" to spectral solver options. This will show the current average stress and deformation additionally in lab coordinate system
2012-11-28 15:04:05 +00:00
Henry Hutasoit
07bec16268
corrected compilation exception for gfortran in case of compilername!=F90
2012-11-28 13:54:02 +00:00
Christoph Kords
29618df550
annihilate only part of the screw dipoles (specified by minimumDipoleHeight), not all; moved annihilation of screws from deltaState back to dotState
2012-11-28 12:09:48 +00:00
Christoph Kords
e10000a338
Introduced an alternative cutback scheme for the nonlocal model, that allows to keep the results of most of the ips that immediately converged, and only do cutbacks in regions where some ips are in big trouble. Only works for nonlocal model and state integrator 2.
2012-11-27 18:36:55 +00:00
Martin Diehl
e45e1316ba
removed auto detection of compilername, it only works if the file you're looking for (in our case "ifort") is in the same directory as the Makefile
2012-11-27 17:22:03 +00:00
Philip Eisenlohr
1e32eb560e
corrected buggy calculation of Schmid matrix for twins introduced in rev1809.
...
(stress acting on twin systems was overestimated by factor of sqrt(3) due to that!!)
additional polishing.
2012-11-23 17:02:50 +00:00
Martin Diehl
11ed7fab86
corrected bug in curl calculation causing the output of transposed tensor (according to information stored in testing/9102/proof/Curl of Tensor - Physics Forums.pdf)
...
addCurl test is now done against analytical solution and working, added it to list of automated tests.
small improvements on test.py
2012-11-23 15:16:51 +00:00
Christoph Kords
e584c0e6e8
deleted space in front of preprocessor line
2012-11-22 20:04:33 +00:00
Martin Diehl
dbc26e5f25
corrected auto detection of ifort compiler
2012-11-22 13:17:54 +00:00
Christoph Kords
38ec462f4a
order of integration now same for all state integrators: first calculate the dotState and then the deltaState
2012-11-22 13:04:19 +00:00
Philip Eisenlohr
7d196fbb25
polishing
2012-11-22 09:58:36 +00:00
Philip Eisenlohr
23a0ca3b59
keep "odd" stress in rnd-range of -1.0 to -0.5 and 0.5 to 1.0
...
serial calc now skips IPs when /elementhomogeneous/
for /elementhomogeneous/ IPs > 1 individually copy the result from IP 1 to prevent spuriously outdating themselves.
2012-11-21 17:00:29 +00:00
Philip Eisenlohr
ec8a84ded7
added output of element and ip to debug messages
2012-11-21 16:58:14 +00:00
Philip Eisenlohr
d189a6a7a0
polishing
2012-11-21 16:57:57 +00:00
Christoph Kords
760af1fbbf
crystallite_requested now masked by execIP, now elemhomogeneous works again
2012-11-19 15:13:48 +00:00
Franz Roters
d4a59541ad
removed write statements which were introduced for "debuging"
2012-11-19 15:12:11 +00:00
Christoph Kords
9fb94cd707
breaking crystallite loop in case of terminally ill (this functionality was probably lost since rev1886)
2012-11-19 08:39:48 +00:00
Christoph Kords
4195d53d11
message of last commit was incomplete: moved annihilation of screw dipoles from dotstate to deltaState, since it is not a rate
2012-11-17 13:54:22 +00:00
Christoph Kords
467c186f0f
annihilation of screws
2012-11-17 13:50:20 +00:00
Nader Zaafarani
dc5cd8a4c4
A modified twin-twin interaction matrix for BCC is introduced.
...
An introduction of a third parameter at the interactionTwinTwin in the material.config for BCC-dislotwin materials is essential.
2012-11-16 13:39:08 +00:00
Philip Eisenlohr
d9a98417ca
switched element library to geomType based.
...
saves to copy same geometry description for different elements that are essentially similar regarding the IP number but differ in total node count.
introduced quadratic tetrahedron (Marc element 127 -- element 157 might also work, but did not perform well in fully elastic calc so far)
2012-11-15 22:45:20 +00:00
Christoph Kords
aec163941d
calculate ip coordinates only once when the first ip enters calculation mode
2012-11-15 12:31:39 +00:00
Philip Eisenlohr
bdbc202c7e
corrected typos
2012-11-15 09:22:36 +00:00
Nader Zaafarani
c0a5a1dfd1
Formation of the Slip-Slip interaction matrix for BCC.
2012-11-14 17:35:33 +00:00
Martin Diehl
7e683ca7c3
removed coordinates from call to CPFEM_general and introduced direct storage of coordinates to mesh_ipCoordinates
2012-11-14 14:38:10 +00:00
Martin Diehl
1896c07c70
corrected some bugs in the last commits
2012-11-14 14:33:41 +00:00
Nader Zaafarani
c8be3a03bd
The twin system <111>{112} for BCC is introduced.
2012-11-14 13:43:59 +00:00
Nader Zaafarani
6b010b4a46
Twin-slip interaction matrix for BCC is set to 0.
2012-11-14 11:53:22 +00:00
Nader Zaafarani
b0464ad176
A modified slip-twin interaction matrices for FCC and BCC are introduced.
...
The shear twin value for BCC is corrected.
An introduction of a third parameter at the interactionSlipTwin in the material.config for dislotwin materials is essential.
2012-11-14 11:13:16 +00:00
Philip Eisenlohr
fb2981b4c4
switched matrix indices in SlipSlip, SlipTwin, TwinSlip, and TwinTwin such that first index refers to first name and second to second...
2012-11-14 10:27:23 +00:00
Philip Eisenlohr
e4ce63d689
switched matrix indices in SlipSlip, SlipTwin, TwinSlip, and TwinTwin such that first index refers to first name and second to second... (used to be transposed for memory efficiency)
2012-11-14 10:22:34 +00:00
Philip Eisenlohr
789e6c7d83
dropped support of MSC.Marc/Mentat 2007 and 2008
2012-11-14 09:57:18 +00:00
Philip Eisenlohr
ad9639f2f7
check for existence of files before sym-linking to them.
2012-11-14 09:40:45 +00:00
Martin Diehl
c3926efd93
introduced logic to use gfortran as default if ifort is not found
2012-11-13 19:12:00 +00:00
Martin Diehl
922042d8d5
now automatically using gfortran if no ifort is found
2012-11-13 18:40:14 +00:00
Martin Diehl
0c87fc16f4
renamed the keyword for the make options from make to options
2012-11-13 17:26:25 +00:00
Martin Diehl
70c4e11742
added comments and structured the code. Temperature is not longer stored for each point but only to simplify restart behavior as long as it is not fully supported by the constitutive models
2012-11-12 14:14:39 +00:00
Christoph Kords
3c53f3ec9a
last version contains buggy mesh.f90; corrected typo in initialization
2012-11-09 07:52:44 +00:00
Christoph Kords
366ac28694
parallelized mesh_build_subNodeCoords and mesh_build_ipCoordinates
2012-11-09 07:47:14 +00:00
Martin Diehl
b1c3c57412
some more finetuning, still not running on gfortran 4.5.0
2012-11-08 21:33:58 +00:00
Martin Diehl
c831716b26
reseting value vector when reading in for loadcase file, otherwise NaNs might be in there
2012-11-08 20:35:31 +00:00
Christoph Kords
11264f3fe4
forgot to check for convergence flag in FPI integrator
2012-11-08 20:15:19 +00:00
Christoph Kords
60438cdbcc
criterion for crystallite cutback loop changed from crystallite_subStep to crystallite_todo; this avoids problems when the last substep of the crystallite increment is below subStepMinCryst (which is allowed during last wind forward)
...
fixed bug in the adaptive Euler integrator and the RK4 integrator, which could not reach the stateJump function, because of erroneous check for converged flag; also corrected the state counter for the RK4 integrator
2012-11-08 20:00:29 +00:00
Martin Diehl
ee5903c767
replaced real 'guessmode' with logical 'guess', caused trouble on gfortran 6.3 with ultra optimization
2012-11-08 19:32:00 +00:00
Martin Diehl
6a86f36407
now having libraries from Makefile before PETSc Libraries in linker order
2012-11-08 18:26:10 +00:00
Christoph Kords
c775edaa6d
better avoid initialization of residuum_old with huge, since it posed problems in Abaqus
2012-11-08 13:26:22 +00:00
Christoph Kords
dad9922f54
fixed bug in crystallite_FPI: stateDamper always has to be defined for each grain
...
added some OMP FLUSH statements were necessary
replaced openmp do by forall construct where possible; this is much safer and perhaps even as fast for small loops
2012-11-07 15:43:29 +00:00
Martin Diehl
bbcffa668b
some small changes in including PETSc *.h90 files to prevent warnings.
...
It seems that a bug in old gfortran 4.5.0 causes the problems, at least with 4.7.3 it seems to work after fixing the bugs in IO.f90
2012-11-07 13:11:41 +00:00
Martin Diehl
9b99825ac6
preventing array index out of bounds in case of empty line, removed to goto statements
2012-11-07 09:31:46 +00:00
Martin Diehl
5214b93342
fixed bug when reading in geometry for spectral solver
2012-11-06 17:16:01 +00:00
Martin Diehl
3ada4897fb
reordered PETSc initialization (now first part done in interface, setting of parameters done in numerics), removed unnecessary includes for PETSc
...
still not running with gfortran, use at own risk!
2012-11-06 16:00:51 +00:00
Martin Diehl
a86d528a4a
replaced call flush(6) by flush(6), slightly improved formating for output of gfortran version
2012-11-06 15:50:20 +00:00
Christoph Kords
5b6baa7c0d
introduced distinction between ip coordinates and cell center coordinates; the former can be globally calculated by subroutine mesh_build_ipCoordinates, the latter locally by the function mesh_cellCenterCoordinates; renamed mesh_ipCenterOfGravity to mesh_ipCordinates
2012-11-06 14:37:13 +00:00
Christoph Kords
bb033c5fe7
Simplified algorithm of crystallite_integrateStress while preserving (almost) same functionality.
...
Removed "leapfrogging" (increase of step for next guess, when last guess was ok); Replaced Armijo rule testing for step size by simple check if the residuum got better, since the former virtually did not have any effect; consistently using the 2-norm of the residuum rather than infinity-norm for the convergence check throughout the function
2012-11-06 12:35:45 +00:00
Christoph Kords
639d6e0655
inserted missing flush(crystallite_todo) in parallel section; might have caused trouble in parallel calculations before
2012-11-05 14:45:52 +00:00
Martin Diehl
086fe138b1
substituted matrix inversion to solve equation by direct solution routine from LAPACK
2012-10-31 09:56:26 +00:00
Christoph Kords
55dc286be2
corrected limit for upper stable dipole distance; fixed a bug in the postResults where division by zero might happen
2012-10-29 13:02:01 +00:00
Christoph Kords
f666f8dcf3
added possibility to scale the plastic shearrate by the ratio of mobile to total density; keyword in material.config is "deadZone"
2012-10-29 12:49:28 +00:00
Martin Diehl
ca596bc7af
error messages are now printed, added svn properties
2012-10-25 09:16:17 +00:00
Christoph Kords
93cc466749
third entry in mesh_ipNeighborhood stores the neighbor_index that points from each neighbor back to the central ip; needed in nonlocal model
2012-10-24 14:03:02 +00:00
Martin Diehl
13b55275b1
documented utilities and structured, worked on the restart capabilities of the new basic solver
2012-10-24 11:31:40 +00:00
Philip Eisenlohr
5ad0eda1b6
switched saturation behavior!!
...
was \dot s_alpha = (1-s_alpha/s_inf)^a h_alphabeta \dot gamma_beta
now \dot s_alpha = h_alphabeta (1-s_beta/s_inf)^a \dot gamma_beta
current form is consistent with the genmat implementation (and appears to make more physical sense). Kalidindi_etal1992 suggested this form, but altered it to the alpha-one in Bachu+Kalidindi1998... By now, it seems that some groups use alpha, others beta approach.
introduced two new absolute tolerance values for "shears" and "twinFrac" (default 1e-6).
2012-10-22 14:55:07 +00:00
Christoph Kords
2be331b74d
In crystallite for state integrators 2 and 3: now that "stateJump" is called before integrating dotState, we have to do state = state + dotState *dt instead of state = subState0 + dotState * dt; otherwise the deltaState is lost
2012-10-22 13:34:15 +00:00
Christoph Kords
0980920b66
In crystallite: for state integrators 2 and 3 the deltaState always has to be done at the beginning of the integration, not at the end; otherwise the stiffness calculation can be completely wrong, when the state is changed after the stress integration for the central solution.
...
Also changed some debugging levels in crystallite and mainly in constitutive_nonlocal
2012-10-22 07:59:35 +00:00
Christoph Kords
3ecaa9e371
modified multiplication term in order to mimic a discrete distribution of dislocation sources; namely, at high resolution, when there is (on average) less than one source per integration point, a random generator decides whether there is a source in the finite volume or not; if there is one, then the multiplication turns independent of the density and depends only on the velocity/volume times a scalar factor; recovers density*velocity/lambda for large finite volumes
2012-10-19 11:40:17 +00:00
Christoph Kords
36676029e1
for state integrator 2 (explicit euler) and 3 (adaptive 2nd order euler): don't do any state evolution during stiffness perturbation, but only stress integration, since for those cases the state is not restored after every perturbation step
2012-10-19 11:20:31 +00:00
Martin Diehl
b9f97ba5da
unified naming scheme, fixed a bug in the new basic scheme, and added a statistic file similar to abaqus to store the information on needed cut backs and iterations for each inc
2012-10-19 08:44:21 +00:00
Christoph Kords
6230dacbac
only first broken ip signals "terminally ill"
2012-10-18 13:48:06 +00:00
Christoph Kords
4a6e08bb69
changed keyword in spectral geometry file for multiplication of entries from "copies of" to "of"
2012-10-18 10:17:16 +00:00
Philip Eisenlohr
dd5f453994
mainly cosmetics. added some comments. changed debug levels for some outputs. corrected (probably non-essential) check for NaN in FPI stressIntegrator.
2012-10-18 09:53:26 +00:00
Philip Eisenlohr
79a5a30a90
removed now obsolete vectorproduct variables st, tt...
2012-10-18 07:25:49 +00:00
Christoph Kords
5f0440fde3
crystallite_integrateStress now raises an error if Fp becomes NaN
2012-10-17 16:19:42 +00:00
Philip Eisenlohr
31f20e51da
just to be able to tell about the bug I found in the hex slip systems---which I actually forgot to mention during the last commit---I slipped in a syntax error that now is fixed, too...
2012-10-12 20:31:50 +00:00
Philip Eisenlohr
05c5ea42d7
prepared loop distributions to hold "over shooters"
2012-10-12 18:00:55 +00:00
Philip Eisenlohr
82a13af474
tidied up the Schmid matrix calculations.
...
added internal check against dilatation in Schmid matrices.
2012-10-12 17:59:50 +00:00
Philip Eisenlohr
b20c612e25
added error "0" for internal (run time) checks failing
2012-10-12 17:55:23 +00:00
Philip Eisenlohr
1b2edd7e7d
fixed error in _identity (wrong delta-function)
...
added _exp33 for matrix exponential
added trace33 for matrix trace
2012-10-12 17:54:20 +00:00
Martin Diehl
324dfda5a2
added comments (doxygen conform) to phenopowerlaw, added warning on specifying h0_sliptwin as it has no effect
2012-10-11 14:49:12 +00:00
Christoph Kords
e4054c116d
fixed problem with gnu compiler: allocation of variables in constitutive_nonlocal_stateInit was not safe when not using any nonlocal constitution
...
put header of debugging output in constitutive_init at the start of the function in order to make debugging easier
2012-10-09 12:34:57 +00:00
Christoph Kords
a84e0529c3
make correction of hardening coefficients thread safe
2012-10-05 16:05:51 +00:00
Christoph Kords
40a2e652e7
introduced material parameter "linetension", which indicates how strong the effect of the line tension on the hardening coefficients is
2012-10-05 14:42:41 +00:00
Christoph Kords
7cc6108a04
hardening coefficients for fcc are density dependent (line tension effect, Devincre, Kubin, Hoc; 2006; Physical analyses of crystal plasticity by DD simulations)
...
fixed bug with thermal annihilation producing negative density in case of very small dipole density and high climb velocity
2012-10-04 18:08:40 +00:00
Martin Diehl
80465c0b49
moved option for UTF-8 encoding to spectral interface as this is now called before prec init.
...
if UTF-8 encoding is needed for FEM solver (old compilers might not support it), add the same statement to the corresponding interface routine
2012-10-04 14:22:39 +00:00
Martin Diehl
e2ea3cdff6
again some changes regarding creation of NaN, ieee-conforming way is not in the complilers yet.
2012-10-02 16:53:03 +00:00
Christoph Kords
bce8012c89
random distribution of initial dislocation density now really independent of meshsize
2012-10-02 15:26:58 +00:00
Martin Diehl
d5ce49c471
numerics got some protected statements and is now reading in the new keywords for the solver selection in small letters.
...
spectral solver got cut back facilities + improved output to screen
2012-10-02 15:26:56 +00:00
Christoph Kords
91b7883c2a
random distribution of initial dislocation density now independent of mesh size
2012-10-02 13:35:34 +00:00
Christoph Kords
1502a71f0c
added possibility to start with an initial random distribution of dislocation segments with specific overall density
2012-10-02 12:57:24 +00:00
Martin Diehl
0bcb8f59db
added doxygen comments, some polishing, added "protected" statements where applicable
2012-10-02 12:53:25 +00:00
Martin Diehl
6301787df4
moved the the variable cutBack from FEsolving.f90 (where it was not used at all) to the interface routines to make responsibility of cut back control clear
...
PLEASE RUN setup_code.py IF YOU DO MARC SIMULATIONS, THE INTERFACE HAS CHANGED
2012-10-02 12:46:58 +00:00
Martin Diehl
c8b7da432c
set debug_level to be protected as it is read-only for other modules
2012-10-02 09:35:39 +00:00