KratosMultiphysics
KRATOS Multiphysics (Kratos) is a framework for building parallel, multi-disciplinary simulation software, aiming at modularity, extensibility, and high performance. Kratos is written in C++, and counts with an extensive Python interface.
Namespaces | Variables
generate_total_lagrangian_mixed_volumetric_strain_element.py File Reference

Namespaces

 generate_total_lagrangian_mixed_volumetric_strain_element
 

Variables

string generate_total_lagrangian_mixed_volumetric_strain_element.mode = "c"
 
list generate_total_lagrangian_mixed_volumetric_strain_element.dim_vect = [2, 3]
 
bool generate_total_lagrangian_mixed_volumetric_strain_element.do_simplifications = False
 
string generate_total_lagrangian_mixed_volumetric_strain_element.output_filename = "total_lagrangian_mixed_volumetric_strain_element.cpp"
 
string generate_total_lagrangian_mixed_volumetric_strain_element.template_filename = "total_lagrangian_mixed_volumetric_strain_element_template.cpp"
 
list generate_total_lagrangian_mixed_volumetric_strain_element.tokens_filenames = []
 
int generate_total_lagrangian_mixed_volumetric_strain_element.n_nodes = dim + 1
 
int generate_total_lagrangian_mixed_volumetric_strain_element.block_size = dim + 1
 
int generate_total_lagrangian_mixed_volumetric_strain_element.local_size = n_nodes * block_size
 
int generate_total_lagrangian_mixed_volumetric_strain_element.strain_size = 3
 
bool generate_total_lagrangian_mixed_volumetric_strain_element.impose_partion_of_unity = False
 
 generate_total_lagrangian_mixed_volumetric_strain_element.N
 
 generate_total_lagrangian_mixed_volumetric_strain_element.DN
 
 generate_total_lagrangian_mixed_volumetric_strain_element.u = DefineMatrix('u',n_nodes,dim)
 
 generate_total_lagrangian_mixed_volumetric_strain_element.b = DefineMatrix('b',n_nodes,dim)
 
 generate_total_lagrangian_mixed_volumetric_strain_element.th = DefineVector('th',n_nodes)
 
 generate_total_lagrangian_mixed_volumetric_strain_element.w = DefineMatrix('w',n_nodes,dim)
 
 generate_total_lagrangian_mixed_volumetric_strain_element.q = DefineVector('q',n_nodes)
 
 generate_total_lagrangian_mixed_volumetric_strain_element.w_g = sympy.Symbol("w_g", positive=True)
 
 generate_total_lagrangian_mixed_volumetric_strain_element.tau_u = sympy.Symbol("tau_u",positive=True)
 
 generate_total_lagrangian_mixed_volumetric_strain_element.tau_th = sympy.Symbol("tau_th",positive=True)
 
 generate_total_lagrangian_mixed_volumetric_strain_element.S = DefineVector('S',strain_size)
 
 generate_total_lagrangian_mixed_volumetric_strain_element.C = DefineSymmetricMatrix("C",strain_size,strain_size)
 
int generate_total_lagrangian_mixed_volumetric_strain_element.th_gauss = 0
 
 generate_total_lagrangian_mixed_volumetric_strain_element.grad_th_gauss = DN.transpose()*th
 
 generate_total_lagrangian_mixed_volumetric_strain_element.b_gauss = DefineVector('b_gauss',dim)
 
 generate_total_lagrangian_mixed_volumetric_strain_element.grad_w_gauss = w.transpose()*DN
 
 generate_total_lagrangian_mixed_volumetric_strain_element.grad_q_gauss = q.transpose()*DN
 
 generate_total_lagrangian_mixed_volumetric_strain_element.w_gauss = w.transpose()*N
 
 generate_total_lagrangian_mixed_volumetric_strain_element.q_gauss = q.transpose()*N
 
 generate_total_lagrangian_mixed_volumetric_strain_element.F_gauss = sympy.Matrix(sympy.eye(dim,dim))
 
 generate_total_lagrangian_mixed_volumetric_strain_element.j_gauss = sympy.det(F_gauss)
 
 generate_total_lagrangian_mixed_volumetric_strain_element.invF_gauss = F_gauss.inv(method="LU")
 
 generate_total_lagrangian_mixed_volumetric_strain_element.cofF_gauss = j_gauss*(invF_gauss.transpose())
 
tuple generate_total_lagrangian_mixed_volumetric_strain_element.Fbar_gauss = (1/j_gauss**sympy.Rational(1,dim))*F_gauss
 
tuple generate_total_lagrangian_mixed_volumetric_strain_element.Cbar_gauss = Fbar_gauss.transpose() * Fbar_gauss
 
float generate_total_lagrangian_mixed_volumetric_strain_element.Ebar_gauss = 0.5*(Cbar_gauss - sympy.eye(dim,dim))
 
