Exemplo n.º 1
0
void
Material::computeProperties()
{
  if (_constant_option == ConstantTypeEnum::SUBDOMAIN)
    return;

  // If this Material has the _constant_on_elem flag set, we take the
  // value computed for _qp==0 and use it at all the quadrature points
  // in the Elem.
  if (_constant_option == ConstantTypeEnum::ELEMENT)
  {
    // Compute MaterialProperty values at the first qp.
    _qp = 0;
    computeQpProperties();

    // Reference to *all* the MaterialProperties in the MaterialData object, not
    // just the ones for this Material.
    MaterialProperties & props = _material_data->props();

    // Now copy the values computed at qp 0 to all the other qps.
    for (const auto & prop_id : _supplied_prop_ids)
    {
      auto nqp = _qrule->n_points();
      for (decltype(nqp) qp = 1; qp < nqp; ++qp)
        props[prop_id]->qpCopy(qp, props[prop_id], 0);
    }
  }
  else
  {
    for (_qp = 0; _qp < _qrule->n_points(); ++_qp)
      computeQpProperties();
  }
}
Exemplo n.º 2
0
void
GolemMaterialTH::computeProperties()
{
  if (_current_elem->dim() < _mesh.dimension())
    computeRotationMatrix();
  for (_qp = 0; _qp < _qrule->n_points(); ++_qp)
    computeQpProperties();
}
Exemplo n.º 3
0
void
PorousFlowTemperature::initQpStatefulProperties()
{
  computeQpProperties();
}
Exemplo n.º 4
0
void
DiscreteMaterial::computeProperties(unsigned int qp)
{
  _qp = qp;
  computeQpProperties();
}
Exemplo n.º 5
0
/*******************************************************************************
Routine: computeProperties -- self-explanatory
Authors: Yidong Xia
*******************************************************************************/
void
PTGeothermal::computeProperties()
{
  for(_qp=0; _qp<_qrule->n_points(); _qp++)
    computeQpProperties();
}
Exemplo n.º 6
0
void
Material::computeProperties()
{
  for (_qp = 0; _qp < _qrule->n_points(); ++_qp)
    computeQpProperties();
}
Exemplo n.º 7
0
void
Material::computePropertiesAtQp(unsigned int qp)
{
  _qp = qp;
  computeQpProperties();
}