Hermes
 All Data Structures Files Functions Variables Macros Pages
DISSIM.c File Reference

The implementation of Trajectory. More...

Include dependency graph for DISSIM.c:

Functions

float8 calc_integral (float8 a, float8 b, float8 c, float8 t)
 
float8 compute_segment_dissim (const PointST *a1, const PointST *a2, const PointST *b1, const PointST *b2, float8 *error)
 
float8 * DISSIM (const Trajectory *trajectoryA, const Trajectory *trajectoryB, int32 precision, float8 *result, float8 *error)
 The function returns DSSIM. More...
 
PGDLLEXPORT Datum DISSIMExact (PG_FUNCTION_ARGS)
 
 PG_FUNCTION_INFO_V1 (DISSIMExact)
 
PGDLLEXPORT Datum DISSIMApproximate (PG_FUNCTION_ARGS)
 
 PG_FUNCTION_INFO_V1 (DISSIMApproximate)
 

Detailed Description

The implementation of Trajectory.

Author
Marios Vodas (mvoda.nosp@m.s@gm.nosp@m.ail.c.nosp@m.om).

These functions are documented in the Trajectory/Similarity.h

Function Documentation

float8 calc_integral ( float8  a,
float8  b,
float8  c,
float8  t 
)

Referenced by compute_segment_dissim().

float8 compute_segment_dissim ( const PointST a1,
const PointST a2,
const PointST b1,
const PointST b2,
float8 *  error 
)

References calc_integral(), d, differenceInSeconds(), distancePointSP_PointSP(), PointST::sp, PointST::t, timestamp2seconds(), PointSP::x, and PointSP::y.

Referenced by DISSIM().

Here is the call graph for this function:

float8* DISSIM ( const Trajectory trajectoryA,
const Trajectory trajectoryB,
int32  precision,
float8 *  result,
float8 *  error 
)

The function returns DSSIM.

Parameters
[in]trajectoryAThe first trajectory
[in]trajectoryBThe second trajectory
[in]precisionThe wanted precision
[out]resultThe result
[out]errorThe error

References atInstantTrajectory(), compute_segment_dissim(), Trajectory::NrPoints, Trajectory::points, and PointST::t.

Referenced by DISSIMApproximate(), and DISSIMExact().

Here is the call graph for this function:

PGDLLEXPORT Datum DISSIMApproximate ( PG_FUNCTION_ARGS  )

References DISSIM(), and validateInterpolationPrecision().

Here is the call graph for this function:

PGDLLEXPORT Datum DISSIMExact ( PG_FUNCTION_ARGS  )

References DISSIM(), and validateInterpolationPrecision().

Here is the call graph for this function:

PG_FUNCTION_INFO_V1 ( DISSIMExact  )
PG_FUNCTION_INFO_V1 ( DISSIMApproximate  )