https://mooseframework.inl.gov
WeightedTransition.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 "SmoothTransition.h"
13 
18 {
19 public:
26  WeightedTransition(const Real & x_center, const Real & transition_width);
27 
28  virtual Real value(const Real & x, const Real & f1, const Real & f2) const override;
29 
39  Real derivative(const Real & x,
40  const Real & f1,
41  const Real & f2,
42  const Real & df1dx,
43  const Real & df2dx) const;
44 
50  Real weight(const Real & x) const;
51 };
Weighted transition between two functions of one variable.
Real weight(const Real &x) const
Computes the weight of the first function.
virtual Real value(const Real &x, const Real &f1, const Real &f2) const override
Computes the transition value.
Base class for smooth transitions between two functions of one variable.
const std::vector< double > x
Real derivative(const Real &x, const Real &f1, const Real &f2, const Real &df1dx, const Real &df2dx) const
Computes the derivative of the transition value.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
WeightedTransition(const Real &x_center, const Real &transition_width)
Constructor.