Commit Graph

1035 Commits

Author SHA1 Message Date
Martin Diehl c2495d0d4a changed misplaced private to public statement and renamed qsort to math_qsort 2013-02-01 07:26:21 +00:00
Martin Diehl e74b5da19a changed all remaining routines to fortran-fast arrays (geometry reconstruction etc.)
changed all remaining routines in f2py to more clever determination of array size (requires f2py >= 2.0)
enabled 3D visualize to work with odd resolution by switching to linear reconstruction
PLEASE NOTE: Redefinition of routines for f2py might cause trouble -> DELETE DAMASK_ROOT/lib/damask/core.so in this case
further changes: added pure statement where possible, polished, unified use of "Q" for "Quaternion" and reordered math to have similar routines together
2013-01-31 16:28:08 +00:00
Mahesh Balasubramaniam 04d48c79b9 symlink_Code.py split seperately from the previous setup_code.py 2013-01-29 15:31:01 +00:00
Mahesh Balasubramaniam bbd7e72fe8 setup_Makefile split seperately from the previous setup_code.py 2013-01-29 15:30:28 +00:00
Mahesh Balasubramaniam 6dcea3f419 a simple shell script to run setup_Makefile.py,compile_SpectralSolvers.py and symlink_Code.py in the said order 2013-01-29 15:29:43 +00:00
Mahesh Balasubramaniam c816d5ca74 compiling DAMASK_Spectral split seperately from setup_code.py 2013-01-29 15:28:21 +00:00
Franz Roters 5228af627c corrected calculation of gmod from c_66 (Voigt approximation for a random polycrystal)
approximate twin volume by a disk rather than an elipsoid
2013-01-29 14:59:26 +00:00
Martin Diehl 08a2aa79f7 doxygen comments for homogenization.f90, unified naming ip->i, el->e 2013-01-29 10:28:01 +00:00
Martin Diehl 1594a4bdf8 doxygen comments for isostrain, unified naming ip->i, el->e 2013-01-28 16:36:26 +00:00
Martin Diehl 3ffd6499b1 change bash-only "let" to "`expr`", abaqus_v6.env now suppresses warnings about long lines (there are only comments anyway) 2013-01-28 15:30:51 +00:00
Claudio Zambaldi ae9af9143d in python never put import of standard library modules on the same import
line as own modules (here:damask)
-        und die folgenden Zeilen werden ignoriert --

M    setup_code.py
2013-01-24 14:45:23 +00:00
Martin Diehl db12e6e0c8 removed forgotten debug write statements (thanks Franz!) 2013-01-24 13:20:57 +00:00
Pratheek Shanthraj 7a84209a14 bug fix in microstructure
-This line, and those below, will be ignored--

M    constitutive_dislotwin.f90
2013-01-24 13:12:51 +00:00
Martin Diehl 6ce78cf806 gfortran now detects "call flush" statements, removed the last of them in mesh.f90 2013-01-23 21:50:01 +00:00
Martin Diehl d1985e0bef checked and improved on Franz' one call to CPFEM only improvement 2013-01-23 19:56:45 +00:00
Martin Diehl 96577b18fb introduced error code for run_test.py 2013-01-23 18:33:46 +00:00
Pratheek Shanthraj 50e874f887 fixed bug in elasticity matrix calculation 2013-01-22 15:48:47 +00:00
Martin Diehl 652a8366fe splitted lines > 132, added pure statements where suggested by gfortran 4.7 2013-01-22 13:02:23 +00:00
Martin Diehl df089b94bd line break in lines > 132 2013-01-22 11:06:39 +00:00
Martin Diehl 2b319f02e6 small corrections on changes related to non-schmid systems 2013-01-22 10:04:15 +00:00
Pratheek Shanthraj f3bd920c23 added non-schmid structure 2013-01-21 23:50:28 +00:00
Pratheek Shanthraj 60fec0e8ec added code structure for non-schmid mechanics. work in progress… 2013-01-21 23:11:16 +00:00
Pratheek Shanthraj fd94c786f0 moved stiffness tensor calculation to lattice
introduced 'isotropic' and 'orthorhombic' lattice types to use corresponding symmetries in stiffness tensor. intended to be used with non-crystal plasticity models (j2, constitutive_none with isotropic, cubic or orthotropic elasticity).
2013-01-21 21:57:26 +00:00
Franz Roters c195f316e1 corrected calculation of twin stiffness matrix 2013-01-21 08:17:43 +00:00
Martin Diehl 9ee8108b6b added doxygen documentation to material.f90 and marked read-only quantities as protected where possible, removed substituted "call flush" by "flush" 2013-01-18 11:30:52 +00:00
Martin Diehl c6a79d2b3d divergence_correction for basic solver variants has now 3 possibilities:
0: uncorrected, slope per sidelength (physical dimension) e = res/dim
1: corrected by sidelength, slope per unitlength          e = res/1
2: corrected such that distance between FPs               e = 1

