chombo-discharge
Loading...
Searching...
No Matches
CD_PolyUtils.H
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2021-2026 SINTEF Energy Research
3 *
4 * SPDX-License-Identifier: GPL-3.0-or-later
5 */
6
13#ifndef CD_POLYUTILS_H
14#define CD_POLYUTILS_H
15
16// Chombo includes
17#include <RefCountedPtr.H>
18#include <BaseIF.H>
19
20// Our includes
21#include <CD_NamespaceHeader.H>
22
26namespace PolyUtils {
27
36RealVect
37brentRootFinder(const RefCountedPtr<BaseIF>& a_impFunc, const RealVect& a_point1, const RealVect& a_point2);
38
46Real
47brentSolve(const Real a_point1, const Real a_point2, const std::function<Real(const Real x)>& a_func) noexcept;
48} // namespace PolyUtils
49
50#include <CD_NamespaceFooter.H>
51
52#endif
Agglomeration class for various useful polynomial routines.
Definition CD_PolyUtils.H:26
Real brentSolve(const Real a_point1, const Real a_point2, const std::function< Real(const Real x)> &a_func) noexcept
Compute the root of a function between two points. This is a 1D problem.
Definition CD_PolyUtils.cpp:169
RealVect brentRootFinder(const RefCountedPtr< BaseIF > &a_impFunc, const RealVect &a_point1, const RealVect &a_point2)
Compute the root of a function between two points. This is a 1D problem along the line.
Definition CD_PolyUtils.cpp:25