Example: Folium of Descartes More...
Public Member Functions | |
DescartesFolium (const Options &) | |
Actual model. | |
DescartesFolium (bool share, DescartesFolium &p) | |
Constructor for cloning p. | |
virtual Space * | copy (bool share) |
Copy during cloning. | |
virtual void | constrain (const Space &_b) |
Add constraint to current model to get next solution (not too close) | |
virtual void | print (std::ostream &os) const |
Print solution coordinates. | |
Protected Attributes | |
FloatVarArray | f |
The numbers. | |
double | step |
Minimum distance between two solutions. | |
Related Functions | |
(Note that these are not member functions.) | |
int | main (int argc, char *argv[]) |
Main-function. |
Example: Folium of Descartes
The folium of Descartes is a curve defined by the equation:
A technique to solve it, is to write and solve for
and
in terms of
. By setting
, it yields to the paramatric equation:
The parameter is related to the position on the curve and is constrained to get different solutions for
and
. To get reasonable interval starting sizes,
and
are restricted to
and
is restricted to
.
Definition at line 72 of file descartes-folium.cpp.
DescartesFolium::DescartesFolium | ( | const Options & | ) | [inline] |
Actual model.
Definition at line 80 of file descartes-folium.cpp.
DescartesFolium::DescartesFolium | ( | bool | share, |
DescartesFolium & | p | ||
) | [inline] |
Constructor for cloning p.
Definition at line 94 of file descartes-folium.cpp.
virtual Space* DescartesFolium::copy | ( | bool | share | ) | [inline, virtual] |
Copy during cloning.
Definition at line 99 of file descartes-folium.cpp.
virtual void DescartesFolium::constrain | ( | const Space & | _b | ) | [inline, virtual] |
Add constraint to current model to get next solution (not too close)
Definition at line 103 of file descartes-folium.cpp.
virtual void DescartesFolium::print | ( | std::ostream & | os | ) | const [inline, virtual] |
Print solution coordinates.
Reimplemented from Gecode::Driver::ScriptBase< BaseSpace >.
Definition at line 108 of file descartes-folium.cpp.
int main | ( | int | argc, |
char * | argv[] | ||
) | [related] |
Main-function.
Definition at line 118 of file descartes-folium.cpp.
FloatVarArray DescartesFolium::f [protected] |
The numbers.
Definition at line 75 of file descartes-folium.cpp.
double DescartesFolium::step [protected] |
Minimum distance between two solutions.
Definition at line 77 of file descartes-folium.cpp.