当前位置: 首页>>代码示例>>C++>>正文


C++ AssemblyContext::fixed_interior_hessian方法代码示例

本文整理汇总了C++中AssemblyContext::fixed_interior_hessian方法的典型用法代码示例。如果您正苦于以下问题:C++ AssemblyContext::fixed_interior_hessian方法的具体用法?C++ AssemblyContext::fixed_interior_hessian怎么用?C++ AssemblyContext::fixed_interior_hessian使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在AssemblyContext的用法示例。


在下文中一共展示了AssemblyContext::fixed_interior_hessian方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: rhocpU

  void HeatTransferStabilizationHelper::compute_res_energy_steady_and_derivs
  ( AssemblyContext& context,
    unsigned int qp,
    const libMesh::Real rho,
    const libMesh::Real Cp,
    const libMesh::Real k,
    libMesh::Real &res,
    libMesh::Real &d_res_dT,
    libMesh::Gradient &d_res_dgradT,
    libMesh::Tensor   &d_res_dhessT,
    libMesh::Gradient &d_res_dU
    ) const
  {
    libMesh::Gradient grad_T = context.fixed_interior_gradient(this->_temp_vars.T(), qp);
    libMesh::Tensor hess_T = context.fixed_interior_hessian(this->_temp_vars.T(), qp);

    libMesh::RealGradient rhocpU( rho*Cp*context.fixed_interior_value(this->_flow_vars.u(), qp),
                                  rho*Cp*context.fixed_interior_value(this->_flow_vars.v(), qp) );
    if(this->_flow_vars.dim() == 3)
      rhocpU(2) = rho*Cp*context.fixed_interior_value(this->_flow_vars.w(), qp);

    res = rhocpU*grad_T - k*(hess_T(0,0) + hess_T(1,1) + hess_T(2,2));
    d_res_dT = 0;
    d_res_dgradT = rhocpU;
    d_res_dhessT = 0;
    d_res_dhessT(0,0) = -k;
    d_res_dhessT(1,1) = -k;
    d_res_dhessT(2,2) = -k;
    d_res_dU = rho * Cp * grad_T;
  }
开发者ID:tradowsk,项目名称:grins,代码行数:30,代码来源:heat_transfer_stab_helper.C

示例2: compute_res_energy_steady

  libMesh::Real HeatTransferStabilizationHelper::compute_res_energy_steady( AssemblyContext& context,
                                                                            unsigned int qp,
                                                                            const libMesh::Real rho,
                                                                            const libMesh::Real Cp,
                                                                            const libMesh::Real k ) const
  {
    libMesh::Gradient grad_T = context.fixed_interior_gradient(this->_temp_vars.T(), qp);
    libMesh::Tensor hess_T = context.fixed_interior_hessian(this->_temp_vars.T(), qp);

    libMesh::RealGradient rhocpU( rho*Cp*context.fixed_interior_value(this->_flow_vars.u(), qp),
                                  rho*Cp*context.fixed_interior_value(this->_flow_vars.v(), qp) );
    if(this->_flow_vars.dim() == 3)
      rhocpU(2) = rho*Cp*context.fixed_interior_value(this->_flow_vars.w(), qp);

    return rhocpU*grad_T - k*(hess_T(0,0) + hess_T(1,1) + hess_T(2,2));
  }
开发者ID:tradowsk,项目名称:grins,代码行数:16,代码来源:heat_transfer_stab_helper.C


注:本文中的AssemblyContext::fixed_interior_hessian方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。