Commit Graph

1999 Commits

Author SHA1 Message Date
Martin Diehl b4456e76b3 introduced two small bugs 2015-04-11 09:25:15 +00:00
Martin Diehl 470fc2dce3 comparison for zero should be abs:
a == 0.0_pReal   becomes abs(a) <= tiny(a)
a /= 0.0_pReal   becomes abs(a) > tiny(a)
remove unused variables
2015-04-11 08:25:23 +00:00
Martin Diehl 6170209198 use statement for marc was wrong (preprocessor) 2015-04-11 05:09:15 +00:00
Martin Diehl d7b36c2c30 gfortran complaint about implicit casting,floating point comparison, and unused imported variables.
additionally changed use of math_invert33 to math_inv33 if det is not needed
2015-04-10 19:09:26 +00:00
Martin Diehl 7d0a1ebea6 math_transpose33 not used 2015-04-08 18:33:08 +00:00
Martin Diehl b6481c2513 introduced simpler multiplication and forall loops
matmul is ok for openmp, check in the web and run the state integration test.

Example program testing for new state update for rkck dot state:

program test

real, dimension(6,10) :: dotState=reshape(&
                      [1,1,1,1,1,1,1,1,1,1,&
                       2,2,2,2,2,2,2,2,2,2,&
                       3,3,3,3,3,3,3,3,3,3,&
                       4,4,4,4,4,4,4,4,4,4,&
                       5,5,5,5,5,5,5,5,5,5,&
                       6,6,6,6,6,6,6,6,6,6],[6,10])

real, dimension(10) :: residuum
real, dimension(6) :: B=2.5

integer :: i

residuum = B(1)*dotState(1,:)+& 
           B(2)*dotState(2,:)+& 
           B(3)*dotState(3,:)+& 
           B(4)*dotState(4,:)+& 
           B(5)*dotState(5,:)+& 
           B(6)*dotState(6,:)
do i =1,10
  print*,residuum(i)
enddo

residuum =  matmul(transpose(dotState),B)
do i =1,10
  print*,residuum(i)
enddo

end program test
2015-04-01 16:45:53 +00:00
Martin Diehl 693efcaa58 comment was confused by search and replace 2015-04-01 16:04:33 +00:00
Martin Diehl 63491bf268 for some reasons, ifort was complaining about mixed integer types.
also deleted #ifdef PETSC since we do not support the solver without PETSC
2015-03-30 20:49:17 +00:00
Pratheek Shanthraj c7418db9bd FEM : hierarchical ordering of h5 output data and more meaningful visualisation for multiple grains/crystallites/phases 2015-03-30 09:45:10 +00:00
Martin Diehl e0f1132a17 gfortran complaints: equal comparison of reals and external (MPI) functions 2015-03-29 12:54:13 +00:00
Martin Diehl 9e824d029e renamed to new names: spectralsolver and spectralfilter 2015-03-28 21:14:11 +00:00
Martin Diehl 1b2e4c0239 removed old solver 2015-03-28 17:41:40 +00:00
Martin Diehl 8a30021202 cleaned up core modul 2015-03-27 14:10:18 +00:00
Pratheek Shanthraj c8554a5641 corrected alignment of restart output byte offset. restart test working now 2015-03-27 07:17:24 +00:00
Pratheek Shanthraj 1ee81e74ea more patches to get the tests running again:
- fixed increment counting in postResults to current output scheme

- corrected node coordinates calculation

