File indexing completed on 2025-01-18 10:04:14
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _math_DirectPolynomialRoots_HeaderFile
0018 #define _math_DirectPolynomialRoots_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_DefineAlloc.hxx>
0022 #include <Standard_Handle.hxx>
0023
0024 #include <Standard_Real.hxx>
0025 #include <Standard_OStream.hxx>
0026
0027
0028
0029
0030
0031 class math_DirectPolynomialRoots
0032 {
0033 public:
0034
0035 DEFINE_STANDARD_ALLOC
0036
0037
0038
0039
0040
0041 Standard_EXPORT math_DirectPolynomialRoots(const Standard_Real A, const Standard_Real B, const Standard_Real C, const Standard_Real D, const Standard_Real E);
0042
0043
0044
0045
0046 Standard_EXPORT math_DirectPolynomialRoots(const Standard_Real A, const Standard_Real B, const Standard_Real C, const Standard_Real D);
0047
0048
0049
0050
0051 Standard_EXPORT math_DirectPolynomialRoots(const Standard_Real A, const Standard_Real B, const Standard_Real C);
0052
0053
0054
0055 Standard_EXPORT math_DirectPolynomialRoots(const Standard_Real A, const Standard_Real B);
0056
0057
0058 Standard_Boolean IsDone() const;
0059
0060
0061 Standard_Boolean InfiniteRoots() const;
0062
0063
0064
0065 Standard_Integer NbSolutions() const;
0066
0067
0068
0069
0070
0071 Standard_Real Value (const Standard_Integer Nieme) const;
0072
0073
0074
0075
0076 Standard_EXPORT void Dump (Standard_OStream& o) const;
0077
0078
0079
0080
0081 protected:
0082
0083
0084 Standard_EXPORT void Solve (const Standard_Real A, const Standard_Real B, const Standard_Real C, const Standard_Real D, const Standard_Real E);
0085
0086 Standard_EXPORT void Solve (const Standard_Real A, const Standard_Real B, const Standard_Real C, const Standard_Real D);
0087
0088 Standard_EXPORT void Solve (const Standard_Real A, const Standard_Real B, const Standard_Real C);
0089
0090 Standard_EXPORT void Solve (const Standard_Real A, const Standard_Real B);
0091
0092
0093
0094
0095 private:
0096
0097
0098
0099 Standard_Boolean Done;
0100 Standard_Boolean InfiniteStatus;
0101 Standard_Integer NbSol;
0102 Standard_Real TheRoots[4];
0103
0104
0105 };
0106
0107
0108 #include <math_DirectPolynomialRoots.lxx>
0109
0110
0111
0112
0113
0114 #endif