Christoph Kords
7330031579
corrected special treatment of periodic images in calculation of stress correction
2012-03-15 10:08:08 +00:00
Philip Eisenlohr
d4463fe56a
shifted location of elasticity part closer to plasticity... (constitutive has been shaken back and forth quite a bit today ;-] )
2012-03-15 09:51:33 +00:00
Christoph Kords
ea634d978a
adapted comments to recent change
2012-03-15 09:47:32 +00:00
Franz Roters
b7fc4fe6e4
fixed one last typo, now it finally compiles, sorry for this!
2012-03-15 09:42:33 +00:00
Franz Roters
4d90d90886
last comment also holds for this one
2012-03-15 09:25:15 +00:00
Franz Roters
70a44fbbdd
constitutive models need to skip new keyword elasticity when reading their arameters
2012-03-15 09:22:24 +00:00
Christoph Kords
503f6ed040
i think it's elasticity not elaticity, right?
2012-03-15 08:46:51 +00:00
Franz Roters
36edb4dd9f
introduced keyword elasticity in material.config
...
added constitutive_TandItsTangent and special version constitutive_hooke_TandItsTangent
those are however not yet used and need to be tested
2012-03-14 16:16:11 +00:00
Christoph Kords
9cbbb7cab5
Dead dislocations are treated the same as mobile dislocations for the flux part though they do not contribute to slip. By that the pileup of dead dislocations is able to diminish with time (kinetics are the same as for the glide part; this is not correct but gives valuable results). Also remobilization of dead dislocations at neighbor is taken into account for flux.
2012-03-14 15:32:50 +00:00
Christoph Kords
6bca2150f2
local stress correction of gradient in dead dislocations and neighboring excess density is additive
2012-03-14 15:24:19 +00:00
Christoph Kords
06c93435f2
viscosity term in kinetics law proportional to resolvedstress minus forest term
2012-03-14 15:18:36 +00:00
Pratheek Shanthraj
c2f5cebacb
simplified analytic jacobian calculation. removed Lpfrac, time_sensitive. introduced rate_sensitivity flag when calling crystallite_stressAndItsTangent that is currently set to .false. and is to be set according to which dPdF the FE solver is asking for
2012-03-14 13:56:50 +00:00
Christoph Kords
2b5ed4ab93
corrected name of makefile (first letter upper case)
2012-03-14 11:58:05 +00:00
Christoph Kords
d2652cae47
multiplication only controlled by screws
2012-03-13 14:19:36 +00:00
Franz Roters
433d8a338c
missed several occurences of constitution
2012-03-12 14:43:19 +00:00
Franz Roters
c9ed989dad
replaced keyword constitution with plasticity in preparation of upcomming generalized elasticity
2012-03-12 14:09:37 +00:00
Martin Diehl
efd653fb00
removed old *.output* and *.spectralOut as they are not updated anyway from reference.
...
introduced a numbering scheme for variants
calculated new reference results due to slight changes
2012-03-09 16:30:42 +00:00
Martin Diehl
ac5dd14c5f
removed some small bugs in IO.f90 (related to initialization of variables)
...
DAMASK_spectral.f90 adopted to new debug scheme, substituted print with write statements
2012-03-09 15:22:52 +00:00
Martin Diehl
bd9667bd4b
added new, flexible debugging scheme.
...
now all modules have their own debug specification.
compiles and runs, I hope nothing is broken
did a lot of polishing
2012-03-08 20:25:28 +00:00
Martin Diehl
dec9451b1e
first draft of the Augmented Lagrangian based algorithm, still experimental
2012-03-07 17:37:40 +00:00
Martin Diehl
2a7888c7e1
removed (in IO.f90) a dangerous initialization statement.
...
Please read http://www.cs.rpi.edu/~szymansk/OOF90/bugs.html#4
for more details.
Other files are just a little bit polished
2012-03-07 10:07:29 +00:00
Martin Diehl
d00c3c9e19
added error for to IO to substitute stop statement in kdtree2
...
explicitly defined all functions in as either public or private in the modules to have a quick overview on all functions and parameters that are available
2012-03-06 14:52:48 +00:00
Pratheek Shanthraj
17e9698659
added time_sensitive flag to ignore or add time sensitive component to analytic jacobian (should be close to perturbed jacobian when ignored)
...
now uses sub_dt for analytic jacobian calculations
bug fixes
2012-03-01 19:42:43 +00:00
Martin Diehl
df03dee91c
improved readability, removed archive statements. With new option FASTBUILD=YES build without any warnings etc
2012-03-01 19:34:42 +00:00
Nan Jia
211f66a728
added elastic stiffness matrix as crystallite output
2012-03-01 13:06:09 +00:00
Pratheek Shanthraj
040e244993
Added stress-order terms to analytic stiffness
2012-02-27 17:40:28 +00:00
Pratheek Shanthraj
99d6dcecb5
fixed bug in calculation of analytic jacobian (should work much better now). parallelized analytic jacobian calculation loop
2012-02-24 14:07:46 +00:00
Martin Diehl
f2ee67d03d
disabled multi file optimization when setting OPTIMIZATION=OFF and improved comments on compiler switches
2012-02-24 13:38:15 +00:00
Franz Roters
1042ac018f
output values used for Lp_frac and analyticJaco
...
improved comment for Lp_frac on numerics.config
2012-02-24 08:21:18 +00:00
Martin Diehl
478a6d110c
mixed things up, did not want to commit constitutive_nonlocal.f90 but rather DAMASK_spectral.f90!!!!
...
did a lot of polishing on constitutive_nonlocal.f90 (mostly checked in at last commit), for changes on DAMASK_spectral.f90 see previous message
2012-02-23 17:20:57 +00:00
Martin Diehl
a98832100f
introduced itmin parameter for spectral code for defining minimum number of cycles
...
removed simplified_algorthim flag because the basic scheme using the polarization field will not be implemented
introduced divergence_correction flag for making divergence criterion resolution-independent (still experimental and not set by default)
corrected output and restart frequency (now modulo on incs of current load case)
2012-02-23 16:43:17 +00:00
Franz Roters
989a2b2d39
added default entries for Lp_frac and analyticJaco
2012-02-23 10:53:15 +00:00
Pratheek Shanthraj
28d654d61e
forgot to remove some print statements in previous commit
2012-02-22 20:22:54 +00:00
Pratheek Shanthraj
b9a82156c9
crystallite.f90: can now calculate analytic jacobian by setting analyticJaco = 1 in numerics.config
...
math.f90: added math_mul3333xx3333…
numerics.f90: to read in analyticJaco and Lp_frac
2012-02-22 20:11:09 +00:00
Christoph Kords
9bf5b9dc86
dotState=NaN enforces cutback, if evolution rates lead to negative densities
2012-02-22 16:08:22 +00:00
Martin Diehl
21db79ce25
automated copyright information seems to be very complicated, not working yet
2012-02-22 14:06:28 +00:00
Martin Diehl
e25f605838
still trying to add copyright information by keyword via svn
2012-02-22 13:56:03 +00:00
Martin Diehl
20fdd302d7
trying to add copyright information by keyword via svn
2012-02-22 13:47:39 +00:00
Martin Diehl
ca401292e7
2012-02-22 13:46:33 +00:00
Martin Diehl
ca59c9936f
trying to add copyright information by keyword via svn
2012-02-22 13:43:35 +00:00
Martin Diehl
b0e2707a94
trying to add copyright information by keyword via svn
2012-02-22 13:40:03 +00:00
Martin Diehl
d68a3d1869
added LF=UNIX to a bunch of files
2012-02-22 13:30:00 +00:00
Martin Diehl
d8ffc29236
again: adding pInt, removing redundant use statments, chang in dble to real(,pReal)
2012-02-21 16:31:37 +00:00
Martin Diehl
9dc730dea4
now getting path separator by counting slashes and backslashes in $PATH environment variable
2012-02-21 16:04:16 +00:00
Martin Diehl
79663a7f76
polishing: adding pInt, removing unused use-statements etc
2012-02-21 16:00:00 +00:00
Martin Diehl
23cda48709
cleaning up, removing includes not needed
2012-02-21 15:42:47 +00:00
Martin Diehl
87a83d82b7
changed assumed arrays (:) to properly defined ones (gfortran 4.7 was complaining) and remove use statements that are not needed
2012-02-21 15:39:36 +00:00
Christoph Kords
8dc6e256c0
choose textures and phases of example materials according to what the labels suggest
2012-02-21 13:16:59 +00:00
Christoph Kords
97b2240fe9
take absolute dislocation velocities when testing Courant-Friedrichs-Lewy condition
2012-02-21 13:11:47 +00:00
Martin Diehl
6c0f9d163b
polishing: removed variable names like 'unit' and 'data' that are keywords of fortran and ensured that integer and real precision matches independent of machine standard.
...
removed cut_off parameter for damask_spectral
removed outpot of derived divergence measures and added RMS output in brackets
added comments and options to the makefile
2012-02-15 18:58:38 +00:00
Nan Jia
db06c797cd
store number of outputs for each instance of the constitution in constitutive_[j2/titanmod/...]_Nouput and use this value to loop over all valid outputs when determining the size of the outputs array
2012-02-14 15:19:59 +00:00
Martin Diehl
49a964aeda
removed public statement in derived data type causing trouble on older compilers
2012-02-14 13:56:35 +00:00
Martin Diehl
8f22d5a324
corrected geometry reconstruction (fluctuations were scaled wrong) and translated some comments from german to english
2012-02-14 13:43:36 +00:00
Martin Diehl
d9522bf588
minor changes, substituting implicit type conversions with explicit ones
2012-02-14 12:17:47 +00:00
Christoph Kords
30c55c3142
added check for unknown keywords again (in agreement with Philip ;-)
...
indeed 'constitution' and '/nonlocal/' are the only keywords which have to be ignored, since they are parsed elsewhere
2012-02-14 09:22:37 +00:00
Philip Eisenlohr
9b73cb3c65
removed parameter check complaining about unknown keyword as default case. there are just too many keywords that do not trigger a variable assignment to cope with them (e.g. /nonlocal/, constitution, etc.)
...
I suggest to kill similar logic from other files if present somewhere...
2012-02-13 23:30:59 +00:00
Christoph Kords
c786336af3
reordered (and partly redistributed) error message identifiers, deleted those which are not in use anymore.
...
all constitutive as well numerics now raises an error, if an unknown keyword is found in the respective config file
2012-02-13 17:41:27 +00:00
Martin Diehl
dd51e1da81
changed calculation of gamma_hat back to (working, but theoretically wrong) order
2012-02-13 17:15:02 +00:00
Krishna Komerla
94100e8d8e
missing line break
2012-02-13 15:21:03 +00:00
Martin Diehl
156ec4582a
polishing, adding _pInt etc. where applicable
...
post_results now handels zero increment different (like FEM, it is always there even if it is not counted)
2012-02-13 14:18:07 +00:00
Martin Diehl
f03e7c459c
small polishing, exchanged stops in math.f90 with calls to IO_error
2012-02-13 14:08:07 +00:00
Martin Diehl
a6864bf599
added missing 'dotF'
2012-02-13 12:41:44 +00:00
Martin Diehl
df07299f78
fixed bug concerning calculation of gamma operator and improved output to screen
2012-02-13 12:38:46 +00:00
Philip Eisenlohr
fa32a00d56
changed symmetryID initialization to integer (instead of float) value
2012-02-10 17:46:43 +00:00
Philip Eisenlohr
b211c13487
added "dotF" synonym to load case parsing.
2012-02-10 17:45:45 +00:00
Martin Diehl
1cc2315954
restructured algorithm, initialization now not longer within increments, lot of small improvements/polishing
...
makefile now calls compiler with lot of warning flags
2012-02-10 11:59:59 +00:00
Martin Diehl
37ac7bf1b4
fixing inconsistencies in variable assignments
2012-02-10 11:56:05 +00:00
Martin Diehl
cff66b5cc3
removed implicit type castings
2012-02-10 11:24:53 +00:00
Christoph Kords
26b4f886ba
whoops, accidentally removed _pInt in the IO_error calls which where previously added by Martin
2012-02-10 07:58:33 +00:00
Christoph Kords
ff53b9754b
somewhat better readable format without as much linebreaks
2012-02-10 07:50:29 +00:00
Martin Diehl
7a23833a39
removed line>132 characters, added _pInt when calling IO_error
2012-02-09 17:28:55 +00:00
Martin Diehl
0e2894f2b1
corrected handling of highest frequencies, polished and checked for standard compliance
2012-02-09 15:58:15 +00:00
Martin Diehl
724ec040a2
added pInts and pReals
2012-02-09 15:55:04 +00:00
Philip Eisenlohr
dced3f9430
changed FFT reporting of dimension and resolution to one line each.
2012-02-09 13:18:59 +00:00
Martin Diehl
195491aaaa
added missing pInts
2012-02-09 12:35:55 +00:00
Martin Diehl
a26456f9c0
now handling capitals in restart argument correctly
2012-02-09 12:20:14 +00:00
Christoph Kords
e7d407c2f6
crystallite_Fp has to be initialized in crystallite_init, cause it is used by constitutive_microstructure
2012-02-03 14:52:09 +00:00
Christoph Kords
5ddade27fc
changed Peierls stress to more realistic values for fcc
2012-02-03 13:12:45 +00:00
Christoph Kords
d62eddc0cd
corrected kinetics law and changed parameters. For solid solution hardening there are 3 parameters: the activation energy, the concentration of obstacles that determines the activation length and meanfreepath, and the obstacle size that determines the activation volume. For the Peierls mechanism there is: the width of doublekinks that determines the activation volume and the Peierls stress for edge and screw.
...
Still testing needed to check whether the current formulation makes sense or not.
2012-02-03 12:50:54 +00:00
Christoph Kords
bbf4f25898
renamed subroutine "mesh_marc_get_mpieOptions" to "mesh_get_damaskOptions" which is now also used for abaqus and spectral input files. The only available option so far is "periodic", which allows for periodic fluxes in the specified direction. Examples for usage (add the following lines to the respective input file, in case of spectral file this goes into the header):
...
- periodicity in x and z direction for marc:
$damask periodic x z
- periodicity in y direction for abaqus:
**damask periodic y
- periodicity in x and y direction for spectral:
periodic y x
2012-02-03 12:37:52 +00:00
Krishna Komerla
7e23f84d2c
new subroutine find_nearest_neigbor, basically a wrapper function for our purpose to kdtree2
...
split up kdtree2.f90 again from math.f90 to make the files better accessible
2012-02-02 15:57:22 +00:00
Martin Diehl
72aeb2113a
minor improvement on the still not working long (polarization field based) algorithm
2012-02-02 13:20:09 +00:00
Martin Diehl
faed4ec232
added deallocation of arrays (fftw_free)
2012-02-02 13:19:35 +00:00
Martin Diehl
2e4f2f3d9c
added _pInt where appropriate
2012-02-02 13:19:02 +00:00
Martin Diehl
683384681a
doing average correction now in Fourier space, now sure that the constant term is correct.
...
changed order of stress BC calculation/spectral method to avoid average calculation of stress in real space
2012-02-01 20:30:27 +00:00
Martin Diehl
c6fb2122be
added some comments for further debuggin/compliance with standard checking
2012-02-01 20:28:58 +00:00
Martin Diehl
c5128e94eb
some f2008 standard related correction i didn't check in last time
2012-02-01 20:20:05 +00:00
Martin Diehl
800e291240
made code standard conform to Fortran 2008 (ignoring warning concerning comments beyond character 132). Basically, changing "x" format specifier to "Nx" ("1x") plus removing $ format specifier
...
added compiler switches for gfortran and ifort to check for standard conformity
old gnu compilers <4.4 are not longer supported because they don't provide the c binding for fftw
2012-01-31 19:18:55 +00:00
Martin Diehl
80583fefb5
added compilation_info.f90, to store compilation date,time and compiler info in each file
...
added #include statement at each init() routine
2012-01-31 14:54:49 +00:00
Martin Diehl
8cf67e1be6
corrected weighting of difference divergence measures, added some additional output and introduced exit code 0 for successful termination.
2012-01-30 20:25:04 +00:00
Martin Diehl
9464937db7
merge declaration and initialization with standard values
...
corrected handling of $DAMASK_NUM_THREADS
2012-01-30 20:16:19 +00:00
Martin Diehl
eeda357710
N^2 initialization loop (former spectralPictureMode) rewritten in material.f90
...
additional output in DAMASK_spectral_interface.f90
132 character cut off in constitutive_nonlocal.f90
rounding error in math.f90 complex number initialization (1.0_pReal)*2.0_pReal*pi
new $DAMASK_NUM_THREADS warning in numerics.f90 / IO.f90
polishing in DAMASK_spectral.f90
2012-01-30 13:52:41 +00:00
Christoph Kords
4edd824d8c
forgot homogenization.f90 in last commit
2012-01-26 13:51:01 +00:00
Christoph Kords
1330576a01
added new math function "math_deviatoric33" which returns the deviatoric part of a 3x3 tensor
...
renamed some math functions, so that we have a universal naming scheme: for matrix multiplications use an "x" (e.g. math_mul33x3); don't use the "x" to describe the shape of the tensor that the function is applied to (e.g. math_invert33 instead of math_invert3x3)
2012-01-26 13:50:00 +00:00
Christoph Kords
df931890e0
corrected typos
2012-01-26 12:50:04 +00:00
Christoph Kords
6fec57bbd7
replaced variable fraction by "timefraction"
2012-01-26 12:48:59 +00:00
Christoph Kords
5a658d1b82
dislocation velocity output for each dislocation type (edge+,edge-,screw+,screw-)
...
for fcc constitutive_nonlocal_kinetics is called only once and the result is used for each dislocation type, for all other lattice structures we have one call for each dislocation type
2012-01-26 07:43:36 +00:00
Christoph Kords
e5407894b5
Reworked kinetics. Now there is a universal law which can be used for both fcc and bcc (and probably even hcp). It mainly consists of an athermal forest cutting part , solid solution and peierls as thermally activated processes, and viscous glide. Therefore, lots of new parameters in the material.config. Not sure yet if the values make sense though.
...
Also renamed some of the old parameters.
Unknown constitutive output raises error.
2012-01-25 17:04:37 +00:00
Martin Diehl
e6495c986b
corrected order of arguments for calling functions from python, small polishing in math.f90 (substituting manual summation by sum() )
2012-01-25 14:31:21 +00:00
Martin Diehl
fa372523a8
added and restructured comments
...
debugGeneral = .true. now enables the additional output
restructured the debug options
started to implement the long algorithm (with fluctuation field), not working at the moment, can be enabled via simplified_algorithm <1 in numerics.config
corrected calculation of RMS of divergence, now measures in real and fourier space match
2012-01-25 14:27:26 +00:00
Martin Diehl
884249aba8
removed hint how to patch fftw, added flag for gfortran to check if maximum length of source files do not exceed 132 characters
2012-01-25 14:24:08 +00:00
Martin Diehl
bd48620de2
improved Curl_fft, corrected Divergence_fft and added math_skew3x3
2012-01-25 10:30:39 +00:00
Martin Diehl
e7ac99eeca
for spectral solver, --restart XX sets restartReadInc to XX-1, meaning restartReadInc is the step to read and XX the step at which the calculation begins
2012-01-25 09:05:38 +00:00
Martin Diehl
656d7a68d2
one new error message for spectral solver
2012-01-25 09:00:40 +00:00
Martin Diehl
3e521e32a6
indroduced 3 more flags for fine control of spectral algorithm
2012-01-25 08:56:46 +00:00
Martin Diehl
52a43c3b32
improved help output and corrected triggering (-h, --help) of help
2012-01-25 08:54:37 +00:00
Philip Eisenlohr
0cb90d4926
corrected debug_verbosity glitch (missed ">0" in logical expression)
2012-01-23 13:32:37 +00:00
Christoph Kords
4980f57fd5
added total Green-Lagrange strain to crystallite outputs
2012-01-20 10:25:35 +00:00
Philip Eisenlohr
43bd667f78
switched array indices of curl_fft in accordance with math.f90
2012-01-19 20:39:33 +00:00
Philip Eisenlohr
a13aeb045f
corrected curl_fft subroutine
2012-01-19 20:38:52 +00:00
Christoph Kords
1032ff3d47
corrected definition of element base node, which was still flawed
2012-01-19 14:15:26 +00:00
Christoph Kords
6c2a61e489
corrected node coordinates and sorting for spectral method
2012-01-17 16:53:56 +00:00
Christoph Kords
8739b9522e
dislocation stress does not add to stress field anymore, but is only available as constitutive output for purposes of postprocessing. instead, we now use a backstress term (which is added to the resolved shear stress) that depends on the gradient of excess density on the same slip system.
2012-01-17 10:26:57 +00:00
Philip Eisenlohr
ab7b9247c7
final merge with edits dropped intermediately from rev 1190.
2012-01-16 15:10:16 +00:00
Martin Diehl
3a22bf7e27
changed fftw from legacy fortran to new (2003) fortran (calling c routines directly)
...
renamed "steps" consequently to "incs"
moved kdtree2 to math.f90, put original source to private folder
2012-01-13 16:18:16 +00:00
Martin Diehl
c644b2c24d
corrected rectifyPath function (did not work in case of more than one /../..)
2012-01-13 15:22:42 +00:00
Martin Diehl
2259f44cb1
added parameter for debugging of FFTW in spectral method
2012-01-13 15:21:24 +00:00
Martin Diehl
07186e0751
added output of precision to init
2012-01-13 15:20:29 +00:00
Philip Eisenlohr
f3bb2271c9
parsing of spectral geom file now accepts two-dimensional microstructure definition (plus range indications by 'x to y')
...
For instance:
1 2 3 4
5 6 7 8
9 10 11 12
...
2012-01-12 17:01:24 +00:00
Pratheek Shanthraj
11c71aae86
bugfix release
2012-01-12 16:31:23 +00:00
Philip Eisenlohr
83ff05c8e8
fixed bugs (sorry...)
2012-01-12 15:08:44 +00:00
Pratheek Shanthraj
2ea3c68d3f
removed spectralPicturemode
2012-01-12 10:36:17 +00:00
Philip Eisenlohr
7103a44d45
renamed debug variables, plus additional "beautification".
...
renamed "logscale" header info to "log scales" in accordance with plural versions of similar variables.
2012-01-12 10:23:05 +00:00
Philip Eisenlohr
a7d9d711f6
edited lines exceeding 132 chars (before any comment started)
2012-01-11 16:56:35 +00:00
Martin Diehl
c54600fd1f
added kdtree2 source and changed makefile to compile it.
...
started to implement the nearest neighbor search for regridding
corrected calculation of divergence in real space.
corrected handling of maximum stress deviation (removed mask)
2012-01-04 17:43:26 +00:00
Martin Diehl
ee401520d7
corrected divergence calculation. Still some open questions, but improved understanding a lot
2011-12-23 12:30:35 +00:00
Martin Diehl
6dee2616f5
added help info how to use the executable
2011-12-23 12:29:04 +00:00
Martin Diehl
99fa0e0be8
corrected calculation of curl (last version was more a dummy function)
2011-12-23 12:23:13 +00:00
Philip Eisenlohr
e62d083f7a
removed (virtually) dead single-precision branch of the spectral solver.
2011-12-22 13:19:27 +00:00
Philip Eisenlohr
35bd460e39
added "core" package capability to processing
...
(renamed former f2py modules)
reverted pathinfo...
2011-12-22 10:36:59 +00:00
Krishna Komerla
f463c2da70
added addCurl.py, not sure if it works correctly. still in old (eq. to addDivergence.py) style
2011-12-21 17:25:31 +00:00
Philip Eisenlohr
b0ba5f7ba3
code setup now takes BLAS in order of precedence from IKML, ACML, and LAPACK.
...
Leave pathinfo blank for BLAS-options that are not available (like IKML typically)
2011-12-20 10:58:51 +00:00
Franz Roters
c4a4c5cdca
corrected error in apply_DAMASK_modifications
...
added support for Marc/Mentat2011 (classic)
2011-12-19 16:06:03 +00:00
Philip Eisenlohr
739c524848
makefile substitution now based on regexp match.
...
condensed makefile syntax.
can now use a system-defined LAPACK instead of ACML (required for OS X...).
fixed bug that 'ULTRA' was not using -O3 for most of the compiling...
2011-12-16 09:11:03 +00:00
Philip Eisenlohr
a8dece8694
adopted use of general damask package ("import damask" instead of "damask_tools")
2011-12-15 08:52:41 +00:00
Christoph Kords
b2547e0117
Math inversion used to return zero (math_inv3x3) or error (math_invert3x3) for negative determinant. Now checking whether the absolute(!) value of the determinant is close to zero to avoid singularities, negative determinants are very well allowed.
2011-12-14 08:55:24 +00:00
Martin Diehl
031a00237f
improved makefile, no directly linking to files of acml
...
corrected default pathinfo
improved test for intel compiler
2011-12-09 16:34:53 +00:00
Martin Diehl
7d1d2b6229
corrected small mistake in setup_code and makefile
...
test no. 1500, spectral compile test with intel compiler is now working. adjusted run_test and tamask_test
2011-12-09 15:13:27 +00:00
Philip Eisenlohr
2ceb78c337
introduced new damask_tools method "relPath" and adopted it in setup_processing.py and setup_code.py
2011-12-06 18:38:03 +00:00
Martin Diehl
ea0fe7b406
corrected 3D visualize (math.f90 part was not working)
...
small polishing of voronoi_tessellation.f90
2011-12-06 17:46:33 +00:00
Martin Diehl
5ebeb96e85
made DAMASK to work with gfortran:
...
-removed to long lines
-restructured f2py modules and merged make_DAMASK2Python into setup processing
-setup_code.py now sets library path in makefile and asks for compile switches for spectral code
-substituted \ in format strings with $
restructured DAMASK_spectral:
-more logical output and structure of code
-better input for spectral debug parameters
2011-12-06 16:58:17 +00:00
Philip Eisenlohr
efadf9f728
mainly fixed error in output of spectral results (1:N,…) instead of (N,…)
...
rearranged some logic here and there.
(hopefully) improved readability of debug/standard output.
restarting logic would need some discussion with Martin/Krishna still…
2011-12-04 10:01:32 +00:00
Martin Diehl
ace6851389
moved all routines from postprocessingMath to math.90, renamed the module to DAMASK, changed scripts and interfaces accordingly.
...
polished math.f90 (mainly added _pInt/_pReal and intent(in/out))
curl_fft is still a dummy function
2011-12-01 12:01:13 +00:00
Franz Roters
e738bee1e3
moved todolist to private tree
2011-11-28 08:18:07 +00:00
Franz Roters
515986c4d6
renamed w0 and w0_slip to a and a_slip
2011-11-23 14:48:39 +00:00
Philip Eisenlohr
f685bbba0e
exchanged location of "graincount" in user block.
...
now matches wiki entry:
1. homogenization block
2. grain block
(grain count
sub-block[s] of crystallite and constitutive)
2011-11-23 09:09:00 +00:00
Martin Diehl
5a1e73b53d
added set_timelimit functionality to fortran-wrapper of FFTW and introcudec it to DAMASK_spectral.f90
2011-11-21 18:48:38 +00:00
Martin Diehl
566f16b6e9
implemented calculation of divergence in real space, polished spectral debugging
2011-11-21 18:12:40 +00:00
Martin Diehl
dc6c29a910
important bugfix for reading in results in case of restart
2011-11-17 22:11:05 +00:00
Martin Diehl
5ef73e164a
restructured algorithm: moved into loop to reallocate fields and replan FFTW in case resolution changes during runtime ==> regridding
...
introduced parameters for selective debugging of spectral code and partly introduced the advanced divergence calculation again which is controlled by debug.config
added switch in numerics to control divergence behavior (uncorrected and corrected by phenomenological factor)
added precision directive to all values I found
2011-11-15 17:54:18 +00:00
Krishna Komerla
60c9293baf
restarting seems to work, spectral solver writes own defgrad to disk.
...
step counting rectified
added additional output of deformation gradient volume min and max
2011-11-11 14:17:43 +00:00
Christoph Kords
860594d9a4
forgot to multiply shearrate with timestep in order to get accumulated shear
2011-11-09 10:26:00 +00:00
Christoph Kords
6dc8a4d530
check for LFC only if there is any slip activity at all; also increased safety factor from 1.2 to 1.5
2011-11-09 09:55:39 +00:00
Christoph Kords
7033e84fc7
new outputs "accumulatedshear", "velocity_edge", and "velocity_screw" (the latter two replace the output "dislocationvelocity")
2011-11-09 09:22:52 +00:00
Martin Diehl
de96e99bca
corrected determination of restartRead from commandline (now done by FEsolving instead of DAMASK_spectral_interface)
...
recompiled fftw libraries with --enable-shared to make them work with f2py
added draft for compilation test of spectral solver
2011-11-07 18:25:10 +00:00
Christoph Kords
8bc39fcd48
immobile density output keeps its sign
2011-11-07 15:46:40 +00:00
Christoph Kords
34adec74e8
corrected wrong indices into state array for velocity
2011-11-07 15:17:58 +00:00
Krishna Komerla
49c0b8a3fd
restructured restarting capabilities
2011-11-07 11:04:57 +00:00
Christoph Kords
7dfb96a3da
constitutive_nonlocal:
...
dislocation velocities are stored in the state, so we actually now have three "parts" of the state, the basic states that are updated by "constitutive_dotState" come first, then the dependent states that are calculated by "constitutive_microstructure" follow, and finally we have a last part reserved for other variables that just use the memory reserved by the state array and are updated somewhere else.
constitutive:
LpAndItsTangent does not need the full state, but only the local state, so changed that at least for the nonlocal constitutive law
2011-11-04 13:12:17 +00:00
Christoph Kords
9d1bc584d0
corrected stress integration scheme: now use norm(Lpresiduum) as a target function for Armijo's rule instead of whole tensor Lp; also corrected the guess for the improvement in Lp
2011-11-04 12:57:12 +00:00
Christoph Kords
ca3d21a3b6
Depending on which state integrator one uses for the stiffness calculation, the initial state has to be chosen accordingly: e.g. for FPI choose last converged state, but for explicit RK choose converged state from start of increment (in case of explicit euler no state integration at all, but only stress integration). For this purpose we also need to remember "Fe" which now follows the cutbacking procedure as it is used for "Fp".
2011-11-04 12:44:50 +00:00
Martin Diehl
ee7022d8cf
correctet random seed generation to work with gfortran.
2011-11-04 10:29:35 +00:00
Martin Diehl
c2eac36b48
started to implement restart facilities for spectral solver.
...
restart write is on per default
restart read is switched on by using --restart or -r INT where INT gives step at which the calculation should restart
setting INT to a value <1 will turn restart write off
2011-11-03 19:32:11 +00:00
Philip Eisenlohr
b9647b2584
moved parts into new "lib" folder
2011-11-03 13:21:11 +00:00
Martin Diehl
680ba9082f
removed deadlock when calling IO_warning(33)
...
polished IO_error and IO_warning
checked OpenMP critical statements in DAMASK_spectral.f90
corrected writing of headed in DAMASK_spectral.f90
2011-11-02 14:38:42 +00:00
Claudio Zambaldi
447e69019c
Introduced environment variable DAMASK_ROOT.
...
It is set in the DAMASK root folder by running damask_env.sh
Much needed in the testing routines so far (try ./testing/run_tests.py)
damask_env.sh could also trigger other scripts to get to a working setup after fresh checkout. For example it could run
./processing/setup/setup_processing.py
./code/setup/setup_code.py
if it finds that we have a fresh checkout.
2011-10-27 17:55:42 +00:00
Martin Diehl
15c356c3a7
some small improvements regarding the rotation of the loadcase frame
2011-10-25 13:38:24 +00:00
Martin Diehl
c13aa2a829
first try of implementing a rotation of the loadcase coordinate system. Seems to work so far for one loadcase and homogeneous materials.
2011-10-24 18:26:34 +00:00
Martin Diehl
0f34d14bee
again edited the makefile, no there is more flexibility in defining the libraries (FFTW and ACML)
...
added the source of fftw-3.3.tar.gz to fulfill the GPL
set_python_env.py was forgotten during last commit (for testing)
2011-10-24 16:57:51 +00:00
Martin Diehl
8ac1891b3c
moved DAMASK_NaN to prec.f90 respectively prec_single.f90 as it is precision dependent
2011-10-20 16:46:11 +00:00
Martin Diehl
ac342ad682
worked on the updating on increments, does not work properly until now
2011-10-19 09:05:02 +00:00
Krishna Komerla
0a46741a77
changing header to correct number of increments
2011-10-18 16:42:06 +00:00
Martin Diehl
9d3f74ce5f
polishing
2011-10-18 14:46:07 +00:00
Martin Diehl
7746390688
using keywords to indicate geometry and loadcase
...
enabled finetuning of FFTW
added some debugging options
reading in rotation of boundary conditions
using header in geometry file
corrected error in calculating tolerance for stress BC
polishing of output, variable declaration, and variable names
2011-10-18 14:45:32 +00:00
Martin Diehl
9a6977b024
changed commandline parameters into a keyword driven form
...
use "-l, --load, --loadcase" to specify loadcase file and
"-g, --geom, --geometry" to specify geometry file
!incremental update, wait for commit of damask_spectral.f90 before checking out
2011-10-18 09:25:17 +00:00
Martin Diehl
ea2ba1573c
polishing
...
!incremental update, wait for commit of damask_spectral.f90 before checking out
2011-10-18 09:22:33 +00:00
Martin Diehl
7604a8aeb4
corrected calculation of NaN, renamed variable to 'DAMASK_NaN'
...
!incremental update, wait for commit of damask_spectral.f90 before checking out
2011-10-18 09:21:38 +00:00
Martin Diehl
6cf464b8a9
added 'spectralPictureMode' for reading in geometries with 1to1 mapping (e.g. EBSD pattern)
...
polishing
!incremental update, wait for commit of damask_spectral.f90 before checking out
2011-10-18 09:20:29 +00:00
Martin Diehl
6ed27a2a13
added 'spectralPictureMode' for reading in geometries with 1to1 mapping (e.g. EBSD pattern)
...
!incremental update, wait for commit of damask_spectral.f90 before checking out
2011-10-18 09:18:05 +00:00
Martin Diehl
a8a53ee525
added two parameters to control behavior of FFTW, timelimit is not working at the moment
...
remove fftw3.f as it is not needed anymore
!incremental update, wait for commit of damask_spectral.f90 before checking out
2011-10-18 09:16:18 +00:00
Martin Diehl
4989535500
new version 3.3 of FFTW. Compiled with gfortran but only for multicore support (single core library is still the old version 3.2.2). Now either POSIX threads or OMP can be used by choosing the corresponding library file
...
Some further polishing (besides of new description for FFTW) of the makefile
2011-10-13 12:41:01 +00:00
Franz Roters
8edb59d50c
removed some unused variables
2011-09-26 09:55:38 +00:00
Franz Roters
58917b5abe
corrected error messages
...
you can now switch of shear banding by seting sb_velocity to zero
stacking fault energy parameters are now read from material.config
2011-09-26 09:55:08 +00:00
Franz Roters
2e263dee90
merged in the shear band code, it compiles but is not otherwise tested yet
2011-09-16 15:55:18 +00:00
Franz Roters
9d091bdc3f
added parameters for shear band model
2011-09-14 13:35:28 +00:00
Franz Roters
ee83904548
added math_spectralDecompositionSym3x3 used by shear band model
2011-09-14 13:26:00 +00:00
Martin Diehl
483b483816
dummy update because those messages got lost:
...
Date: Tue, 13 Sep 2011 17:46:44 +0200
From: m.diehl@mpie.de
To: wangleyu@msu.edu , lebenso@lanl.gov , denny.tjahjanto@imdea.org ,
o.guevenc@mpie.de , n.jia@mpie.de , m.diehl@mpie.de , c.kords@mpie.de ,
c.zambaldi@mpie.de , p.eisenlohr@mpie.de , f.roters@mpie.de
Subject: update: /home/svn/repos/DAMASK to 1000
Message-ID: <4e6f7ae4.Xjnd/szYAh8QCXTo%m.diehl@mpie.de>
User-Agent: Heirloom mailx 12.2 01/07/07
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
A processing/pre/FromEBSD/
A processing/pre/FromEBSD/Hex2Cub.cpp
A processing/pre/FromEBSD/SpectralMethodFromEBDS
A processing/pre/FromEBSD/patchFromReconstructedBoundaries
D processing/pre/patchFromReconstructedBoundaries
added two small (quick and dirty) tools to convert data from EBSD to input files for spectral method, put them together with patchFromReconstructedBoundaries into new folder.
Date: Tue, 13 Sep 2011 17:54:06 +0200
From: m.diehl@mpie.de
To: wangleyu@msu.edu , lebenso@lanl.gov , denny.tjahjanto@imdea.org ,
o.guevenc@mpie.de , n.jia@mpie.de , m.diehl@mpie.de , c.kords@mpie.de ,
c.zambaldi@mpie.de , p.eisenlohr@mpie.de , f.roters@mpie.de
Subject: update: /home/svn/repos/DAMASK to 1001
Message-ID: <4e6f7c9e.v9E4JVN2a6bg5tL8%m.diehl@mpie.de>
User-Agent: Heirloom mailx 12.2 01/07/07
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
U code/DAMASK_spectral.f90
U code/DAMASK_spectral_interface.f90
U code/IO.f90
U code/crystallite.f90
U code/homogenization_RGC.f90
U code/lattice.f90
U code/makefile
U code/material.f90
U code/mesh.f90
did a lot of polishing:
- removed unnecessary "return" before end of subroutine or function:
- changed undetermined array length (:) to (1:3)
To prevent problems with some code analysing tools:
- "3D oneliner loops" (with ";) only for "do" and "enddo" at the same time
- removed line continuation in OMP statements
made the makefile more flexible, removed heap-arrays switch
Date: Tue, 13 Sep 2011 17:57:07 +0200
From: m.diehl@mpie.de
To: wangleyu@msu.edu , lebenso@lanl.gov , denny.tjahjanto@imdea.org ,
o.guevenc@mpie.de , n.jia@mpie.de , m.diehl@mpie.de , c.kords@mpie.de ,
c.zambaldi@mpie.de , p.eisenlohr@mpie.de , f.roters@mpie.de
Subject: update: /home/svn/repos/DAMASK to 1002
Message-ID: <4e6f7d53.IEDDzo+JSzDWNSBr%m.diehl@mpie.de>
User-Agent: Heirloom mailx 12.2 01/07/07
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
A documentation/Compiling/
A documentation/Compiling/Stack+usage.pdf
A documentation/ParallelizationAndTuning/
A documentation/ParallelizationAndTuning/BSC_tools_Overview.pdf
A documentation/ParallelizationAndTuning/Intro_Perf.pdf
A documentation/ParallelizationAndTuning/Kcachegrind.pdf
A documentation/ParallelizationAndTuning/LRZ210703_1.pdf
A documentation/ParallelizationAndTuning/LRZ210703_2.pdf
A documentation/ParallelizationAndTuning/MUST_Overview.pdf
A documentation/ParallelizationAndTuning/NPB-MZ-MPI-BT_Exercise.pdf
A documentation/ParallelizationAndTuning/PAPI.pdf
A documentation/ParallelizationAndTuning/PSC_Exercise_BT-MPI.pdf
A documentation/ParallelizationAndTuning/Paraver_Exercise.pdf
A documentation/ParallelizationAndTuning/Periscope_Overview.pdf
A documentation/ParallelizationAndTuning/SIONlib.pdf
A documentation/ParallelizationAndTuning/Scalasca_Examples.pdf
A documentation/ParallelizationAndTuning/Scalasca_Exercise_BTMZ.pdf
A documentation/ParallelizationAndTuning/Scalasca_Overview.pdf
A documentation/ParallelizationAndTuning/Scalasca_Patterns.pdf
A documentation/ParallelizationAndTuning/TAU.pdf
A documentation/ParallelizationAndTuning/VIHPS-TW8.pdf
A documentation/ParallelizationAndTuning/Vampir_Exercise.pdf
A documentation/ParallelizationAndTuning/Vampir_Overview.pdf
A documentation/ParallelizationAndTuning/instructions_periscope.pdf
A documentation/ParallelizationAndTuning/manualf06.pdf
added some information from Tuning workshop in Aachen regarding tuning/parallelization
added slides with information how to prevent segmentation fauld
2011-09-14 08:16:42 +00:00
Philip Eisenlohr
c7c541f393
corrected typos and such
2011-09-13 15:57:58 +00:00
Martin Diehl
c35ea33f8e
did a lot of polishing:
...
- removed unnecessary "return" before end of subroutine or function:
- changed undetermined array length (:) to (1:3)
To prevent problems with some code analysing tools:
- "3D oneliner loops" (with ";) only for "do" and "enddo" at the same time
- removed line continuation in OMP statements
made the makefile more flexible, removed heap-arrays switch
2011-09-13 15:54:06 +00:00
Franz Roters
cbbc3e84fe
solved argument mismatch
2011-09-13 14:15:17 +00:00
Franz Roters
1dd2591982
corrected wrong check of twin systems
2011-09-13 08:18:43 +00:00
Christoph Kords
7be2701989
* new output variable "internalstress", which gives the internal stress tensor
...
* use "math_invert3x3" instead of "math_inv3x3" for inversion of Fe
* for dislocation stress calculation: first regular case, then special case of dead dislocations in central ip
* "dv_dtau" now given for each dislocation type, so is a (ns,4) array
* deleted unused variables in "_LpAndItsTangent"
* corrected contribution of deads in "_LpAndItsTangent"
* the NaN variables defined in math did not give a proper NaN value, so use 0.0/0.0 again
* neighbors with nonlocal constitution but local properties (i.e. /nonlocal/ flag not set) are also considered for incoming fluxes
2011-09-07 11:30:28 +00:00
Martin Diehl
e8628996ff
added IO error in case mixed BC that allow rotation are given
2011-09-02 13:50:05 +00:00
Martin Diehl
fe9754a41c
previous commit was wrong file
2011-09-02 10:46:37 +00:00
Martin Diehl
43e2684cfb
added new glide system for hex lattice
2011-09-02 10:43:49 +00:00
Martin Diehl
0469d37fc3
cleaned and restructured output on screen, changed L_inf norm to L_2 for calculation of error in Fourier space.
...
removed unnecessary function from math.f90
added some documents/manuals regarding spectral method
2011-08-31 14:37:01 +00:00
Martin Diehl
f527bdcc78
changed standard values according to numerics.f90
2011-08-30 11:21:39 +00:00
Martin Diehl
8f90f1f1f9
corrected description of algorithm to invert matrix
2011-08-30 07:29:13 +00:00
Martin Diehl
4fb1cb8f87
merged calcmodes, i.e. equilibrium and fulfilling of stress BC is done in one step,
...
made convergence independent of size and resolution,
polishing output in DAMASK_spectral.f90
added function to compute eigenvalues without eigenvectors and function to convert a 3x3 logical to a 9 vector in math.f90
removed obsolete variable in numerics.f90
2011-08-26 14:06:37 +00:00
Martin Diehl
380a536b45
homogenization_*, constitutive_*, DAMASK_spectral_interface: did some polishing regarding init output
...
makefile: corrected spelling mistake
2011-08-26 13:57:29 +00:00
Christoph Kords
b300cc7faa
ip volume is now based on the determinant of F. "mesh_ipVolume" represents the initial volume and is multiplied with det(F) wherever the current volume is needed. Since this works for all solver types, the "volume" output in crystallite is now also correct for spectral method and abaqus.
2011-08-19 11:18:56 +00:00
Martin Diehl
f99bf63397
removed functions added for debugging of divergence calculation to math.f90
...
corrected calculation of stress BC condition. Depending on given BC, the stiffness matrix is reduced and than inversed. Then it is filled with zeros and used for the calculation of the correct change of deformation gradient. All calculation is done using dP/dF
2011-08-10 17:45:37 +00:00
Christoph Kords
1ffb59a96a
Calculation of current ip volumes now working. Crystallite output also reflects current grain volume, not reference volume. However, this is only available for Marc. Abaqus and spectral method still return the reference ip volume. The ip coordinates though are correctly updated for all solver types.
2011-08-10 16:37:17 +00:00
Martin Diehl
34de2e301b
DEBUGGING VERSION for calculation of Divergence (various methods implemented). DO NOT USE. Wait for next update coming in a few minutes
2011-08-10 16:02:13 +00:00
Martin Diehl
bb1ca2330b
added option to enable use of AMD math core library, added comments on the various parameters
2011-08-10 16:00:02 +00:00
Onur Guevenc
31b60b8814
changed debug intensity so that the artificially high stress and stiffness values in collection cycles do not get printed out anymore...
2011-08-03 17:59:31 +00:00
Onur Guevenc
4f1cb3a8af
exchanged forall with nested do loops... Bye, bye smatrix warning, will miss you!!
2011-08-03 17:58:16 +00:00
Onur Guevenc
907965272b
added option to build DAMASK_spectral without openMP (make OPENMP=OFF)
...
fixed bug in bc_temperature assignment that was hitting memory.
Temperature is taken from the first loadcase and evolves from there in an adiabatic fashion for the moment. I.e. T-specifications from later loadcases are ignored...
2011-08-03 17:57:28 +00:00
Martin Diehl
b5abd6f203
adding new option OPTIMIZATION with values OFF, DEFENSIVE and AGGRESSIVE to makefile. Polishing of makefile and DAMASK_spectral.f90
2011-08-03 07:54:32 +00:00
Onur Guevenc
64435b8a97
loadcase takes 'temperature' (or 'temp') as input. Previously it was hard-wired.
2011-08-02 13:58:28 +00:00
Christoph Kords
422d6d9c6c
slight correction of debugging output
2011-08-02 12:36:08 +00:00
Christoph Kords
ef7405fe21
Stress integration now uses Armijo rule to find an appropriate correction of Lp: decreases step in case that residuum does not improve significantly, accelerates as usual in case of good convergence. This turned out to improve convergence behavior.
2011-08-02 11:29:08 +00:00
Christoph Kords
6f859e99de
* internal stress calculation now considers dead dislocations always at the interface, not at the center of the IP volume; used to merge them together with "normal" dislocations for stress calculation.
...
* dislocation flux is blocked if we encounter a sign change in the resolved shear stress from the central ip to the neighbor
* do not set density to zero if below certain threshold; this creates an artificial sink term
2011-08-02 11:17:45 +00:00
Christoph Kords
0373fa64e4
have to initialize constitutive_state during constitutive_init, since the first call to constitutive_microstructure (where we already need the state) is done before the cutback scheme starts.
2011-08-02 11:10:41 +00:00
Martin Diehl
75c67f53f7
introduced alternative location for material configuration.
...
If present, the >>>JOB.materialConfig<<< file takes precedence over the standard >>>material.config<<<
2011-08-02 10:14:16 +00:00
Martin Diehl
564eb5009f
shape mismatch in crystallite, invalid names for variables(pos, size) in homogenization corrected. polishing of DAMASK_spectral_interface and makefile
2011-08-01 18:10:55 +00:00
Martin Diehl
3adb7ab382
corrected makefile, now working again without giving standard values explicitly.
...
did some small modification in order to make it possible to compile with gfortran. Changed NaN=0.0/0.0 to bitwise representation (3 different ways)
2011-08-01 10:11:32 +00:00
Philip Eisenlohr
06a4ac2565
fixed bug (segmentation fault) occurring for non-renumbered meshes: ipNeighborhood building did use FE IDs of twin nodes to address memory -- dangerous..!
2011-07-31 15:42:59 +00:00
Christoph Kords
fb121b1435
* boundary condition masking changed
...
* damper initialized with one
* inversion of Mandelized stiffness tensor does not work, have to use plain tensor
* new functions in math that allow for conversion between Mandel and Plain tensors
2011-07-29 15:57:39 +00:00
Franz Roters
aa714a3d84
some textconstants were wider than specified in the format string, this might have caused Abaqus to crash due to an illegal memory reference (signal 11)
2011-07-29 14:54:26 +00:00
Martin Diehl
72d20875de
added some switches and variables to the makefile to make it more flexible
...
DAMASK_spectral.f90 is a "debug version" with a number of different criteria to determine divergence. will be removed later on.
2011-07-25 16:30:21 +00:00
Philip Eisenlohr
2e9c605571
somehow forgot to move the numerics.config into the config subdir...
2011-07-21 08:40:45 +00:00
Franz Roters
e92e5cae53
restarting now works with Abaqus (standard, cannot test explicit due to lack of license)
...
you have to specify the job you are restarting from in the job description (cae), if you prepare your input file by hand this is the first line after *Heading
example: if the first job was using Oldjob.inp the first entry in the job description needs to be Oldjob (without the .inp)
as for Marc restart works only from last converged increment, i.e. ther restart writing should be specified like this:
*retsart, write, frequency=1, overlay
Overlay is not essential but saves a lot of disk space and as stated before you can only restart from the last converged increment anyway
2011-07-18 09:15:20 +00:00
Philip Eisenlohr
8c65cb9ea6
small output polishing
2011-07-15 12:25:38 +00:00
Martin Diehl
09ba92c26e
added and rearranged error messages, polished output and simplified calculation of f depending on fdot or L
...
guessing along former trajectory is now on per default, 'guessreset' and 'dropguessing' switch it off.
2011-07-14 09:37:31 +00:00
Martin Diehl
56340fd487
changed input of loadcase. Now fdot (time derivative) can be used instead of velocity gradient. Velocity gradient needs to have each line fully or not at all defined, as for other loadcases the stress BCs are not known in advance. Also added the possibility to keep guessing along trajectory of former loadcase.
...
changed back to use the compliance of initial linear material behavior.
added counter of non-converged steps
renamed compiler flags in makefile
2011-07-13 16:33:12 +00:00
Martin Diehl
8153cd50b4
added spectral numeric parameters to numerics.config, changed values for spectral numeric parameters in numerics.f90 to more suitable values for new method for determination of divergence in Fourier space
2011-07-11 14:28:56 +00:00
Martin Diehl
a08eaecf4e
polishing (names of variables, spaces, comments etc.)
...
renamed mpie to DAMASK in IO.f90 error message
2011-07-07 15:27:35 +00:00
Martin Diehl
a561ef1cf5
corrected calculation of divergence in Fourier space, removed normalization of normdyad (was useless), now using correct compliance for calculation of stress BC.
2011-07-07 10:03:55 +00:00
Franz Roters
18a5841bc5
keyword freq for frequency of output writing was not evaluated when reading loadcase file
2011-07-07 09:18:05 +00:00
Onur Guevenc
e889b69bec
Ability to define loglinear time increments by using 'logincs' or 'logsteps' instead of 'incs' in loadcase file is added.
2011-07-06 13:10:18 +00:00
Philip Eisenlohr
314adae1bb
spectral solver can now write result at reduced output frequencies: use 'f', 'freq', or 'frequency' keyword in loadcase definition.
...
example: ... time 1 incs 100 freq 10 will write output at times 0.0, 0.1, 0.2, ... , i.e., every ten increments only.
2011-06-15 17:48:14 +00:00
Philip Eisenlohr
3985a98da7
changed default to "no clean". if clean-up required, use '--clean' option!
2011-06-15 16:40:34 +00:00
Philip Eisenlohr
480021e788
added '--noclean' option
2011-06-14 14:56:10 +00:00
Philip Eisenlohr
1877026d86
sorry, dangling "endif"...
2011-06-14 14:35:55 +00:00
Philip Eisenlohr
cc925cadee
changed output/debug-level relation for two statements
2011-06-14 14:08:13 +00:00
Philip Eisenlohr
a26d9c844b
max size of crystallite result is now based on actual use within the mesh, not just picking the largest chunk from the material.config file...
2011-06-08 09:16:48 +00:00
Philip Eisenlohr
8041587a72
changed internal debug verbosity in accord with debug.config listing.
2011-06-06 15:27:35 +00:00
Philip Eisenlohr
4a694fa7fd
changed wildcard letter from '#' to '*' now consistent with new IO comment parsing.
...
fixed memory bug with bc_maskvector.
some brushing up here and there...
2011-06-06 15:20:28 +00:00
Christoph Kords
ae4c8fa2d8
renaming of "mpieNumThreadsInt" to "DAMAKS_NumThreadsInt" was forgotten here
2011-06-06 08:51:07 +00:00
Christoph Kords
9a64f3dd85
* comments are now recognized by IO even when they do not appear at the beginning of the line
...
* no need for the zero entries in the material.config anymore
2011-05-30 09:09:19 +00:00
Christoph Kords
bbf75f3fb5
cannot omit entries for second to fourth slip system family, though they are zero
2011-05-30 07:53:41 +00:00
Franz Roters
08d39342e4
reworked restarting for compatibility with abaqus (not yet fully working)
...
added new orientation feature for direct simulation:
component type (random) asigns random orientation to an entire grain
2011-05-28 09:44:43 +00:00
Franz Roters
2418dfe96d
changed MPIE_NUM_THREADS to DAMASK_NUM_THREADS
2011-05-28 09:42:25 +00:00
Christoph Kords
e39445ee7a
dead dislocations now exert a backstress on their "home" MP
2011-05-26 09:35:42 +00:00
Christoph Kords
78f74e8991
forgot to use "mesh_ipCenterOfGravity"
2011-05-26 09:23:13 +00:00
Christoph Kords
cac45cff96
ip coordinates are now updated every cycle; this is needed for the nonlocal internal stress fields
...
* Marc: node displacements are added to initial node coordinates (mesh_node0) to get current node positions (mesh_node), then ip coordinates are deduced
* Abaqus: ip coordinates are directly updated, no update of node coordinates!
* Spectral: for the moment no update of either ip or node coordinates! passing only dummy values with initial ip coordinates
2011-05-24 15:57:59 +00:00
Christoph Kords
a910c469df
update of nonlocal material parameters
2011-05-20 08:11:22 +00:00
Philip Eisenlohr
808a6d6ad6
+ error box + now tells error number (useful for Abaqus)
2011-05-13 16:55:13 +00:00
Philip Eisenlohr
1baae024cb
added two more <crystallite> examples
2011-05-13 16:54:08 +00:00
Philip Eisenlohr
d366a53f4e
probably installation is a better place for the abq.env file
2011-05-11 17:10:45 +00:00
Philip Eisenlohr
fa98133f8e
renamed interface from "mpie_interface" to "DAMASK_interface"
2011-05-11 17:01:03 +00:00
Philip Eisenlohr
75192789e8
added making of DAMASK_spectral.exe
2011-05-11 16:45:37 +00:00
Philip Eisenlohr
43cc68555b
observe new include subdirectory
2011-05-11 16:40:51 +00:00
Philip Eisenlohr
e5a2d829b0
new substructure with 'include' and 'config' directories
...
renaming of mpie_... to DAMASK for main usersubroutines
extension of element outputs from 5 to 8 digits (FFT!!!)
2011-05-11 16:38:45 +00:00
Christoph Kords
a0bec65c7b
Last version didn't compile, because of missing keyword "call" in front of subroutine call to IO_error
2011-05-09 08:49:03 +00:00
Philip Eisenlohr
660c9212f8
introduced error 667 for out of bounds user result requesting
2011-05-04 16:02:18 +00:00
Philip Eisenlohr
affd383ef8
simplified disorientation calculation. performed FEM check that "grainrotation" reflects the *active* rotation from the starting orientation to the current one with respect to the lab coord system (as expected).
2011-04-14 19:09:44 +00:00
Christoph Kords
5814262f55
moved some write statements within stateIntegrationEuler
2011-04-14 09:35:56 +00:00
Philip Eisenlohr
349f022100
reinstantiated calculation of grainrotation (still needs check for correctness, i.e. active or passive rotation output)
2011-04-13 16:08:52 +00:00
Franz Roters
7d84a0911e
removed unused variables
2011-04-13 14:16:22 +00:00
Christoph Kords
b4678112cd
sorry, last version did not compile. now with correct encoding.
2011-04-13 11:51:46 +00:00
Christoph Kords
dd2057bac5
changed header to unicode utf-8 encoding
2011-04-13 11:24:36 +00:00
Philip Eisenlohr
ef4fc9d0ee
added <crystallite> output "texture" to list of examples
2011-04-12 15:33:29 +00:00
Franz Roters
c1b8391110
changed enconding of all source files to UTF-8 without BOM (signature) Codepage 65001
2011-04-07 07:20:28 +00:00
Christoph Kords
4d0fefd231
security factor of 1.2 for CFL condition in constitutive_nonlocal_dotState
2011-04-06 11:47:24 +00:00
Philip Eisenlohr
51763ed93e
corrected number of incs reported in spectralOut-file
...
inc 0 contains undeformed results
plus lots of typographic polishing
2011-04-06 09:58:17 +00:00
Franz Roters
7c7c929455
added comments on origin of files
2011-04-06 09:40:39 +00:00
Christoph Kords
4ea1fe436b
added check for CFL condition in constitutive_nonlocal_dotState
2011-04-06 09:07:36 +00:00
Philip Eisenlohr
e00d073ee3
added new 2D triangle elements
...
added some sourcecode commenting on internal database formats
corrected database to allow for ipVol and Area calc in 2D element cases
2011-04-06 08:35:37 +00:00
Franz Roters
fcdb805225
added copyright text to all f90 (free) format files
2011-04-04 14:09:54 +00:00
Christoph Kords
6ca8942f62
choose correct output format for debug_verbosity: integer instead of logical
2011-04-04 08:38:55 +00:00
Christoph Kords
790dbed1e4
* removed last remnants of old debugger
...
* replaced "dble" intrinsic function by "real" with pReal kind in constitutive_nonlocal.f90
* removed useless line breaks in output of state in CPFEM.f90
2011-04-04 08:34:52 +00:00
Alankar Alankar
06fc83ac14
Final version of titanmod
2011-03-31 09:21:43 +00:00
Franz Roters
fc471d73f3
added Arun to list of authors
2011-03-30 14:39:28 +00:00
Christoph Kords
c36968fc68
distance for periodic images in internal stress calculation was incorrect
2011-03-30 11:57:41 +00:00
Franz Roters
08da2b5e4d
added minimum abaqus_v6.env file containing all changes necessary for the use of the MPIE subroutine
...
changed comments in interface routines to refelect this
2011-03-29 13:49:50 +00:00
Franz Roters
e9e6abbdaf
introduced variables for compiler options
...
added -fpp switch to invoke precompiler
2011-03-29 07:55:38 +00:00
Christoph Kords
314ca3fe7f
Internal stress calculation in nonlocal model: instead of integration of excess gradients (->Bayley) we now sum up contributions from adjacent superdislocations within a certain radius R. When periodicity is used, also periodic images are considered in stress evaluation.
2011-03-29 07:34:33 +00:00
Christoph Kords
3d51dd36fa
* Introduced preprocessor directives in order to suppress compilation of most write statements when using openmp. This tremendously improves efficiency of parallelization.
...
* Also added some more openmp directives to increase percentage of parallelized code.
* "implicit none" was missing in two subroutines of homogenization and constitutive.
2011-03-29 07:27:19 +00:00
Philip Eisenlohr
5c05c5d068
corrected mixed up array size for hardeningMatrices (twin/slip)
...
added explicit array range 1:lattice_maxNslip/twinFamily
2011-03-24 17:20:35 +00:00
Franz Roters
fa323f3f0b
removed division by zero from debug_reset(), uses huge() now
2011-03-24 07:38:56 +00:00
Franz Roters
78d4e7d1dc
mpie_cpfem_abaqus_std.f: first call is with kinc==1
...
mesh: allow multiple element sets with identical material
2011-03-23 16:20:12 +00:00
Franz Roters
8467c91dab
moved setup scripts back to subdirs where they are needed
2011-03-22 15:42:53 +00:00
Christoph Kords
31a570768b
new error 237: singularity in internal stress calculation
2011-03-22 13:58:42 +00:00
Nan Jia
7be2edb10e
added "texture
...
" as possible crystallite output => reports ID for later discrimination...
2011-03-22 13:40:27 +00:00
Christoph Kords
b8b75edd7d
no changes to previous version, just wanted to add some comment to the previous commit:
...
subroutine "constitutive_nonlocal_dotState" only affects the current dotState, so no need to pass the whole array as argument
2011-03-21 15:23:36 +00:00
Christoph Kords
9b1e1e35ea
dotState
2011-03-21 15:18:09 +00:00
Christoph Kords
462eda6736
split parallel region in integrateStateFPI into two
2011-03-21 14:30:10 +00:00
Christoph Kords
5ee73dee72
age dotState before resetting it to zero, otherwise the statedamping does not work.
2011-03-21 13:06:11 +00:00
Christoph Kords
fc6f2ae68f
No need to call constitutive_microstructure at the beginning of each crystallite step, since it's already been done at the end of the previous step. Just do it once after initialization to start with correct values for the dependent state variables.
2011-03-21 10:35:42 +00:00
Christoph Kords
11138e3ee2
debugging output is now controlled by the "verbosity" parameter in the debug.config ranging from 0 (=almost no output) to 8 (=very detailed output)
...
0 : only version infos and all from "hypela2"/"umat"
1 : basic outputs from "CPFEM.f90", basic output from initialization routines, debug_info
2 : extensive outputs from "CPFEM.f90", extensive output from initialization routines
3 : basic outputs from "homogenization.f90"
4 : extensive outputs from "homogenization.f90"
5 : basic outputs from "crystallite.f90"
6 : extensive outputs from "crystallite.f90"
7 : basic outputs from the constitutive files
8 : extensive outputs from the constitutive files
If verbosity is equal to zero, all counters in debug are not set during calculation (e.g. debug_StressLoopDistribution or debug_cumDotStateTicks). This might speed up parallel calculation, because all these need critical statements which extremely slow down parallel computation.
2011-03-21 10:31:17 +00:00
Christoph Kords
9d7ede7e03
extreme values of stress and jacobian now recorded in CPFEM_general. variable declaration and generation of output moved to debug module.
2011-03-17 13:13:13 +00:00
Christoph Kords
235266b169
openmp parallelization working again (at least for j2 and nonlocal constitutive model).
...
In order to keep it like that, please follow these simple rules:
DON'T use implicit array subscripts:
example: real, dimension(3,3) :: A,B
A(:,2) = B(:,1) <--- DON'T USE
A(1:3,2) = B(1:3,1) <--- BETTER USE
In many cases the use of explicit array subscripts is inevitable for parallelization. Additionally, it is an easy means to prevent memory leaks.
Enclose all write statements with the following:
!$OMP CRITICAL (write2out)
<your write statement>
!$OMP END CRITICAL (write2out)
Whenever you change something in the code and are not sure if it affects parallelization and leads to nonconforming behavior, please ask me and/or Franz to check this.
2011-03-17 10:46:17 +00:00
Franz Roters
97a0146672
deactivated one debug statement at the end of crystallite_updateState(g,i,e) as it leads to division by zero if constitutive_state(g,i,e)%p(1:mySize) contains zero values
...
statement should be changed to check for zero values
2011-03-11 10:05:30 +00:00
Philip Eisenlohr
1f0569230b
new installation/setup dir to hold all top-level make_*-scripts
2011-03-11 09:20:37 +00:00
Franz Roters
bdc17f7d72
extended comment on modification of abaqus_v6.env
2011-03-11 09:05:09 +00:00
Franz Roters
6475235fb4
included "-heap-arrays 500000000" in remark on how to change compile command
2011-03-08 08:18:04 +00:00
Franz Roters
18e668340f
Abaqus interfaces dapted to newest version of the rest of the code
...
does not yet check for restart, have to check out first how restarts work in Abaqus
explicit code not checked as we do not have a license
2011-03-07 12:49:27 +00:00
Franz Roters
654b5ea987
set type for acos_arg
2011-03-04 14:57:22 +00:00