Overview of the package#
Data objects (fluidimage.data_objects
)#
FluidImage uses data objects. These objects represent particular types of data. They should be able to be loaded from a file, saved into a file, displayed to the screen, etc.
Works (fluidimage.works
)#
A work is a function processing input data and potentially returning input data. Some works are actually classes which have to be initialized with parameters.
For example, the work fluidimage.works.piv.multipass.WorkPIV
provide a method
calcul(couple)
which compute a PIV field from a couple of arrays.
The works are defined in the package fluidimage.works
. Internally, the works use
utilities for processing defined in the package fluidimage.calcul
.
Topologies, waiting queues and executors#
A computational topology contains the description of an asynchronous computation as a
graph made of waiting queues and works. The base class
fluidimage.topologies.base.TopologyBase
provides the methods add_queue
and
add_work
to define the topology.
The topology classes are defined in the package fluidimage.topologies
.
The execution of a topology is done by an executor. Executor classes are defined in
the package fluidimage.executors
. The executor organizes the asynchronous calls of
the work units of the topology with the correct transfer of data between them.