alway regarding the medium length of x,y,z direction
2013-01-16 10:40:53 +00:00
Martin Diehl 20bc97b7eb added doxygen comments and unified naming scheme for ip, element and grain 2013-01-16 10:14:57 +00:00
Christoph Kords 8a45a90775 new crystallite output "grainrotationX", "grainrotationY", "grainrotationZ" that gives the deviation of the initial orientation in degrees around the sample reference x/y/z axis, while "grainrotation" still gives the same as axis angle pair in crystal coordinates 2013-01-16 08:45:41 +00:00
Martin Diehl 645b2605e1 corrected reporting to statistics file (*.sta) 2013-01-11 10:40:16 +00:00
Martin Diehl 4c145376a0 forgot some integers 2013-01-10 18:50:14 +00:00
Martin Diehl 6e3e06bed7 corrected PETSc macro expansion 2013-01-10 15:36:55 +00:00
Martin Diehl 563b1f5e4b added some warning and explicit size of arrays 2013-01-10 13:33:43 +00:00
Martin Diehl 0d5e91ac87 corrected reporting of basic PETSc variant and unified reporting of all spectral solvers
improved warning and error in IO, now able to report correctly elements up to 9 digits
2013-01-09 22:19:32 +00:00
Martin Diehl 55b88e47b7 fixed wrong temperature when using spectral solver 2013-01-09 18:08:08 +00:00
Martin Diehl 00246ade4e missing range in array fixed 2013-01-09 14:43:27 +00:00
Martin Diehl 093cf92338 remove omp statements during initialization, "line" for reading in from material.config now has a default (empty) value to prevent conditional jump depend on this value 2013-01-08 22:11:59 +00:00
Martin Diehl 4eaa97b33c minor changes on buggy latest commit (wrong use statement) 2013-01-08 21:54:25 +00:00
Martin Diehl 19d86ca06a removed unnecsessary omp statements, removed one transpose in constitutitve 2013-01-08 11:09:20 +00:00
Martin Diehl ce7a0571fd fixed bug in forwarding fields for AL solver 2013-01-08 10:12:03 +00:00
Martin Diehl d90efef535 fixed bug in cutback scheme 2013-01-07 21:42:00 +00:00
Martin Diehl 738f363263 corrected small issues with PETSc debugging 2013-01-03 16:17:23 +00:00
Martin Diehl 7a43d1b6ad added funtionality to specify working directory to spectral solver 2013-01-02 17:02:12 +00:00
Christoph Kords 766202bae9 corrected debug output of aged state: first reports for selected debug_el,debug_ip 2012-12-28 12:15:59 +00:00
Christoph Kords f14fd45ce1 new material parameter "egdejog": fraction of annihilated screw dipoles that forms edge jogs 2012-12-23 12:56:15 +00:00
Martin Diehl 64d167fa90 loadcase rotation now working for AL solver 2012-12-17 10:18:39 +00:00
Christoph Kords 7dd1130e92 reset syncSubFrac flag when turning terminallyIll 2012-12-16 16:18:36 +00:00
Christoph Kords 92d2c83334 more debugging info for timesyncing 2012-12-16 11:30:19 +00:00
Christoph Kords 4f12073dcb once again corrected parallelization statements
added some debugging writes for timesyncing
2012-12-16 10:54:13 +00:00
Martin Diehl 1baf8dea5d load case rotation no working for Basic PETSc solver 2012-12-15 23:52:06 +00:00
Martin Diehl 5c0c7121e7 made PETSc silent by removing -snes_view from default options.
introduced PETSc option for debugging that introduces some debugging options into the petsc options and move PETSc initialization from numerics to DAMASK_spectral_utilities
2012-12-15 18:07:49 +00:00
Martin Diehl 566b680319 made new spectral solver the default (no need for SOLVER=NEW anymore) and added additional warnings switche to be used with gfortran >= 4.6
added comments
2012-12-15 16:21:10 +00:00
Martin Diehl b1f28ba5e7 made restart working for all solvers and added corresponding test
corrected error handling for FFT based function in case of odd numbers etc.
2012-12-14 17:30:22 +00:00
Martin Diehl 7b87987751 introduced option for regridding to numerics.f90, working as follows:
first cut back is tried if material point model oder BVP solver does not converge.
If no regridding is enabled after max cut back, in case of non-converged material point the simulation stops and in case of non-converged BVP solver it continues.
set regridMode to 2 to enable regridding if BVP solver OR materialPoint model do not converge,
set regridMode to 1 to enable regridding if materialPoint model do not converge, non-converged BVP solver will be ignored as in the standard case.
For regridding, the load case need to have a restart freq set.

