From ad204675f2f892d00c821419d82ab1e22e95e7ba Mon Sep 17 00:00:00 2001 From: Christoph Lehmann <christoph.lehmann@ufz.de> Date: Wed, 10 Aug 2016 16:40:38 +0200 Subject: [PATCH] [PL] f-f_0 -> u_0 - u; fixed docu. --- .../UniformRobinBoundaryCondition.cpp | 6 +++--- .../UniformRobinBoundaryCondition.h | 10 +++++++--- .../UniformRobinBoundaryConditionLocalAssembler.h | 14 +++++++------- 3 files changed, 17 insertions(+), 13 deletions(-) diff --git a/ProcessLib/BoundaryCondition/UniformRobinBoundaryCondition.cpp b/ProcessLib/BoundaryCondition/UniformRobinBoundaryCondition.cpp index 6f9a0102f7e..95bc0c90ca5 100644 --- a/ProcessLib/BoundaryCondition/UniformRobinBoundaryCondition.cpp +++ b/ProcessLib/BoundaryCondition/UniformRobinBoundaryCondition.cpp @@ -25,14 +25,14 @@ createUniformRobinBoundaryCondition( //! \ogs_file_param{boundary_condition__UniformRobin__alpha} double const alpha = config.getConfigParameter<double>("alpha"); - //! \ogs_file_param{boundary_condition__UniformRobin__f_0} - double const f_0 = config.getConfigParameter<double>("f_0"); + //! \ogs_file_param{boundary_condition__UniformRobin__u_0} + double const u_0 = config.getConfigParameter<double>("u_0"); return std::unique_ptr<UniformRobinBoundaryCondition>( new UniformRobinBoundaryCondition( integration_order, dof_table, variable_id, component_id, global_dim, std::move(elements), - UniformRobinBoundaryConditionData{alpha, f_0})); + UniformRobinBoundaryConditionData{alpha, u_0})); } } // ProcessLib diff --git a/ProcessLib/BoundaryCondition/UniformRobinBoundaryCondition.h b/ProcessLib/BoundaryCondition/UniformRobinBoundaryCondition.h index 91ec8ddff0a..87ef77b8825 100644 --- a/ProcessLib/BoundaryCondition/UniformRobinBoundaryCondition.h +++ b/ProcessLib/BoundaryCondition/UniformRobinBoundaryCondition.h @@ -27,9 +27,13 @@ using UniformRobinBoundaryCondition = GenericNaturalBoundaryCondition< /*! Creates a new uniform Robin boundary condition from the given data. * * The Robin boundary condition is given in the form - * \f$ \partial f/\partial n = \alpha \cdot [ f(x) - f_0 ] \f$, - * where the coefficients \f$ \alpha \f$ and \f$ f_0 \f$ are obtained from the - * \c config. + * \f$ \alpha \cdot [ u_0 - u(x) ] \f$, + * where the coefficients \f$ \alpha \f$ and \f$ u_0 \f$ are obtained from the + * \c config, and \f$ u \f$ is the unknown to which the boundary condition is + * applied. + * + * The value \f$ \alpha \cdot [ u_0 - u(x) ] \f$ is a flux. It replaces the + * integrand in the boundary integral for the variable \f$ u \f$. */ std::unique_ptr<UniformRobinBoundaryCondition> createUniformRobinBoundaryCondition( diff --git a/ProcessLib/BoundaryCondition/UniformRobinBoundaryConditionLocalAssembler.h b/ProcessLib/BoundaryCondition/UniformRobinBoundaryConditionLocalAssembler.h index 13f25c1721e..d5d46e90720 100644 --- a/ProcessLib/BoundaryCondition/UniformRobinBoundaryConditionLocalAssembler.h +++ b/ProcessLib/BoundaryCondition/UniformRobinBoundaryConditionLocalAssembler.h @@ -16,7 +16,7 @@ namespace ProcessLib { struct UniformRobinBoundaryConditionData final { double const alpha; - double const f_0; + double const u_0; }; template <typename ShapeFunction, typename IntegrationMethod, @@ -59,13 +59,13 @@ public: auto const& sm = Base::_shape_matrices[ip]; auto const& wp = integration_method.getWeightedPoint(ip); - // df/dn = alpha ( f - f_0 ) - // adding a -alpha term to the diagonal of the stiffness matrix - // and a -alpha * f_0 term to the rhs vector - _local_K.diagonal().noalias() -= + // flux = alpha * ( u_0 - u ) + // adding a alpha term to the diagonal of the stiffness matrix + // and a alpha * u_0 term to the rhs vector + _local_K.diagonal().noalias() += sm.N * _data.alpha * sm.detJ * wp.getWeight(); - _local_rhs.noalias() -= - sm.N * _data.alpha * _data.f_0 * sm.detJ * wp.getWeight(); + _local_rhs.noalias() += + sm.N * _data.alpha * _data.u_0 * sm.detJ * wp.getWeight(); } auto const indices = NumLib::getIndices(id, dof_table_boundary); -- GitLab