Go to the documentation of this file.
31 void Foam::fv::jouleHeatingSource::initialiseSigma
33 const dictionary&
dict,
34 autoPtr<Function1<Type>>& sigmaVsTPtr
37 typedef GeometricField<Type, fvPatchField, volMesh> VolFieldType;
39 if (
dict.found(
"sigma"))
42 sigmaVsTPtr = Function1<Type>::New(
"sigma",
dict, &
mesh_);
58 mesh_.objectRegistry::store(tsigma.ptr());
60 Info<<
" Conductivity 'sigma' read from dictionary as f(T)"
79 mesh_.objectRegistry::store(tsigma.ptr());
81 Info<<
" Conductivity 'sigma' read from file" <<
nl <<
endl;
88 Foam::fv::jouleHeatingSource::updateSigma
95 auto&
sigma = mesh_.lookupObjectRef<VolFieldType>(typeName +
":sigma");
108 sigma[i] = sigmaVsTPtr->value(
T[i]);
113 typename VolFieldType::Boundary& bf =
sigma.boundaryFieldRef();
116 fvPatchField<Type>& pf = bf[patchi];
117 if (!
isA<emptyFvPatchField<Type>>(pf))
122 pf[facei] = sigmaVsTPtr->value(Tbf[facei]);
128 sigma.correctBoundaryConditions();
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
const dimensionSet dimLength(0, 1, 0, 0, 0, 0, 0)
static constexpr const zero Zero
static word timeName(const scalar t, const int precision=precision_)
Ostream & endl(Ostream &os)
const dimensionSet dimCurrent(0, 0, 0, 0, 0, 1, 0)
Generic templated field type.
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
GeometricField< scalar, fvPatchField, volMesh > volScalarField
const dimensionSet dimPower
This boundary condition provides an 'empty' condition for reduced dimensions cases,...
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
const TargetType * isA(const Type &t)
dimensionedSymmTensor sqr(const dimensionedVector &dv)
static tmp< T > New(Args &&... args)
const Time & time() const
dimensionedScalar sigma("sigma", dimMass/sqr(dimTime), transportProperties)