enabled restarting for Basic PETSc variant
2012-12-14 15:18:04 +00:00
Christoph Kords 64d9c70dc7 corrected nonconforming use of openmp parallelization 2012-12-14 14:30:08 +00:00
Martin Diehl d559653722 small improvements on tests 2012-12-13 20:20:04 +00:00
Martin Diehl 2b4eb2a257 changed shell variable containing name of Workstation from $HOST to $HOSTNAME as this is also working on Ubuntu 2012-12-13 13:53:54 +00:00
Christoph Kords f744fc1d47 fixed bug in parallelization: flushing of crystallite_todo was missing at a couple of places 2012-12-11 15:05:08 +00:00
Christoph Kords 6a9b19e4c0 fixed bug in timesyncing procedure: if any ip that synchronizes its time step did not converge, all nonlocals become terminally ill; before, this led to an infinite loop in crystallite 2012-12-11 13:42:22 +00:00
Christoph Kords 03a88d4798 fixed timesyncing for special case of ip that synchronizes its time step, but does not have a neighbor 2012-12-11 13:38:36 +00:00
Christoph Kords 35a0483507 fixed bug in last revision: FE_geomType was not in namespace 2012-12-10 17:22:16 +00:00
Philip Eisenlohr 10ed848258 fixed 2 bugs: missing mapping with FE_geomtype(mesh_element(2,...)) 2012-12-10 17:03:28 +00:00
Christoph Kords 37028455e9 always use the current state for leaving flux calculation when no neighbor is present 2012-12-09 12:24:32 +00:00
Christoph Kords 98d02dcffb removed call to microstructure in stateJump function, since this is already done in the state integrator subroutine 2012-12-07 07:50:41 +00:00
Christoph Kords 149c747688 use non-corrected densities for rate check in dotState 2012-12-06 17:14:35 +00:00
Christoph Kords 1f5a30d6f0 corrected typo in random multiplication term 2012-12-06 14:04:18 +00:00
Christoph Kords 20f7053ad3 correction of interaction coefficients due to line tension effect only applies to coefficients 3, 4 and 5 2012-12-04 18:23:46 +00:00
Christoph Kords 0986a66449 accidentally also included some changes in crystallite_integrateStress in last commit; reverted these changes in this revision 2012-12-03 16:34:41 +00:00
Christoph Kords f2dacb5f40 polished debugging output 2012-12-03 16:29:54 +00:00
Christoph Kords 9eb89b0050 made random multiplication switchable via material.config 2012-12-03 12:59:38 +00:00
Christoph Kords 62ddbf26df slightly changed the multiplication term in the nonlocal model for the starvation case 2012-11-29 18:50:25 +00:00
Christoph Kords f92d34dd22 removed some unused variables 2012-11-29 18:44:00 +00:00
Martin Diehl 57fed66a8e simplified load case parsing 2012-11-29 13:26:17 +00:00
Philip Eisenlohr 7358dd6679 fixed wrong index contraction in acoustic tensor calculation
(blew up calculations with zero Poisson ratio...)
2012-11-28 18:46:07 +00:00
Philip Eisenlohr 6bb3a475ce added output of current relative tolerance when reporting relative errors 2012-11-28 18:44:51 +00:00
Martin Diehl 5ea0139678 simplified the rate calculation interface in DAMASK_spectral_utilities.f90, corrected bug in rotation parsing and added debug option "rotation" to spectral solver options. This will show the current average stress and deformation additionally in lab coordinate system 2012-11-28 15:04:05 +00:00
Henry Hutasoit 07bec16268 corrected compilation exception for gfortran in case of compilername!=F90 2012-11-28 13:54:02 +00:00
Christoph Kords 29618df550 annihilate only part of the screw dipoles (specified by minimumDipoleHeight), not all; moved annihilation of screws from deltaState back to dotState 2012-11-28 12:09:48 +00:00
Christoph Kords e10000a338 Introduced an alternative cutback scheme for the nonlocal model, that allows to keep the results of most of the ips that immediately converged, and only do cutbacks in regions where some ips are in big trouble. Only works for nonlocal model and state integrator 2. 2012-11-27 18:36:55 +00:00
Martin Diehl e45e1316ba removed auto detection of compilername, it only works if the file you're looking for (in our case "ifort") is in the same directory as the Makefile 2012-11-27 17:22:03 +00:00
Philip Eisenlohr 1e32eb560e corrected buggy calculation of Schmid matrix for twins introduced in rev1809.
(stress acting on twin systems was overestimated by factor of sqrt(3) due to that!!)

