https://mooseframework.inl.gov
Loading...
Searching...
No Matches
HeatConductionBPD.C
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#include "HeatConductionBPD.h"
11
13
16{
18 params.addClassDescription("Class for calculating the residual and Jacobian for the bond-based "
19 "peridynamic heat conduction formulation");
20
21 return params;
22}
23
25 : PeridynamicsKernelBase(parameters),
26 _bond_heat_flow(getMaterialProperty<Real>("bond_heat_flow")),
27 _bond_dQdT(getMaterialProperty<Real>("bond_dQdT"))
28{
29}
30
31void
37
38void
40{
41 for (unsigned int i = 0; i < _nnodes; ++i)
42 for (unsigned int j = 0; j < _nnodes; ++j)
43 _local_ke(i, j) += -1 * (i == j ? 1 : -1) * _bond_dQdT[0] * _bond_status;
44}
registerMooseObject("PeridynamicsApp", HeatConductionBPD)
Kernel class for peridynamic heat conduction models.
virtual void computeLocalJacobian() override
Function to compute local contribution to the diagonal Jacobian at the current nodes.
virtual void computeLocalResidual() override
Function to compute local contribution to the residual at the current nodes.
static InputParameters validParams()
const MaterialProperty< Real > & _bond_dQdT
HeatConductionBPD(const InputParameters &parameters)
const MaterialProperty< Real > & _bond_heat_flow
Bond based material properties.
void addClassDescription(const std::string &doc_string)
Base kernel class for peridynamic models.
static InputParameters validParams()
Real _bond_status
Bond status of current bond/edge2.
DenseMatrix< Number > _local_ke
DenseVector< Number > _local_re