- some work on restart (restart test still not running)
2015-03-26 21:19:28 +00:00
Pratheek Shanthraj 86283359f1 PetscFinalize should be the last call before exiting 2015-03-26 13:43:18 +00:00
Pratheek Shanthraj a9cf8e8051 some patches to compile damask core module without fftw-mpi 2015-03-26 13:41:19 +00:00
Pratheek Shanthraj 2417877bdb dropped non petsc basic spectral solver 2015-03-25 16:08:41 +00:00
Pratheek Shanthraj d44fce4a76 Spectral solver now fully parallel (parallel IO, domain decomposition, FFTs and restart). Working but not extensively tested so please report bugs to me 2015-03-25 16:06:19 +00:00
Pratheek Shanthraj 37a7364a3e multi physics output now working for all solvers 2015-03-25 16:02:30 +00:00
Pratheek Shanthraj 2d4e7fb8e7 calculate dFi/dS (9x9 matrix inverse) for the analytic jacobian only when needed. should improve performance 2015-03-20 07:41:11 +00:00
Pratheek Shanthraj 2e44a846af need to keep track of temperature again since we can no longer get this from F_T 2015-03-18 18:03:18 +00:00
Pratheek Shanthraj c5a8543f17 updated petsc 2015-03-18 17:18:43 +00:00
Martin Diehl 4a0c1c1717 comments 2015-03-15 15:30:14 +00:00
Martin Diehl 12cb5e56fe fixed interpretation 'spectralOut' header. Seem to have been buggy all the time, but manifested itself only after keyword change. Also added ':' after keywords to be more robust 2015-03-15 15:29:38 +00:00
Martin Diehl ac3d82493e changed output keywords form resolution to grid and from dimension to size 2015-03-13 14:45:33 +00:00
Martin Diehl e4d70e971d cp is commercially pure ;) 2015-03-13 13:49:09 +00:00
Martin Diehl d8debc3396 updated reference geom files (used old names), updated numerics.config to reflect use of analytic jaco 2015-03-13 06:47:26 +00:00
Martin Diehl aa125bac5b aliases for grid and size not supported any more 2015-03-12 22:30:24 +00:00
Martin Diehl 00cba25a44 improved update of ip coordinates for spectral solver.
do not need to create a new fftw plan all the time, using data already defined for the convolution
2015-03-12 22:28:33 +00:00
Martin Diehl 263f997cf2 seems to be an old output 2015-03-12 08:51:56 +00:00
Martin Diehl b338f1aeb8 added some outputs 2015-03-09 23:10:36 +00:00
Su Leen Wong 6b0a2ed5a4 Changed initialization of projection matrix for transformation based on the number of slip systems 2015-03-09 12:05:38 +00:00
Martin Diehl a5ee02ff01 added some aliases for output to finally converge from 'shear_rate' to 'shearrate' and from 'accumulatedshear' to 'accumulated_shear' 2015-03-09 11:29:44 +00:00
Franz Roters 2ab90c28a5 replaced example ODF by reasonable data in fully correct format 2015-03-06 15:56:58 +00:00
Pratheek Shanthraj 35f9e91e73 some corrections to the damage models 2015-03-06 13:12:32 +00:00
Pratheek Shanthraj bbb5ff6ae9 changes related to intermediate configuration kinematics:
- switched Fi and Li from state variables to crystallite variables

- Lp and Li are now work conjugate with the corresponding mandel stresses defined in their respective configuration

- T, Lp and Li need to return tangents wrt Fi arising from the convection of the material frame due to Fi

- Updated analytic jacobian to take into account tangents wrt Fi

