Commit Graph

697 Commits

Author SHA1 Message Date
Martin Diehl 44d8282863 corrected reading in of ABAQUS debug modes and made numbering scheme for debugging depending on variables hoping to prevent these errors in debug.f90
Put all (now public) logicals in FEsolving.f90 again into one specification statement
2012-03-21 18:04:52 +00:00
Martin Diehl 15dd860de9 new switch "SOLVER", set it to SOLVER=AL to compile the Augmented Lagrange version of the spectral solver 2012-03-21 18:01:25 +00:00
Pratheek Shanthraj 131c9ac93e dPdF calculations made consistent with constitutive_TandItsTangent 2012-03-21 15:00:36 +00:00
Franz Roters 8a2f2c5a95 stress iteration loop now uses generalized elasticity by calling TandItsTangent
the anlalytical tangent calculation should now be adopted to also use TandItsTangent
2012-03-21 10:57:27 +00:00
Franz Roters 8d8a8103eb lastIncConverged, outdatedByNewInc, and cutBack need to be public as well!
please keep in mind the FEM interfaces which also need to work!!!
2012-03-21 07:51:07 +00:00
Martin Diehl dbdc7ddfa2 debug.config, debug.f90, DAMASK_abaqus_exp.f, DAMASK_abaqus_std.f: changed to new debug scheme (wasn't working)
lattice.f90, FEsolving.f90: explicitly defined public functions and variables, all others are now private
numerics.f90: changed output format of real numbers, now instead of 0.1eX 1.0e(X-1) is printed to screen
Makefile: now using correct Optimization flags for OPTIMIZATION=AGGRESSIVE
DAMASK_spectral_AL.f90: improved, but still testing. Stress BCs now seem to be handled correctly
2012-03-20 18:01:31 +00:00
Martin Diehl 04d83ec9cd added "-assume byterecl" in Makefile for ifortran to specify with "recl=" the size of the file in bytes instead of 4byte chunk when opening files. (same as in gfortran per default).
no important changes in other files
2012-03-20 12:26:21 +00:00
Philip Eisenlohr 012d568cf8 slightly restructured divergence debug output 2012-03-19 16:41:55 +00:00
Martin Diehl 632d57cc31 corrected div calculation regarding dimension and resolution 2012-03-19 13:19:15 +00:00
Christoph Kords 5263366615 adding switch in material.config for short range stress correction 2012-03-15 14:58:12 +00:00
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