Hi, I want to investigate the strain rates of a body of a transient analysis. I try to use dpf to compute the strain rates, however, it doesnt work so far.
Basic ideas:
1. Using math.time_derivation operator
Problems:
- usually we use ansys version 23r1. the operator doesnt yet exist in that version
- still, I tried out the operator using ansys 25r1. Problem: the operator seems to operate on a field, however, to compute the strain rate throughout a full body (or its surface nodes), the operator would need to operate on a fields container, namely, the strain tensor.
- code attached run on version 25r1 (simple transient test model containing node number 3000)
- Second approach: approximating the strain rate using finite differences:
- basic approach:
- get fields container A of strains from t_1 to t_(end-1)
- get fields container B of strains from t_2 to t_(end)
- get fields container C of 1/(Delta t) = 1/(t_(i+1) - t_i) for times t_1 to t_(end-1)
- ignore last time step
compute the strain rate using math operators to built: (B-A)/C. In raw python this could be computed like:
for t in (first to prelast time step):
for n in (all nodes):
strain_rate_tensor[t][n] = (B[t][n] – A[t][n] ) / C[t][n]
I thought this could be done, by setting the ConfigOption 'work_by_index' to true. However, this doesn't seem to apply to the fields container index (t in the above), as B-A seems to be zero for all entries (except for the last one).
code attached run on version 23r1 (simple transient test model containing node number 3000)
Any help appreciated 
Best Regards
Matthias