Calculate r-Value

  • Contributor: Martin Diehl (https://martin-diehl.net)

  • DAMASK version: 3.0.0-alpha4

  • Prerequisites: DADF5 results file from MSC.Marc with plastic deformation gradient (‘F_p’)

[1]:
%pylab inline
%matplotlib inline
Populating the interactive namespace from numpy and matplotlib
[2]:
import damask
import numpy as np
import matplotlib.pyplot as plt
[3]:
# adjust to your situation, file needs to exist
result_file = 'r-value_Marc/sheet_r-value.hdf5'
[5]:
result = damask.Result(result_file)
result.add_strain('F_p')
result.add_IPF_color([1,1,0])
result.add_equivalent_Mises('epsilon_V^0.0(F_p)')

# also save for visualization in Paraview
result.export_VTK(['IPFcolor_(1 1 0)','epsilon_V^0.0(F_p)_vM'])
 ██████████████████████████████████████████████████ 100% ETA 0:00:00
 ██████████████████████████████████████████████████ 100% ETA 0:00:00
 ██████████████████████████████████████████████████ 100% ETA 0:00:00
 ██████████████████████████████████████████████████ 100% ETA 0:00:00
[6]:
epsilon_avg = np.array([np.average(eps,0) for eps in result.get('epsilon_V^0.0(F_p)').values()])
r = epsilon_avg[10:,1,1]/epsilon_avg[10:,2,2]
 ██████████████████████████████████████████████████ 100% ETA 0:00:00
[7]:
plt.plot(r)
plt.ylabel('r-value')
plt.xlabel('increment')
plt.show()
../../../_images/documentation_examples_post-processing_r-value_Marc_6_0.png