0023830: BRepExtrema_DistShapeShape does not find intersection of face with edge
[occt.git] / src / math / math_FunctionSetRoot.lxx
1 // Copyright (c) 1997-1999 Matra Datavision
2 // Copyright (c) 1999-2012 OPEN CASCADE SAS
3 //
4 // The content of this file is subject to the Open CASCADE Technology Public
5 // License Version 6.5 (the "License"). You may not use the content of this file
6 // except in compliance with the License. Please obtain a copy of the License
7 // at http://www.opencascade.org and read it completely before using this file.
8 //
9 // The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
10 // main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
11 //
12 // The Original Code and all software distributed under the License is
13 // distributed on an "AS IS" basis, without warranty of any kind, and the
14 // Initial Developer hereby disclaims all such warranties, including without
15 // limitation, any warranties of merchantability, fitness for a particular
16 // purpose or non-infringement. Please see the License for the specific terms
17 // and conditions governing the rights and limitations under the License.
18
19
20 #include <StdFail_NotDone.hxx>
21 #include <Standard_DimensionError.hxx>
22
23
24 inline Standard_Boolean math_FunctionSetRoot::IsDone() const { return Done; }
25
26 inline Standard_OStream& operator<<(Standard_OStream& o,
27                                     const math_FunctionSetRoot& F)
28 {
29   F.Dump(o);
30   return o;
31 }
32
33
34 inline const math_Vector& math_FunctionSetRoot::Root() const{
35   StdFail_NotDone_Raise_if(!Done, " ");
36   return Sol;
37 }
38
39
40 inline const math_Vector& math_FunctionSetRoot::FunctionSetErrors() const{
41   StdFail_NotDone_Raise_if(!Done, " ");
42   return Delta;
43 }
44
45
46 inline const math_Matrix& math_FunctionSetRoot::Derivative() const{
47   StdFail_NotDone_Raise_if(!Done, " ");
48   return DF;
49 }
50
51 inline void math_FunctionSetRoot::Derivative(math_Matrix& Der) const{
52   StdFail_NotDone_Raise_if(!Done, " ");
53   Standard_DimensionError_Raise_if(Der.ColNumber() != Sol.Length(), " ");
54   Der = DF;
55 }
56
57
58 inline Standard_Integer math_FunctionSetRoot::StateNumber() const{
59   StdFail_NotDone_Raise_if(!Done, " ");
60   return State;
61 }
62
63
64 inline Standard_Integer math_FunctionSetRoot::NbIterations() const{
65   StdFail_NotDone_Raise_if(!Done, " ");
66   return Kount;
67 }    
68
69 inline Standard_Boolean math_FunctionSetRoot::IsDivergent() const
70 {
71   return myIsDivergent;
72 }