additional polishing.
2012-11-23 17:02:50 +00:00
Martin Diehl 11ed7fab86 corrected bug in curl calculation causing the output of transposed tensor (according to information stored in testing/9102/proof/Curl of Tensor - Physics Forums.pdf)
addCurl test is now done against analytical solution and working, added it to list of automated tests.
small improvements on test.py
2012-11-23 15:16:51 +00:00
Christoph Kords e584c0e6e8 deleted space in front of preprocessor line 2012-11-22 20:04:33 +00:00
Martin Diehl dbc26e5f25 corrected auto detection of ifort compiler 2012-11-22 13:17:54 +00:00
Christoph Kords 38ec462f4a order of integration now same for all state integrators: first calculate the dotState and then the deltaState 2012-11-22 13:04:19 +00:00
Philip Eisenlohr 7d196fbb25 polishing 2012-11-22 09:58:36 +00:00
Philip Eisenlohr 23a0ca3b59 keep "odd" stress in rnd-range of -1.0 to -0.5 and 0.5 to 1.0
serial calc now skips IPs when /elementhomogeneous/

for /elementhomogeneous/ IPs > 1 individually copy the result from IP 1 to prevent spuriously outdating themselves.
2012-11-21 17:00:29 +00:00
Philip Eisenlohr ec8a84ded7 added output of element and ip to debug messages 2012-11-21 16:58:14 +00:00
Philip Eisenlohr d189a6a7a0 polishing 2012-11-21 16:57:57 +00:00
Christoph Kords 760af1fbbf crystallite_requested now masked by execIP, now elemhomogeneous works again 2012-11-19 15:13:48 +00:00
Franz Roters d4a59541ad removed write statements which were introduced for "debuging" 2012-11-19 15:12:11 +00:00
Christoph Kords 9fb94cd707 breaking crystallite loop in case of terminally ill (this functionality was probably lost since rev1886) 2012-11-19 08:39:48 +00:00
Christoph Kords 4195d53d11 message of last commit was incomplete: moved annihilation of screw dipoles from dotstate to deltaState, since it is not a rate 2012-11-17 13:54:22 +00:00
Christoph Kords 467c186f0f annihilation of screws 2012-11-17 13:50:20 +00:00
Nader Zaafarani dc5cd8a4c4 A modified twin-twin interaction matrix for BCC is introduced.
An introduction of a third parameter at the interactionTwinTwin in the material.config for BCC-dislotwin materials is essential.
2012-11-16 13:39:08 +00:00
Philip Eisenlohr d9a98417ca switched element library to geomType based.
saves to copy same geometry description for different elements that are essentially similar regarding the IP number but differ in total node count.

introduced quadratic tetrahedron (Marc element 127 -- element 157 might also work, but did not perform well in fully elastic calc so far)
2012-11-15 22:45:20 +00:00
Christoph Kords aec163941d calculate ip coordinates only once when the first ip enters calculation mode 2012-11-15 12:31:39 +00:00
Philip Eisenlohr bdbc202c7e corrected typos 2012-11-15 09:22:36 +00:00
Nader Zaafarani c0a5a1dfd1 Formation of the Slip-Slip interaction matrix for BCC. 2012-11-14 17:35:33 +00:00
Martin Diehl 7e683ca7c3 removed coordinates from call to CPFEM_general and introduced direct storage of coordinates to mesh_ipCoordinates 2012-11-14 14:38:10 +00:00
Martin Diehl 1896c07c70 corrected some bugs in the last commits 2012-11-14 14:33:41 +00:00