https://mooseframework.inl.gov
Loading...
Searching...
No Matches
MatCoupledForce.h
Go to the documentation of this file.
1//* This file is part of the MOOSE framework
2//* https://mooseframework.inl.gov
3//*
4//* All rights reserved, see COPYRIGHT for full restrictions
5//* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6//*
7//* Licensed under LGPL 2.1, please see LICENSE for details
8//* https://www.gnu.org/licenses/lgpl-2.1.html
9
10#pragma once
11
12#include "Kernel.h"
13
20class MatCoupledForce : public Kernel
21{
22public:
24
26
27protected:
28 virtual Real computeQpResidual() override;
29
30 virtual Real computeQpJacobian() override;
31
32 virtual Real computeQpOffDiagJacobian(unsigned int jvar) override;
33
34private:
35 const unsigned int _n_coupled;
36 const bool _coupled_props;
37 const std::vector<unsigned int> _v_var;
38 const std::vector<const VariableValue *> _v;
39 const std::vector<Real> _coef;
40 std::map<unsigned int, unsigned int> _v_var_to_index;
41 std::vector<const MaterialProperty<Real> *> _mat_props;
42};
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system.
Represents a right hand side force term of the form Sum_j c_j * m_j * v_j, where c is a vector of rea...
const std::vector< unsigned int > _v_var
virtual Real computeQpOffDiagJacobian(unsigned int jvar) override
For coupling standard variables.
const std::vector< const VariableValue * > _v
std::vector< const MaterialProperty< Real > * > _mat_props
virtual Real computeQpJacobian() override
Compute this Kernel's contribution to the Jacobian at the current quadrature point.
virtual Real computeQpResidual() override
Compute this Kernel's contribution to the residual at the current quadrature point.
std::map< unsigned int, unsigned int > _v_var_to_index
const std::vector< Real > _coef
static InputParameters validParams()
const bool _coupled_props
const unsigned int _n_coupled
const InputParameters & parameters() const
Get the parameters of the object.
Definition MooseBase.h:131