Base
This package adds overloads and sub-types from the ContinuumMechanicsBase.jl
package for the BCJ-plasticity model. Most importantly, the AbstractBCJModel
and AbstractBCJTest
sub-types are defined first such that subsequent types and functions might dispatch under these two types. Some helper functions are also defined for calculating the mathematical norm from a vector representing the upper triangle of a symmetric tensor and the von Mises equivalent of a symmetric tensor. The elements of this vector for the upper triangle of a symmetric vector are in row-major order. That is, the upper triangle of a symmetric, second-rank tensor may be represented as a vector: e. g. $\mathbf{A} \vec{\equiv} [A_{11}, A_{12}, A_{13}, A_{22}, A_{23}, A_{33}]$. Currently, the package includes support for the following categories of materials:
Types
BammannChiesaJohnsonPlasticity.AbstractBCJModel
— TypeParent type for all BCJ-variant models.
BammannChiesaJohnsonPlasticity.AbstractBCJTest
— TypeParent type for all BCJ-variant tests.
Functions
BammannChiesaJohnsonPlasticity.norm_symvec
— MethodCalculate scalar magnitude for flat vector of symmetric tensor: e. g. A̲̲ ≡⃗ [A₁₁, A₁₂, A₁₃, A₂₂, A₂₃, A₃₃]
BammannChiesaJohnsonPlasticity.rmse
— Methodrmse(
::Tuple{Array{T<:AbstractFloat, 1}, Array{T<:AbstractFloat, 1}},
::Tuple{Array{T<:AbstractFloat, 1}, Array{T<:AbstractFloat, 1}}
) -> Any
Calculate the Root Mean Squared Error (RMSE) between actual (experimental) and predicted data sets.
(x, y): Actual value
(x̂, ŷ): Predicted value
BammannChiesaJohnsonPlasticity.update
— Methodupdate(ψ, args; kwargs...)
Given viscoplasticity model and the current material state, update to the next material state.
BammannChiesaJohnsonPlasticity.vonMises
— Methodvon Mises (equivalent) scalar for symmetric tensor.
BammannChiesaJohnsonPlasticity.vonMises
— Methodvon Mises (equivalent) scalar for flat vector of symmetric tensor: e. g. A̲̲ ≡⃗ [A₁₁, A₁₂, A₁₃, A₂₂, A₂₃, A₃₃]