- Updated Lp and Li residual jacobians to take into account tangents wrt Fi
2015-03-06 13:09:00 +00:00
Yannick Naunheim 4fd7e0165e more meaningful name 2015-03-05 11:07:55 +00:00
Su Leen Wong 36f14a2d1d Removed nr = ns condition 2015-02-26 14:16:29 +00:00
Su Leen Wong 2baac6fc10 Fix for 3881 because gfortran was complaining 2015-02-24 10:15:07 +00:00
Pratheek Shanthraj 3c2a95efd8 if matrix inversion error encountered during analytic tangent calculation, give a warning and return elastic tangent 2015-01-30 14:00:32 +00:00
Pratheek Shanthraj f1f4f939a3 analytic jacobian default for all solvers 2015-01-29 13:59:49 +00:00
Pratheek Shanthraj dd8458a775 updated analytic jacobian calculation to correctly take into account intermediate configuration Fi. improved convergence of Li loop in stress integration 2015-01-29 13:58:25 +00:00
Pratheek Shanthraj 0b59519a2a updated damage models:
- coupling to plasticity handled within damage module instead of plasticity module
- anisotropic models more stable
2015-01-29 13:56:09 +00:00
Martin Diehl 12c586afb9 removed unused variables 2015-01-23 13:44:16 +00:00
Martin Diehl 1f666dffc9 fixed bug: output size was not set 2015-01-23 13:08:25 +00:00
Martin Diehl e9c3137a3e disabled a faulty ntrans loop (matmul was complaining) 2015-01-23 11:23:35 +00:00
Martin Diehl 43095b1f1b added threshold_stress_slip as output (got lost once upon a time) 2015-01-22 09:34:11 +00:00
Martin Diehl 1c2dd37e28 deleted unused variables in dislo UCLA 2015-01-21 15:14:00 +00:00
David Mercier e57cb2b4f4 Wrong number of slip families in BCC material config files 2015-01-20 17:22:52 +00:00
Luv Sharma 19dc945065 Inroduced Fd in kinematic decomposition. 2015-01-19 13:39:47 +00:00
Pratheek Shanthraj 54dc4943de adaptive penalty to bound Cv in (0,1) 2015-01-16 18:31:14 +00:00
Pratheek Shanthraj f16244d240 corrected state integration 2015-01-16 17:51:43 +00:00
Pratheek Shanthraj eecb78665c removing some unused code and cleaning up 2015-01-16 17:32:47 +00:00
Pratheek Shanthraj 6411d36633 updated vacancy-damage model 2015-01-16 17:04:01 +00:00
Martin Diehl 93e50366bb fixed automatic determination of compiler 2015-01-16 11:19:30 +00:00
Luv Sharma 701f35c326 reverting the changes related to undamaged_Fi during rev. 3850/3851. 2015-01-16 00:09:22 +00:00
David Cereceda Senas 85465333ec 2015-01-15 22:42:56 +00:00
David Cereceda Senas b1ef2f9dd9 2015-01-15 22:40:17 +00:00
Martin Diehl 62ff5d1d45 gfortran/ifort is now selected depending on the compiler provided by PETSc 2015-01-15 11:35:53 +00:00
Martin Diehl ced00954fe added new model by david (LLNL/UCLA) 2015-01-15 10:56:15 +00:00
Luv Sharma 125276283b fix in analytically integrated expression. 2015-01-15 09:22:24 +00:00
Luv Sharma 19611660c2 passing undamaged Fe for calculation of stress.(Pratheek please check.) 2015-01-13 09:54:44 +00:00
Luv Sharma 9c8873f16c added functions to get degraded stiffness and undamaged intermediate deformation gradient. 2015-01-13 09:46:25 +00:00
Luv Sharma 80bb9a2e66 function to calculate mises stress. 2015-01-13 09:43:05 +00:00
Haiming Zhang c2b8627981 Currently, there is no updating for the dot state of vacancy generation, set sizeDotState = 0 2015-01-11 20:01:43 +00:00
Haiming Zhang a2552d6241 Polishing. 2015-01-11 19:10:16 +00:00
Martin Diehl e20271b89a fix for temperature in spectral solver 2015-01-08 13:26:00 +00:00
Luv Sharma 9635ae9f3d fix in integration. 2015-01-07 14:51:06 +00:00
Luv Sharma 8610531aae removed unused variable. 2015-01-04 20:13:16 +00:00
Luv Sharma 460c0d73fa Making use of extended plastic state with pointers, removed helper functions. 2015-01-04 19:26:33 +00:00
Luv Sharma e6d1b21b57 introduced extended plastic state type (including pointer/aliases) 2014-12-19 14:01:03 +00:00
Martin Diehl e4cb387571 polishing comments 2014-12-18 18:44:47 +00:00
Martin Diehl 72cb9072e1 added some debug statements 2014-12-18 18:41:02 +00:00
Martin Diehl 7fe20fe805 intent(out) specifier for getXX functions 2014-12-18 18:26:16 +00:00
Martin Diehl fdbaf00fa7 cleaned up naming and added elastic material with volume preserving stiffness 2014-12-18 18:20:11 +00:00
Martin Diehl 299518adfa cleaned tungsten parameter set, renamed to be consistent 2014-12-18 16:55:43 +00:00
Pratheek Shanthraj 3f14ebe43d helper routine to get heat generation rate needed for MARC/Abaqus 2014-12-17 13:37:13 +00:00
Franz Roters e6e72ab3a7 In mesh_marc_build_elements use mesh_NcpElems instead of mesh_Nelems (line 2906).
Fixes error when not all elements are CP elements.

