\doxysection{Hermite\texorpdfstring{$<$}{<} T \texorpdfstring{$>$}{>} Class Template Reference}
\hypertarget{class_hermite}{}\label{class_hermite}\index{Hermite$<$ T $>$@{Hermite$<$ T $>$}}


Class for computing \doxylink{class_hermite}{Hermite} polynomials and related operations.  




{\ttfamily \#include $<$Hermite\+\_\+\+Tools.\+h$>$}

\doxysubsubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{class_hermite_aa15d4bc9a912e129f2efa8af77b1c350}{Hermite}} ()
\begin{DoxyCompactList}\small\item\em Default constructor for \doxylink{class_hermite}{Hermite} class. \end{DoxyCompactList}\item 
\Hypertarget{class_hermite_a71bcd75257c59f9da802b8e72980c178}\label{class_hermite_a71bcd75257c59f9da802b8e72980c178} 
{\bfseries \texorpdfstring{$\sim$}{\string~}\+Hermite} ()
\begin{DoxyCompactList}\small\item\em Destructor for \doxylink{class_hermite}{Hermite} class. \end{DoxyCompactList}\item 
\mbox{\hyperlink{class_matrix}{Matrix}}$<$ T $>$ \mbox{\hyperlink{class_hermite_a0bc7a1db6552e72fbc54b07b1e1635cd}{evaluate}} (\mbox{\hyperlink{class_matrix}{Matrix}}$<$ T $>$ coefficients, \mbox{\hyperlink{class_matrix}{Matrix}}$<$ T $>$ values)
\begin{DoxyCompactList}\small\item\em Evaluates the \doxylink{class_hermite}{Hermite} polynomial at specified values. \end{DoxyCompactList}\item 
T \mbox{\hyperlink{class_hermite_abd752f9ad7d592af4862e3f0bdad0034}{evaluate}} (\mbox{\hyperlink{class_matrix}{Matrix}}$<$ T $>$ coefficients, T value)
\begin{DoxyCompactList}\small\item\em Evaluates the \doxylink{class_hermite}{Hermite} polynomial at a single value. \end{DoxyCompactList}\item 
\mbox{\hyperlink{class_matrix}{Matrix}}$<$ T $>$ \mbox{\hyperlink{class_hermite_a4ec149c17829e13e0534adb5a35c6106}{coefficients\+\_\+deriv}} (\mbox{\hyperlink{class_matrix}{Matrix}}$<$ T $>$ coefficients)
\begin{DoxyCompactList}\small\item\em Computes the derivative of the \doxylink{class_hermite}{Hermite} polynomial coefficients. \end{DoxyCompactList}\item 
\mbox{\hyperlink{class_matrix}{Matrix}}$<$ T $>$ \mbox{\hyperlink{class_hermite_add73972f2cdeb4c1cb8f800978fe480c}{evaluate\+\_\+deriv}} (\mbox{\hyperlink{class_matrix}{Matrix}}$<$ T $>$ coefficients, \mbox{\hyperlink{class_matrix}{Matrix}}$<$ T $>$ values)
\begin{DoxyCompactList}\small\item\em Evaluates the derivative of the \doxylink{class_hermite}{Hermite} polynomial at specified values. \end{DoxyCompactList}\item 
T \mbox{\hyperlink{class_hermite_a348c884b16fdca54234f188007cb7f74}{evaluate\+\_\+deriv}} (\mbox{\hyperlink{class_matrix}{Matrix}}$<$ T $>$ coefficients, T value)
\begin{DoxyCompactList}\small\item\em Evaluates the derivative of the \doxylink{class_hermite}{Hermite} polynomial at a single value. \end{DoxyCompactList}\item 
\mbox{\hyperlink{class_matrix}{Matrix}}$<$ T $>$ \mbox{\hyperlink{class_hermite_a1d2a6ef569a0ccd15cea95f1eb60605a}{import\+\_\+data}} (const char \texorpdfstring{$\ast$}{*}file)
\begin{DoxyCompactList}\small\item\em Imports data for roots or weights from a file. \end{DoxyCompactList}\item 
\mbox{\hyperlink{class_matrix}{Matrix}}$<$ T $>$ \mbox{\hyperlink{class_hermite_a4cf467389e6bb8f605e6692e80c7799f}{get\+\_\+roots}} (unsigned int order)
\begin{DoxyCompactList}\small\item\em Retrieves the roots of the \doxylink{class_hermite}{Hermite} polynomial of specified order. \end{DoxyCompactList}\item 
\mbox{\hyperlink{class_matrix}{Matrix}}$<$ T $>$ \mbox{\hyperlink{class_hermite_ad31dd94ef63c00b04623f4efe224dac2}{get\+\_\+weights}} (unsigned int order)
\begin{DoxyCompactList}\small\item\em Retrieves the weights of the \doxylink{class_hermite}{Hermite} polynomial of specified order. \end{DoxyCompactList}\item 
\mbox{\hyperlink{class_matrix}{Matrix}}$<$ T $>$ \mbox{\hyperlink{class_hermite_a36e11cfd1a5b900ee916481046555e92}{compute\+\_\+coefficients}} (unsigned int order, T(\texorpdfstring{$\ast$}{*}func)(T))
\begin{DoxyCompactList}\small\item\em Computes the coefficients for the \doxylink{class_hermite}{Hermite} polynomial using a given function. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
\subsubsection*{template$<$typename T$>$\newline
class Hermite$<$ T $>$}
Class for computing \doxylink{class_hermite}{Hermite} polynomials and related operations. 