tuple generate_total_lagrangian_mixed_volumetric_strain_element.Fmod_gauss = ((1.0 + th_gauss)**sympy.Rational(1,dim))*Fbar_gauss
 
tuple generate_total_lagrangian_mixed_volumetric_strain_element.Cmod_gauss = Fmod_gauss.transpose() * Fmod_gauss
 
float generate_total_lagrangian_mixed_volumetric_strain_element.Emod_gauss = 0.5*(Cmod_gauss - sympy.eye(dim,dim))
 
tuple generate_total_lagrangian_mixed_volumetric_strain_element.tmp = (DoubleContraction(C, F_gauss.transpose()*F_gauss)).tomatrix()
 
 generate_total_lagrangian_mixed_volumetric_strain_element.mom_first = DoubleContraction(grad_w_gauss, F_gauss* S)
 
tuple generate_total_lagrangian_mixed_volumetric_strain_element.mom_second = (w_gauss.transpose() * b_gauss)[0]
 
tuple generate_total_lagrangian_mixed_volumetric_strain_element.mom_aux_scalar = (tau_th / dim) * ((1+th_gauss)**sympy.Rational(2-dim,dim)) * (1.0/j_gauss**sympy.Rational(2,dim))
 
 generate_total_lagrangian_mixed_volumetric_strain_element.mom_stab = DoubleContraction(grad_w_gauss, mom_aux_scalar * (1 + th_gauss - j_gauss) * tmp)
 
tuple generate_total_lagrangian_mixed_volumetric_strain_element.mass_first = (1.0 - tau_th) * q_gauss[0] * (1.0+th_gauss - j_gauss)
 
tuple generate_total_lagrangian_mixed_volumetric_strain_element.mass_aux_scalar = (tau_u / dim) * ((j_gauss / (1.0+th_gauss))**sympy.Rational(dim-2,dim))
 
tuple generate_total_lagrangian_mixed_volumetric_strain_element.mass_stab_1 = (mass_aux_scalar * grad_q_gauss * tmp * grad_th_gauss)[0]
 
tuple generate_total_lagrangian_mixed_volumetric_strain_element.mass_stab_2 = (tau_u * grad_q_gauss * cofF_gauss.transpose() * b_gauss)[0]
 
tuple generate_total_lagrangian_mixed_volumetric_strain_element.functional = mom_second - mom_first + mom_stab + mass_first + mass_stab_1 + mass_stab_2
 
 generate_total_lagrangian_mixed_volumetric_strain_element.functional_array = sympy.Matrix([functional])
 
 generate_total_lagrangian_mixed_volumetric_strain_element.dofs = sympy.zeros(local_size, 1)
 
 generate_total_lagrangian_mixed_volumetric_strain_element.testfunc = sympy.zeros(local_size, 1)
 
 generate_total_lagrangian_mixed_volumetric_strain_element.rhs = Compute_RHS(functional_array.copy(), testfunc, do_simplifications)
 
 generate_total_lagrangian_mixed_volumetric_strain_element.rhs_out = OutputVector_CollectingFactors(w_g*rhs, "rRightHandSideVector", mode, indentation_level=2, assignment_op="+=")
 
 generate_total_lagrangian_mixed_volumetric_strain_element.E = sympy.MatrixSymbol("E", dim, dim).as_mutable()
 
 generate_total_lagrangian_mixed_volumetric_strain_element.S_func = sympy.MatrixSymbol("S", dim, dim).as_mutable()
 
 generate_total_lagrangian_mixed_volumetric_strain_element.n_dofs = rhs.shape[0]
 
dictionary generate_total_lagrangian_mixed_volumetric_strain_element.substitution_list = {}
 
 generate_total_lagrangian_mixed_volumetric_strain_element.t = sympy.diff(S_func[i, j], E[k, l])
 
 generate_total_lagrangian_mixed_volumetric_strain_element.lhs = sympy.zeros(n_dofs, n_dofs)
 
 generate_total_lagrangian_mixed_volumetric_strain_element.lhs_out = OutputMatrix_CollectingFactors(w_g*lhs, "rLeftHandSideMatrix", mode, indentation_level=2, assignment_op="+=")
 
 generate_total_lagrangian_mixed_volumetric_strain_element.Fmod_gauss_out = OutputMatrix_CollectingFactors(Fmod_gauss, "r_eq_def_gradient", mode, indentation_level=1)
 
 generate_total_lagrangian_mixed_volumetric_strain_element.det_Fmod_gauss_out = OutputScalar_CollectingFactors(Fmod_gauss.det(), "r_det_eq_def_gradient", mode, indentation_level=0)
 
 generate_total_lagrangian_mixed_volumetric_strain_element.Emod_gauss_out = OutputVector_CollectingFactors(StrainToVoigt(Emod_gauss), "r_eq_green_strain", mode, indentation_level=1)
 
dictionary generate_total_lagrangian_mixed_volumetric_strain_element.tokens_dict
 
bool generate_total_lagrangian_mixed_volumetric_strain_element.has_token = False