Commit Graph

459 Commits

Author SHA1 Message Date
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