The \doxylink{class_hermite}{Hermite} class provides methods for evaluating \doxylink{class_hermite}{Hermite} polynomials, computing their derivatives, and importing data for roots and weights.


\begin{DoxyTemplParams}{Template Parameters}
{\em T} & The data type used for computations (e.\+g., float, double). \\
\hline
\end{DoxyTemplParams}


\doxysubsection{Constructor \& Destructor Documentation}
\Hypertarget{class_hermite_aa15d4bc9a912e129f2efa8af77b1c350}\index{Hermite$<$ T $>$@{Hermite$<$ T $>$}!Hermite@{Hermite}}
\index{Hermite@{Hermite}!Hermite$<$ T $>$@{Hermite$<$ T $>$}}
\doxysubsubsection{\texorpdfstring{Hermite()}{Hermite()}}
{\footnotesize\ttfamily \label{class_hermite_aa15d4bc9a912e129f2efa8af77b1c350} 
template$<$typename T $>$ \\
\mbox{\hyperlink{class_hermite}{Hermite}}$<$ T $>$\mbox{\hyperlink{class_hermite}{\+::\+Hermite}} (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption})}



Default constructor for \doxylink{class_hermite}{Hermite} class. 

Initializes the \doxylink{class_hermite}{Hermite} polynomial roots and weights by importing data.

Initializes the \doxylink{class_hermite}{Hermite} polynomial by importing roots and weights from data files. 

\doxysubsection{Member Function Documentation}
\Hypertarget{class_hermite_a4ec149c17829e13e0534adb5a35c6106}\index{Hermite$<$ T $>$@{Hermite$<$ T $>$}!coefficients\_deriv@{coefficients\_deriv}}
\index{coefficients\_deriv@{coefficients\_deriv}!Hermite$<$ T $>$@{Hermite$<$ T $>$}}
\doxysubsubsection{\texorpdfstring{coefficients\_deriv()}{coefficients\_deriv()}}
{\footnotesize\ttfamily \label{class_hermite_a4ec149c17829e13e0534adb5a35c6106} 
template$<$typename T $>$ \\
\mbox{\hyperlink{class_matrix}{Matrix}}$<$ T $>$ \mbox{\hyperlink{class_hermite}{Hermite}}$<$ T $>$\+::coefficients\+\_\+deriv (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_matrix}{Matrix}}$<$ T $>$}]{coefficients}{}\end{DoxyParamCaption})}



Computes the derivative of the \doxylink{class_hermite}{Hermite} polynomial coefficients. 

Computes the derivative of \doxylink{class_hermite}{Hermite} polynomial coefficients.


\begin{DoxyParams}{Parameters}
{\em coefficients} & Coefficients of the \doxylink{class_hermite}{Hermite} polynomial. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Matrix$<$\+T$>$ Coefficients of the derivative of the \doxylink{class_hermite}{Hermite} polynomial. 
\end{DoxyReturn}
\Hypertarget{class_hermite_a36e11cfd1a5b900ee916481046555e92}\index{Hermite$<$ T $>$@{Hermite$<$ T $>$}!compute\_coefficients@{compute\_coefficients}}
\index{compute\_coefficients@{compute\_coefficients}!Hermite$<$ T $>$@{Hermite$<$ T $>$}}
\doxysubsubsection{\texorpdfstring{compute\_coefficients()}{compute\_coefficients()}}
{\footnotesize\ttfamily \label{class_hermite_a36e11cfd1a5b900ee916481046555e92} 
template$<$typename T $>$ \\
\mbox{\hyperlink{class_matrix}{Matrix}}$<$ T $>$ \mbox{\hyperlink{class_hermite}{Hermite}}$<$ T $>$\+::compute\+\_\+coefficients (\begin{DoxyParamCaption}\item[{unsigned int}]{order}{, }\item[{T(\texorpdfstring{$\ast$}{*}}]{func~}{)(T)}\end{DoxyParamCaption})}



