Commit Graph

322 Commits

Author SHA1 Message Date
Martin Diehl 5c1804e77d improved NaN checks 2015-04-13 10:02:52 +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 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 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
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 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
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 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 6411d36633 updated vacancy-damage model 2015-01-16 17:04:01 +00:00
Luv Sharma 701f35c326 reverting the changes related to undamaged_Fi during rev. 3850/3851. 2015-01-16 00:09:22 +00:00
Luv Sharma 19611660c2 passing undamaged Fe for calculation of stress.(Pratheek please check.) 2015-01-13 09:54:44 +00:00
Haiming Zhang a2552d6241 Polishing. 2015-01-11 19:10:16 +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
Pratheek Shanthraj 347dac74c6 added vacancy state integrators 2014-12-08 10:45:12 +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
Pratheek Shanthraj 65b22f9a40 calculate analytic jacobian from xxx0 and not xxxsub0 2014-11-25 17:20:52 +00:00
Pratheek Shanthraj 23d68114e3 cleaned up stress integrations and some documentation 2014-11-13 12:53:20 +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
Martin Diehl 29951a9e1a named 99 representation according to other constitutive laws 2014-11-06 11:49:37 +00:00
Martin Diehl 18b49fbac8 line in OMP statement too long 2014-11-04 21:32:16 +00:00
Pratheek Shanthraj 76442942b1 damage def grad updated in stress integration loop and not as a dot state 2014-11-03 10:43:36 +00:00
Pratheek Shanthraj 9c94eb4be6 OMP bug fix from previous commit 2014-11-01 11:43:43 +00:00
Pratheek Shanthraj f9cec3079e overhaul of kinematics from FeFp to FeFiFp decomposition 2014-10-31 19:03:08 +00:00
Pratheek Shanthraj ebd285f565 reworking damage routines 2014-10-28 01:18:10 +00:00
Luv Sharma b65ccb0181 changed isotropic ductile damage to be inline with Fe..Fd..Fp decomposition 2014-10-27 14:15:25 +00:00
Pratheek Shanthraj 9779127521 added intermediate configuration to crystal plasticity kinematics intended handle intermediate deformation stages consistently in a finite strain framework
currently implemented for thermal strains, but will expand on this to add damage strains, phase transformation strains etc.
2014-10-20 15:43:28 +00:00
Pratheek Shanthraj 96f036e34e updated MPI reporting in line with recent changes 2014-10-10 16:21:10 +00:00
Pratheek Shanthraj ba65d04bb3 removed redundant crystallite_temperature/heat and materialpoint_heat and using temperature from the thermal module 2014-10-10 12:28:57 +00:00
Pratheek Shanthraj c8929b47d3 only output from the root processor for parallel runs 2014-10-09 20:23:06 +00:00
Pratheek Shanthraj c7a746ddc1 constitutive dot state now takes Lp which is needed to the thermal dot state.
thermal problems should be working now
2014-09-26 20:49:25 +00:00
Pratheek Shanthraj 5c3f4e3e69 some fixes to get homogenisation none working with recent changes 2014-09-26 15:16:10 +00:00
Pratheek Shanthraj c2c5c0c521 subsumed constitutive_damage/thermal into constitutive 2014-09-23 10:38:20 +00:00
Pratheek Shanthraj 6ace12be0c removed unused variables 2014-09-22 20:34:42 +00:00
Luv Sharma e83a0fb3f7 polished field state related changes and brittle damage 2014-09-22 18:15:19 +00:00
Martin Diehl 7cb7815176 polishing style 2014-09-13 10:04:44 +00:00
Luv Sharma dc406a01c0 added funtions to get averged properties at integration points. 2014-09-10 08:37:12 +00:00
Franz Roters b6847ebb01 added use mesh statement needed for output of mesh_element 2014-09-09 15:18:49 +00:00
Philip Eisenlohr e8a428613c general polishing; simplification of RKCK45 dotstate assembly for different stages. 2014-09-02 20:11:57 +00:00
Philip Eisenlohr 630d9efffd Heavy bug fixing: Butcher tableau multiplication in RK45 integration scheme, state updating of adaptive Euler, wrong assignment to evolution rate instead of state in fixed-point iterator.
Exchanged possibly non thread-safe matmul in RKCK45, simplified RK45 integration step 1--3 vs 4 handling.
(Thanks to Pratheek, Luv, and Chen for their help!)
2014-09-02 19:46:52 +00:00
Philip Eisenlohr a360f14581 debug now reporting elFE in addition to elCP 2014-08-27 15:54:11 +00:00
Chen Zhang 5bc49e6441 change the debug level of cutback reporting to non-selective, of central solution from basic to extensive, of stiffness perturbation to selective.
fixed few typos and deleted excess whitespace.
2014-08-26 14:44:32 +00:00
Pratheek Shanthraj 7666013758 use subF instead of F for analytic jacobian calculation 2014-08-15 09:04:00 +00:00
Luv Sharma 33b4c0d908 minor typo 2014-08-11 13:33:17 +00:00
Pratheek Shanthraj 8f444b0695 minor changes to multiphysicsOut 2014-08-10 11:14:43 +00:00
Pratheek Shanthraj ec71d77038 corrections to analytic dPdF calculation 2014-08-10 10:27:35 +00:00
Pratheek Shanthraj da5f3d8f85 removed some unused variables 2014-08-08 13:54:08 +00:00
Pratheek Shanthraj 2f5d9376dc call IO_error if inversion error in analytic jacobian calculation 2014-08-07 21:16:37 +00:00
Pratheek Shanthraj 98a297cd9e removed old inaccurate analytic jacobian with exact jacobian. seems to work as well as perturbed jacobian and better than the old analytic jacobian for some simple tests. 2014-08-07 21:08:34 +00:00