Some formating and comment improvements.
2014-12-15 11:51:32 +00:00
Martin Diehl 7c8f2ede31 fixed missing initialization causing a NaN in gdot and crashes 2014-12-11 15:04:16 +00:00
Haiming Zhang 5bc93efd63 Fix bug about vacancy generation in subroutine constitutive_microstructure 2014-12-11 13:07:15 +00:00
Pratheek Shanthraj bdb6bf8090 recasting vacancy dot state as microstructure state 2014-12-10 13:40:30 +00:00
Pratheek Shanthraj 39a3a5b5a0 cleaned up FEM examples 2014-12-09 18:59:37 +00:00
Haiming Zhang 3064c14ff6 fig a bug of energy barrier of vacancy generation. 2014-12-09 18:56:19 +00:00
Pratheek Shanthraj 3f8678c7c4 plastic dot states evaluated at effective stress not damaged stress 2014-12-09 18:23:48 +00:00
Martin Diehl 55e2de6ffd made dotstate and state pointers (targets are not allowed in derived types) and introduced plastic state having aliases to parts of the state. 2014-12-09 12:12:53 +00:00
David Mercier d1e1191df4 corrected bug: renamed file list for commercial FEM solvers to start with small letter 2014-12-08 16:36:22 +00:00
Pratheek Shanthraj 2458aa9c3e BBar stabilisation now optional (default is off) 2014-12-08 16:27:23 +00:00
Philip Eisenlohr c34252c71c changed constitutive_* prefix for plasticity laws to plastic_* to be consistent with novel thermal_, damage_, vacancy_, etc. laws. 2014-12-08 15:55:30 +00:00
Haiming Zhang 0bd4ab48f8 numerics with respect to vacancy diffusion. 2014-12-08 15:37:44 +00:00
Martin Diehl db0e02b94d changed to lower canse convention 2014-12-08 15:37:02 +00:00
Pratheek Shanthraj 67c3eb3a2e bounding the analytically integrated damage variable 2014-12-08 14:05:38 +00:00
Pratheek Shanthraj 347dac74c6 added vacancy state integrators 2014-12-08 10:45:12 +00:00
Haiming Zhang 9301b56aa3 initialize restoration points of vacancy concentration at material points, postResults of VC at material points. 2014-12-08 09:27:32 +00:00
Haiming Zhang 62f254c9de age results and write restart data for vacancy concentration 2014-12-08 09:09:54 +00:00
Franz Roters 55c2b729a0 while node coordinates are always 3D displacements are passed into hypela2 as 2D array (dispt) for 2D simulations 2014-12-05 07:35:28 +00:00
Luv Sharma 334ade5260 Every line in a recipe must begin with a tab character.
http://stackoverflow.com/questions/14576237/errors-in-make-file-missing-separator-stop
2014-12-03 13:37:04 +00:00
Philip Eisenlohr 9d12e026e8 renumbered some errors, fixed non-existing errors 2014-12-03 00:42:35 +00:00
Philip Eisenlohr 01a8c500ca detabbing… 2014-12-03 00:41:12 +00:00
Martin Diehl fa6f784102 deleted unused stuff 2014-12-02 21:49:33 +00:00
Pratheek Shanthraj 82942d1618 bug fix for previous commit 2014-12-02 17:23:47 +00:00
Pratheek Shanthraj b796e46f98 residualStiffness is not just an FEM parameter 2014-12-02 17:17:35 +00:00
Pratheek Shanthraj 2fc264d90a forgot file in previous commit 2014-11-28 20:07:22 +00:00
Pratheek Shanthraj 37dd574790 recast power law and viscous dot state variables as derived quantities using analytical solutions of the evolution equation 2014-11-28 20:06:24 +00:00
Philip Eisenlohr 8d64e513da improved commenting and variable names.
values for unused slip/twin families are ignored in material.config (do not need to be numeric anymore…)
2014-11-26 21:23:02 +00:00
Tias Maiti f8b29bdaf0 fixed bug in type definition for ‘drivingForce’ 2014-11-26 18:40:31 +00:00
Pratheek Shanthraj 54de033c45 using analytic solution for local/nonlocal coupled damage (as opposed to having crystallite iterate to find a consistent solution) 2014-11-26 17:29:45 +00:00
Pratheek Shanthraj 61bb9a373e all damage models consistently semi-explicit 2014-11-26 11:32:50 +00:00
Pratheek Shanthraj 6e90260817 updated local damage post results for newer models 2014-11-26 11:32:19 +00:00
Pratheek Shanthraj a91ebafa0e semi-explicit damage evolution 2014-11-26 10:36:14 +00:00
Luv Sharma 646f1c48dc typo, IO_warning and not IO_error 2014-11-26 10:16:30 +00:00
Pratheek Shanthraj 9714a172d1 updated to get local damage from microstructure state 2014-11-26 00:42:20 +00:00
Pratheek Shanthraj c89ef9de61 relaxed some sanity checks 2014-11-26 00:29:54 +00:00
Pratheek Shanthraj 26c01f64e5 updated file list 2014-11-26 00:06:16 +00:00
Pratheek Shanthraj 32ee3a4a66 corrected constitutive_getVacancyPotentialDrivingForce function 2014-11-26 00:04:06 +00:00
Pratheek Shanthraj 36dc59b09f reverted back to rate independent damage evolution. updated example config files to recent changes 2014-11-25 23:56:52 +00:00
Pratheek Shanthraj a4584fecd2 potential driving force for conservative cahn hilliard vacancy diffusion 2014-11-25 20:13:33 +00:00
Pratheek Shanthraj 20437b2ae0 added brittle(elastic energy release rate)/ductile(vacancy condensation) phase field damage model coupled to vacancy concentration
simplified vacancy_generation
2014-11-25 17:23:37 +00:00
Pratheek Shanthraj 65b22f9a40 calculate analytic jacobian from xxx0 and not xxxsub0 2014-11-25 17:20:52 +00:00
Su Leen Wong e6edc3d8cd Some sanity checks 2014-11-25 13:20:12 +00:00
Pratheek Shanthraj 296146490f changed some default parameters for FEM 2014-11-21 14:20:54 +00:00
Luv Sharma 3d4b2d2f52 tolerance for damage can be any positive value. Set to 0.001 if found negative. 2014-11-21 13:12:54 +00:00
Luv Sharma ee1d409bad critical shear can be set to zero for family not in use. 2014-11-21 09:03:54 +00:00
Su Leen Wong 9e6ab9866f Read in TRIP inputs, changed 'totalvolfrac' to 'totalvolfrac_twin' 2014-11-21 08:54:20 +00:00
Luv Sharma 36c2cc4347 added some sanity checks in damage modules. 2014-11-20 13:48:07 +00:00
Martin Diehl f538469892 reverted name change: In current PETSc release, its DM_ instead of DMDA_! 2014-11-19 05:35:10 +00:00
Philip Eisenlohr 73a13ddffc added more comments 2014-11-18 15:36:17 +00:00
Su Leen Wong b3a96d40c5 Started adding TRIP model to phenopowerlaw 2014-11-18 10:46:02 +00:00
Pratheek Shanthraj 23d68114e3 cleaned up stress integrations and some documentation 2014-11-13 12:53:20 +00:00
Haiming Zhang b407e6ac80 complement of pore nucleation. 2014-11-12 17:55:02 +00:00
Pratheek Shanthraj fc9f4835c3 switched order of Lp-Li nesting in stress integration loop for better convergence. temperature is integrated during stress integration so it need not be a dot state 2014-11-12 16:40:50 +00:00
Pratheek Shanthraj e89199d119 correction to thermal velocity gradient 2014-11-11 23:14:45 +00:00
Pratheek Shanthraj 7567582781 updated constitutive in line with changes to damage 2014-11-11 22:46:41 +00:00
Pratheek Shanthraj 5ff3c882b5 thermodynamically consistent treatment of nonlocality over all damage models. switched from power law to exponential with viscous drag type rate formulation for damage evolution 2014-11-11 22:44:11 +00:00
Haiming Zhang f0f04a25bf Pore nucleation, and the decrease of vacancy concentration due the formation of pores. 2014-11-11 16:03:06 +00:00
Pratheek Shanthraj e0e0f1503b svn properties for new files 2014-11-07 20:55:16 +00:00
Pratheek Shanthraj 9544fe55a6 FEM solver for vacancy diffusion 2014-11-07 20:40:54 +00:00
Pratheek Shanthraj eb1028eb6f dislokmc coupled to ductile damage 2014-11-07 12:28:18 +00:00
Pratheek Shanthraj 646f632977 no need to pass fileunit during init of none types 2014-11-07 12:15:28 +00:00
Pratheek Shanthraj c4e54793fc missing factor of 2 in damage driving force 2014-11-07 12:10:10 +00:00
Pratheek Shanthraj dc0745800f reworked anisotropic brittle damage 2014-11-07 12:08:56 +00:00
Martin Diehl 69b150319f fully introduced non-schmid behavior 2014-11-07 11:23:34 +00:00
Martin Diehl eee863956f added flush(6) for debugging 2014-11-06 21:05:35 +00:00
Pratheek Shanthraj 4fcd1821cf reworked anisotropic ductile model 2014-11-06 17:52:43 +00:00
Pratheek Shanthraj 9c474796ac cleaning up and meaningful renaming 2014-11-06 17:41:34 +00:00
Haiming Zhang a72a9ed8ec Add the generation rate of vacancy induced by dislocation movement. 2014-11-06 16:53:34 +00:00
Martin Diehl 29951a9e1a named 99 representation according to other constitutive laws 2014-11-06 11:49:37 +00:00
Martin Diehl b443ac6321 nicer preprocessor statements 2014-11-06 11:47:27 +00:00
Martin Diehl 95ec8b7b7b removed imported module variables that are not longer needed, commented loops and simplified calculation for rates, i.e. do not store per system anymore but only once 2014-11-06 08:27:48 +00:00
Martin Diehl 1242aab2bf unified calculation for slip rate for output to avoid doubling of code
introduced calculation of negative and positive stress (three times in the code) for non-schmid behavior. 
Still, non-schmid behavior is not active at all
2014-11-05 20:53:25 +00:00