Computes the coefficients for the \doxylink{class_hermite}{Hermite} polynomial using a given function. 

Computes the coefficients of the \doxylink{class_hermite}{Hermite} polynomial for a given function.


\begin{DoxyParams}{Parameters}
{\em order} & The order of the \doxylink{class_hermite}{Hermite} polynomial. \\
\hline
{\em func} & Pointer to the function used to compute the coefficients. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Matrix$<$\+T$>$ The coefficients of the \doxylink{class_hermite}{Hermite} polynomial.
\end{DoxyReturn}
This function computes the coefficients of the \doxylink{class_hermite}{Hermite} polynomial of the specified order by evaluating the provided function at the roots of the polynomial and using the weights for integration. The coefficients are calculated based on these values.


\begin{DoxyParams}{Parameters}
{\em order} & The order of the \doxylink{class_hermite}{Hermite} polynomial. \\
\hline
{\em func} & Pointer to the function to be used for computing the coefficients. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Matrix$<$\+T$>$ The computed coefficients of the \doxylink{class_hermite}{Hermite} polynomial. 
\end{DoxyReturn}
\Hypertarget{class_hermite_a0bc7a1db6552e72fbc54b07b1e1635cd}\index{Hermite$<$ T $>$@{Hermite$<$ T $>$}!evaluate@{evaluate}}
\index{evaluate@{evaluate}!Hermite$<$ T $>$@{Hermite$<$ T $>$}}
\doxysubsubsection{\texorpdfstring{evaluate()}{evaluate()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily \label{class_hermite_a0bc7a1db6552e72fbc54b07b1e1635cd} 
template$<$typename T $>$ \\
\mbox{\hyperlink{class_matrix}{Matrix}}$<$ T $>$ \mbox{\hyperlink{class_hermite}{Hermite}}$<$ T $>$\+::evaluate (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_matrix}{Matrix}}$<$ T $>$}]{coefficients}{, }\item[{\mbox{\hyperlink{class_matrix}{Matrix}}$<$ T $>$}]{values}{}\end{DoxyParamCaption})}



Evaluates the \doxylink{class_hermite}{Hermite} polynomial at specified values. 

Evaluates the \doxylink{class_hermite}{Hermite} polynomial at specified matrix values.


\begin{DoxyParams}{Parameters}
{\em coefficients} & Coefficients of the \doxylink{class_hermite}{Hermite} polynomial. \\
\hline
{\em values} & \doxylink{class_matrix}{Matrix} of input values at which to evaluate the polynomial. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Matrix$<$\+T$>$ Resulting values of the evaluated polynomial. 
\end{DoxyReturn}
\Hypertarget{class_hermite_abd752f9ad7d592af4862e3f0bdad0034}\index{Hermite$<$ T $>$@{Hermite$<$ T $>$}!evaluate@{evaluate}}
\index{evaluate@{evaluate}!Hermite$<$ T $>$@{Hermite$<$ T $>$}}
\doxysubsubsection{\texorpdfstring{evaluate()}{evaluate()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily \label{class_hermite_abd752f9ad7d592af4862e3f0bdad0034} 
template$<$typename T $>$ \\
T \mbox{\hyperlink{class_hermite}{Hermite}}$<$ T $>$\+::evaluate (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_matrix}{Matrix}}$<$ T $>$}]{coefficients}{, }\item[{T}]{value}{}\end{DoxyParamCaption})}



Evaluates the \doxylink{class_hermite}{Hermite} polynomial at a single value. 


