Go to the documentation of this file.
46NonlinearMassTransferMaterial :: initializeFrom(
InputRecord &ir)
48 Material :: initializeFrom(ir);
55NonlinearMassTransferMaterial :: giveCharacteristicValue(MatResponseMode mode,
67 ms->setTempField(field);
69 double gradPNorm =
norm(grad);
70 auto answer = -( 1. +
C * pow(gradPNorm,
alpha) ) * grad;
71 ms->setTempFlux(answer);
77NonlinearMassTransferMaterial :: computeTangent3D(MatResponseMode mode,
GaussPoint *gp,
TimeStep *tStep)
const
81 double gradPNorm =
norm(eps);
83 auto scale = gradPNorm != 0. ?
C *
alpha * pow(gradPNorm,
alpha - 2) : 1.;
84 auto t1 = scale *
dyad(eps, eps);
95 answer = ms->giveFlux();
97 case IST_PressureGradient:
98 answer = ms->giveGradient();
101 return TransportMaterial :: giveIPValue(answer, gp, type, tStep);
#define REGISTER_Material(class)
virtual MaterialStatus * giveStatus(GaussPoint *gp) const
double alpha
Indicates the level of nonlinearity in the model.
double C
Indicates the level of nonlinearity in the model.
void setTempGradient(const FloatArrayF< 3 > &newGradient)
Set gradient.
const FloatArrayF< 3 > & giveTempGradient() const
Return last gradient.
double norm(const FloatArray &x)
FloatMatrixF< N, M > dyad(const FloatArrayF< N > &a, const FloatArrayF< M > &b)
Computes the dyadic product .
FloatMatrixF< N, N > eye()
Constructs an identity matrix.
#define _IFT_NonlinearMassTransferMaterial_c
#define _IFT_NonlinearMassTransferMaterial_alpha
This page is part of the
OOFEM-3.0 documentation. Copyright Copyright (C) 1994-2025 Borek Patzak
Bořek Patzák
Project e-mail:
oofem@fsv.cvut.cz
Generated at for OOFEM by
doxygen
1.15.0 written by Dimitri van Heesch,
© 1997-2011