Integrator_2

Definition

The concept Integrator_2 describes the set of requirements to be fulfilled by any function object used to instantiate the second template parameter of the class Stream_lines_2<VectorField_2,Integrator_2>. This concept provides the operation that integrates a new point from a given point with a predefined step, and according to a specified vector.

Types

Integrator_2::FT
The scalar type.

Integrator_2::Point_2
The point type.

Integrator_2::Vector_2
The vector type.

Integrator_2::Vector_field_2
The vector field type.

Creation

Integrator_2 integ;
only a default constructor is needed.

Operations

The following operations return the newly integrated point.
Point_2 integ ( Point_2 p, Vector_field_2 vector_field_2)
returns the new position from the actual position defined by p, according to the vector given by vector_field_2 at p.
Precondition: vector_field_2.is_in_domain(p) must be true.

Point_2 integ ( Point_2 p, Vector_field_2 vector_field_2, FT integration_step)
As above. The integration step is defined by integration_step.
Precondition: vector_field_2.is_in_domain(p) must be true.

Point_2 integ ( Point_2 p, Vector_field_2 vector_field_2, FT integration_step, bool direction)
As above. In addition, this function integrates forward if direction is true, and bacward if it is false.
Precondition: vector_field_2.is_in_domain(p) must be true.

Has Models

CGAL::Euler_integrator_2<VectorField_2>
CGAL::Runge_kutta_integrator_2<VectorField_2>