Operator Reference

moments_region_central_invarmoments_region_central_invarMomentsRegionCentralInvarMomentsRegionCentralInvarmoments_region_central_invar (Operator)

moments_region_central_invarmoments_region_central_invarMomentsRegionCentralInvarMomentsRegionCentralInvarmoments_region_central_invar — Geometric moments of regions.

Signature

moments_region_central_invar(Regions : : : PSI1, PSI2, PSI3, PSI4)

Herror moments_region_central_invar(const Hobject Regions, double* PSI1, double* PSI2, double* PSI3, double* PSI4)

Herror T_moments_region_central_invar(const Hobject Regions, Htuple* PSI1, Htuple* PSI2, Htuple* PSI3, Htuple* PSI4)

void MomentsRegionCentralInvar(const HObject& Regions, HTuple* PSI1, HTuple* PSI2, HTuple* PSI3, HTuple* PSI4)

HTuple HRegion::MomentsRegionCentralInvar(HTuple* PSI2, HTuple* PSI3, HTuple* PSI4) const

double HRegion::MomentsRegionCentralInvar(double* PSI2, double* PSI3, double* PSI4) const

static void HOperatorSet.MomentsRegionCentralInvar(HObject regions, out HTuple PSI1, out HTuple PSI2, out HTuple PSI3, out HTuple PSI4)

HTuple HRegion.MomentsRegionCentralInvar(out HTuple PSI2, out HTuple PSI3, out HTuple PSI4)

double HRegion.MomentsRegionCentralInvar(out double PSI2, out double PSI3, out double PSI4)

def moments_region_central_invar(regions: HObject) -> Tuple[Sequence[float], Sequence[float], Sequence[float], Sequence[float]]

def moments_region_central_invar_s(regions: HObject) -> Tuple[float, float, float, float]

Description

The operator moments_region_central_invarmoments_region_central_invarMomentsRegionCentralInvarMomentsRegionCentralInvarmoments_region_central_invar calculates the moments (PSI1PSI1PSI1PSI1psi1, PSI2PSI2PSI2PSI2psi2, PSI3PSI3PSI3PSI3psi3, PSI4PSI4PSI4PSI4psi4) that are invariant under translation and general linear transformations.

Calculation: Then the moments are defined by:

If more than one region is passed the results are stored in tuples, the index of a value in the tuple corresponding to the index of a region in the input.

In case of empty region all parameters have the value 0.0 if no other behavior was set (see set_systemset_systemSetSystemSetSystemset_system).

Execution Information

  • Multithreading type: reentrant (runs in parallel with non-exclusive operators).
  • Multithreading scope: global (may be called from any thread).
  • Automatically parallelized on tuple level.

Parameters

RegionsRegionsRegionsregionsregions (input_object)  region(-array) objectHRegionHObjectHObjectHobject

Regions to be examined.

PSI1PSI1PSI1PSI1psi1 (output_control)  real(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Moment of 2nd order.

PSI2PSI2PSI2PSI2psi2 (output_control)  real(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Moment of 2nd order.

PSI3PSI3PSI3PSI3psi3 (output_control)  real(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Moment of 2nd order.

PSI4PSI4PSI4PSI4psi4 (output_control)  real(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Moment of 2nd order.

Complexity

If Z is the area of the region the mean runtime complexity is O(sqrt(Z)).

Result

The operator moments_region_central_invarmoments_region_central_invarMomentsRegionCentralInvarMomentsRegionCentralInvarmoments_region_central_invar returns the value 2 ( H_MSG_TRUE) if the input is not empty. The behavior in case of empty input (no input regions available) is set via the operator set_system('no_object_result',<Result>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>)set_system("no_object_result",<Result>). The behavior in case of empty region (the region is the empty set) is set via set_system('empty_region_result',<Result>)set_system("empty_region_result",<Result>)SetSystem("empty_region_result",<Result>)SetSystem("empty_region_result",<Result>)set_system("empty_region_result",<Result>). If necessary an exception is raised.

Possible Predecessors

thresholdthresholdThresholdThresholdthreshold, regiongrowingregiongrowingRegiongrowingRegiongrowingregiongrowing, connectionconnectionConnectionConnectionconnection

Alternatives

moments_region_2ndmoments_region_2ndMomentsRegion2ndMomentsRegion2ndmoments_region_2nd

See also

elliptic_axiselliptic_axisEllipticAxisEllipticAxiselliptic_axis

Module

Foundation