\begin{DoxyParams}{Parameters}
{\em coefficients} & Coefficients of the \doxylink{class_hermite}{Hermite} polynomial. \\
\hline
{\em value} & The input value at which to evaluate the polynomial. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
T The resulting value of the evaluated polynomial. 
\end{DoxyReturn}
\Hypertarget{class_hermite_add73972f2cdeb4c1cb8f800978fe480c}\index{Hermite$<$ T $>$@{Hermite$<$ T $>$}!evaluate\_deriv@{evaluate\_deriv}}
\index{evaluate\_deriv@{evaluate\_deriv}!Hermite$<$ T $>$@{Hermite$<$ T $>$}}
\doxysubsubsection{\texorpdfstring{evaluate\_deriv()}{evaluate\_deriv()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily \label{class_hermite_add73972f2cdeb4c1cb8f800978fe480c} 
template$<$typename T $>$ \\
\mbox{\hyperlink{class_matrix}{Matrix}}$<$ T $>$ \mbox{\hyperlink{class_hermite}{Hermite}}$<$ T $>$\+::evaluate\+\_\+deriv (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_matrix}{Matrix}}$<$ T $>$}]{coefficients}{, }\item[{\mbox{\hyperlink{class_matrix}{Matrix}}$<$ T $>$}]{values}{}\end{DoxyParamCaption})}



Evaluates the derivative of the \doxylink{class_hermite}{Hermite} polynomial at specified values. 

Evaluates the derivative of the \doxylink{class_hermite}{Hermite} polynomial at specified matrix values.


\begin{DoxyParams}{Parameters}
{\em coefficients} & Coefficients of the \doxylink{class_hermite}{Hermite} polynomial. \\
\hline
{\em values} & \doxylink{class_matrix}{Matrix} of input values at which to evaluate the derivative. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Matrix$<$\+T$>$ Resulting values of the evaluated derivative.
\end{DoxyReturn}
This function first computes the derivative of the \doxylink{class_hermite}{Hermite} polynomial coefficients and then evaluates the resulting derivative polynomial at the given input matrix values.


\begin{DoxyParams}{Parameters}
{\em coefficients} & Coefficients of the \doxylink{class_hermite}{Hermite} polynomial. \\
\hline
{\em values} & \doxylink{class_matrix}{Matrix} of input values at which to evaluate the derivative. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Matrix$<$\+T$>$ The resulting values of the evaluated derivative. 
\end{DoxyReturn}
\Hypertarget{class_hermite_a348c884b16fdca54234f188007cb7f74}\index{Hermite$<$ T $>$@{Hermite$<$ T $>$}!evaluate\_deriv@{evaluate\_deriv}}
\index{evaluate\_deriv@{evaluate\_deriv}!Hermite$<$ T $>$@{Hermite$<$ T $>$}}
\doxysubsubsection{\texorpdfstring{evaluate\_deriv()}{evaluate\_deriv()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily \label{class_hermite_a348c884b16fdca54234f188007cb7f74} 
template$<$typename T $>$ \\
T \mbox{\hyperlink{class_hermite}{Hermite}}$<$ T $>$\+::evaluate\+\_\+deriv (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_matrix}{Matrix}}$<$ T $>$}]{coefficients}{, }\item[{T}]{value}{}\end{DoxyParamCaption})}



Evaluates the derivative of the \doxylink{class_hermite}{Hermite} polynomial at a single value. 


\begin{DoxyParams}{Parameters}
{\em coefficients} & Coefficients of the \doxylink{class_hermite}{Hermite} polynomial. \\
\hline
{\em value} & The input value at which to evaluate the derivative. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
T The resulting value of the evaluated derivative.
\end{DoxyReturn}
This function first computes the derivative of the \doxylink{class_hermite}{Hermite} polynomial coefficients and then evaluates the resulting derivative polynomial at the given input value.


\begin{DoxyParams}{Parameters}
{\em coefficients} & Coefficients of the \doxylink{class_hermite}{Hermite} polynomial. \\
\hline
{\em value} & The input value at which to evaluate the derivative. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
T The resulting value of the evaluated derivative. 
\end{DoxyReturn}
\Hypertarget{class_hermite_a4cf467389e6bb8f605e6692e80c7799f}\index{Hermite$<$ T $>$@{Hermite$<$ T $>$}!get\_roots@{get\_roots}}
\index{get\_roots@{get\_roots}!Hermite$<$ T $>$@{Hermite$<$ T $>$}}
\doxysubsubsection{\texorpdfstring{get\_roots()}{get\_roots()}}
{\footnotesize\ttfamily \label{class_hermite_a4cf467389e6bb8f605e6692e80c7799f} 
template$<$typename T $>$ \\
\mbox{\hyperlink{class_matrix}{Matrix}}$<$ T $>$ \mbox{\hyperlink{class_hermite}{Hermite}}$<$ T $>$\+::get\+\_\+roots (\begin{DoxyParamCaption}\item[{unsigned int}]{order}{}\end{DoxyParamCaption})}



Retrieves the roots of the \doxylink{class_hermite}{Hermite} polynomial of specified order. 

Retrieves the roots of the \doxylink{class_hermite}{Hermite} polynomial of the specified order.


\begin{DoxyParams}{Parameters}
{\em order} & The order of the \doxylink{class_hermite}{Hermite} polynomial. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Matrix$<$\+T$>$ The roots of the \doxylink{class_hermite}{Hermite} polynomial.
\end{DoxyReturn}
This function retrieves the roots from the precomputed data. If the order exceeds the maximum order, an error is printed, and an empty matrix is returned.


\begin{DoxyParams}{Parameters}
{\em order} & The order of the \doxylink{class_hermite}{Hermite} polynomial. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Matrix$<$\+T$>$ The roots of the \doxylink{class_hermite}{Hermite} polynomial for the specified order. 
\end{DoxyReturn}
\Hypertarget{class_hermite_ad31dd94ef63c00b04623f4efe224dac2}\index{Hermite$<$ T $>$@{Hermite$<$ T $>$}!get\_weights@{get\_weights}}
\index{get\_weights@{get\_weights}!Hermite$<$ T $>$@{Hermite$<$ T $>$}}
\doxysubsubsection{\texorpdfstring{get\_weights()}{get\_weights()}}
{\footnotesize\ttfamily \label{class_hermite_ad31dd94ef63c00b04623f4efe224dac2} 
template$<$typename T $>$ \\
\mbox{\hyperlink{class_matrix}{Matrix}}$<$ T $>$ \mbox{\hyperlink{class_hermite}{Hermite}}$<$ T $>$\+::get\+\_\+weights (\begin{DoxyParamCaption}\item[{unsigned int}]{order}{}\end{DoxyParamCaption})}



Retrieves the weights of the \doxylink{class_hermite}{Hermite} polynomial of specified order. 

Retrieves the weights of the \doxylink{class_hermite}{Hermite} polynomial of the specified order.


\begin{DoxyParams}{Parameters}
{\em order} & The order of the \doxylink{class_hermite}{Hermite} polynomial. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Matrix$<$\+T$>$ The weights of the \doxylink{class_hermite}{Hermite} polynomial.
\end{DoxyReturn}
This function retrieves the weights from the precomputed data. If the order exceeds the maximum order, an error is printed, and an empty matrix is returned.


\begin{DoxyParams}{Parameters}
{\em order} & The order of the \doxylink{class_hermite}{Hermite} polynomial. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Matrix$<$\+T$>$ The weights of the \doxylink{class_hermite}{Hermite} polynomial for the specified order. 
\end{DoxyReturn}
\Hypertarget{class_hermite_a1d2a6ef569a0ccd15cea95f1eb60605a}\index{Hermite$<$ T $>$@{Hermite$<$ T $>$}!import\_data@{import\_data}}
\index{import\_data@{import\_data}!Hermite$<$ T $>$@{Hermite$<$ T $>$}}
\doxysubsubsection{\texorpdfstring{import\_data()}{import\_data()}}
{\footnotesize\ttfamily \label{class_hermite_a1d2a6ef569a0ccd15cea95f1eb60605a} 
template$<$typename T $>$ \\
\mbox{\hyperlink{class_matrix}{Matrix}}$<$ T $>$ \mbox{\hyperlink{class_hermite}{Hermite}}$<$ T $>$\+::import\+\_\+data (\begin{DoxyParamCaption}\item[{const char \texorpdfstring{$\ast$}{*}}]{file}{}\end{DoxyParamCaption})}



Imports data for roots or weights from a file. 

Imports data (e.\+g., roots or weights) from a file.


\begin{DoxyParams}{Parameters}
{\em file} & The filename containing the data. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Matrix$<$\+T$>$ The imported data as a matrix.
\end{DoxyReturn}
The imported data is expected to be formatted with the first two values in the file representing the number of rows and columns, followed by the actual data values.


\begin{DoxyParams}{Parameters}
{\em file} & The filename containing the data. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Matrix$<$\+T$>$ The imported data as a matrix. 
\end{DoxyReturn}


The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
src/Hermite\+\_\+\+Tools.\+h\end{DoxyCompactItemize}
