Class RssiRadioSourceEstimator<S extends RadioSource,P extends com.irurueta.geometry.Point<P>>
- Type Parameters:
S- aRadioSourcetype.P- aPointtype.
- Direct Known Subclasses:
RssiRadioSourceEstimator2D,RssiRadioSourceEstimator3D
IMPORTANT: Implementations of this class can choose to estimate a combination of radio source position, transmitted power and path loss exponent. However enabling all three estimations usually achieves inaccurate results. When using this class, estimation must be of at least one parameter (position, transmitted power or path loss exponent) when initial values are provided for the other two, and at most it should consist of two parameters (either position and transmitted power, position and path loss exponent or transmitted power and path loss exponent), providing an initial value for the remaining parameter.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate doubleEstimated chi square value.static final doubleDefault exponent typically used on free space for path loss propagation in terms of distance.static final booleanIndicates whether path loss estimation is enabled or not by default.static final booleanIndicates whether radio source position estimation is enabled or not by default.static final doubleDefault standard deviations assumed for RSSI readings being fitted.static final booleanIndicates whether radio source transmitted power estimation is enabled or not by default.private doubleEstimated exponent typically used on free space for path loss propagation in terms of distance.private DoubleVariance of estimated path loss exponent.private doubleEstimated transmitted power expressed in dBm's.private DoubleVariance of estimated transmitted power.private final com.irurueta.numerical.fitting.LevenbergMarquardtMultiDimensionFitterLevenberg-Marquardt fitter to find a solution.private doubleInitial exponent typically used on free space for path loss propagation in terms of distance.private PInitial position to start the estimation of radio source position.private DoubleInitial transmitted power to start the estimation of radio source transmitted power.private booleanIndicates whether path loss estimation is enabled or not.private booleanIndicates whether radio source position estimation is enabled or not.static final doubleSpeed of light expressed in meters per second (m/s).private booleanIndicates whether transmitted power estimation is enabled or not.Fields inherited from class com.irurueta.navigation.indoor.radiosource.RadioSourceEstimator
estimatedCovariance, estimatedPositionCoordinates, estimatedPositionCovariance, listener, locked, readings -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedConstructor.protectedConstructor.protectedRssiRadioSourceEstimator(Double initialTransmittedPowerdBm) Constructor.protectedRssiRadioSourceEstimator(Double initialTransmittedPowerdBm, RssiRadioSourceEstimatorListener<S, P> listener) Constructor.protectedRssiRadioSourceEstimator(List<? extends RssiReadingLocated<S, P>> readings) Constructor.protectedRssiRadioSourceEstimator(List<? extends RssiReadingLocated<S, P>> readings, RssiRadioSourceEstimatorListener<S, P> listener) Constructor.protectedRssiRadioSourceEstimator(List<? extends RssiReadingLocated<S, P>> readings, Double initialTransmittedPowerdBm) Constructor.protectedRssiRadioSourceEstimator(List<? extends RssiReadingLocated<S, P>> readings, Double initialTransmittedPowerdBm, RssiRadioSourceEstimatorListener<S, P> listener) Constructor.protectedRssiRadioSourceEstimator(List<? extends RssiReadingLocated<S, P>> readings, P initialPosition) Constructor.protectedRssiRadioSourceEstimator(List<? extends RssiReadingLocated<S, P>> readings, P initialPosition, RssiRadioSourceEstimatorListener<S, P> listener) Constructor.protectedRssiRadioSourceEstimator(List<? extends RssiReadingLocated<S, P>> readings, P initialPosition, Double initialTransmittedPowerdBm) Constructor.protectedRssiRadioSourceEstimator(List<? extends RssiReadingLocated<S, P>> readings, P initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent) Constructor.protectedRssiRadioSourceEstimator(List<? extends RssiReadingLocated<S, P>> readings, P initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent, RssiRadioSourceEstimatorListener<S, P> listener) Constructor.protectedRssiRadioSourceEstimator(List<? extends RssiReadingLocated<S, P>> readings, P initialPosition, Double initialTransmittedPowerdBm, RssiRadioSourceEstimatorListener<S, P> listener) Constructor.protectedRssiRadioSourceEstimator(P initialPosition) Constructor.protectedRssiRadioSourceEstimator(P initialPosition, RssiRadioSourceEstimatorListener<S, P> listener) Constructor.protectedRssiRadioSourceEstimator(P initialPosition, Double initialTransmittedPowerdBm) Constructor.protectedRssiRadioSourceEstimator(P initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent) Constructor.protectedRssiRadioSourceEstimator(P initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent, RssiRadioSourceEstimatorListener<S, P> listener) Constructor.protectedRssiRadioSourceEstimator(P initialPosition, Double initialTransmittedPowerdBm, RssiRadioSourceEstimatorListener<S, P> listener) Constructor. -
Method Summary
Modifier and TypeMethodDescriptionprivate voidcomputeInitialPosition(double[] result, int dims) Computes initial position.private doubleComputes initial transmitted power expressed in dBm's.voidestimate()Estimate position, transmitted power and path loss exponent.doublegetChiSq()Gets estimated chi square value.doubleGets estimated exponent typically used on free space for path loss propagation in terms of distance.Gets estimated path loss exponent variance.doubleGets estimated transmitted power expressed in milli watts (mW).doubleGets estimated transmitted power expressed in dBm's.Gets estimated transmitted power variance.doubleGets initial exponent typically used on free space for path loss propagation in terms of distance.Gets initial position to start the estimation of radio source position.Gets initial transmitted power to start the estimation of radio source transmitted power (expressed in mW).Gets initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's).booleanIndicates whether path loss estimation is enabled or not.booleanIndicates whether radio source position estimation is enabled or not.booleanisReady()Indicates whether this instance is ready to start the estimation.booleanIndicates whether transmitted power estimation is enabled or not.voidsetInitialPathLossExponent(double initialPathLossExponent) Sets initial exponent typically used on free space for path loss propagation in terms of distance.voidsetInitialPosition(P initialPosition) Sets initial position to start the estimation of radio source position.voidsetInitialTransmittedPower(Double initialTransmittedPower) Sets initial transmitted power to start the estimation of radio source transmitted power (expressed in mW).voidsetInitialTransmittedPowerdBm(Double initialTransmittedPowerdBm) Sets initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's).voidsetPathLossEstimationEnabled(boolean pathLossEstimationEnabled) Specifies whether path loss estimation is enabled or not.voidsetPositionEstimationEnabled(boolean positionEstimationEnabled) Specifies whether radio source position estimation is enabled or not.voidsetTransmittedPowerEstimationEnabled(boolean transmittedPowerEstimationEnabled) Specifies whether transmitted power estimation is enabled or not.private voidSetups fitter to estimated path loss exponent.private voidSetups fitter to estimated position.private voidSetups fitter to estimate position and path loss exponent.private voidSetups fitter to estimate transmitted power and position.private voidSetups fitter to estimate transmitted power, position and path loss exponent.private voidSetups fitter to estimate transmitted power.private voidSetups fitter to estimate transmitted power and path loss exponent.Methods inherited from class com.irurueta.navigation.indoor.radiosource.RadioSourceEstimator
areValidReadings, getEstimatedCovariance, getEstimatedPosition, getEstimatedPosition, getEstimatedPositionCoordinates, getEstimatedPositionCovariance, getEstimatedRadioSource, getListener, getMinReadings, getNumberOfDimensions, getReadings, internalSetReadings, isLocked, setListener, setReadings
-
Field Details
-
SPEED_OF_LIGHT
public static final double SPEED_OF_LIGHTSpeed of light expressed in meters per second (m/s).- See Also:
-
DEFAULT_POWER_STANDARD_DEVIATION
public static final double DEFAULT_POWER_STANDARD_DEVIATIONDefault standard deviations assumed for RSSI readings being fitted.- See Also:
-
DEFAULT_PATH_LOSS_EXPONENT
public static final double DEFAULT_PATH_LOSS_EXPONENTDefault exponent typically used on free space for path loss propagation in terms of distance. This value is used for free space environments.- See Also:
-
DEFAULT_POSITION_ESTIMATION_ENABLED
public static final boolean DEFAULT_POSITION_ESTIMATION_ENABLEDIndicates whether radio source position estimation is enabled or not by default.- See Also:
-
DEFAULT_TRANSMITTED_POWER_ESTIMATION_ENABLED
public static final boolean DEFAULT_TRANSMITTED_POWER_ESTIMATION_ENABLEDIndicates whether radio source transmitted power estimation is enabled or not by default. Typically, this data is required for Wi-Fi Access points, but it is already provided for Beacons (and hence its estimation is not needed).- See Also:
-
DEFAULT_PATHLOSS_ESTIMATION_ENABLED
public static final boolean DEFAULT_PATHLOSS_ESTIMATION_ENABLEDIndicates whether path loss estimation is enabled or not by default.- See Also:
-
positionEstimationEnabled
private boolean positionEstimationEnabledIndicates whether radio source position estimation is enabled or not. -
estimatedTransmittedPowerdBm
private double estimatedTransmittedPowerdBmEstimated transmitted power expressed in dBm's. -
transmittedPowerEstimationEnabled
private boolean transmittedPowerEstimationEnabledIndicates whether transmitted power estimation is enabled or not. -
estimatedPathLossExponent
private double estimatedPathLossExponentEstimated exponent typically used on free space for path loss propagation in terms of distance. On different environments path loss exponent might have different values: - Free space: 2.0 - Urban Area: 2.7 to 3.5 - Suburban Area: 3 to 5 - Indoor (line-of-sight): 1.6 to 1.8 If path loss exponent estimation is not enabled, this value will always be equal toDEFAULT_PATH_LOSS_EXPONENT -
estimatedTransmittedPowerVariance
Variance of estimated transmitted power. This value will only be available when transmitted power estimation is enabled. -
estimatedPathLossExponentVariance
Variance of estimated path loss exponent. This value will only be available when path-loss exponent estimation is enabled. -
chiSq
private double chiSqEstimated chi square value. -
initialTransmittedPowerdBm
Initial transmitted power to start the estimation of radio source transmitted power. If not defined, average value of received power readings will be used. -
initialPosition
Initial position to start the estimation of radio source position. If not defined, centroid of provided readings will be used. -
initialPathLossExponent
private double initialPathLossExponentInitial exponent typically used on free space for path loss propagation in terms of distance. On different environments path loss exponent might have different values: - Free space: 2.0 - Urban Area: 2.7 to 3.5 - Suburban Area: 3 to 5 - Indoor (line-of-sight): 1.6 to 1.8If path loss exponent estimation is enabled, estimation will start at this value and will converge to the most appropriate value. If path loss exponent estimation is disabled, this value will be assumed to be exact and the estimated path loss exponent will be equal to this value.
-
pathLossEstimationEnabled
private boolean pathLossEstimationEnabledIndicates whether path loss estimation is enabled or not. -
fitter
private final com.irurueta.numerical.fitting.LevenbergMarquardtMultiDimensionFitter fitterLevenberg-Marquardt fitter to find a solution.
-
-
Constructor Details
-
RssiRadioSourceEstimator
protected RssiRadioSourceEstimator()Constructor. -
RssiRadioSourceEstimator
Constructor. Sets radio signal readings belonging to the same radio source.- Parameters:
readings- radio signal readings belonging to the same radio source.- Throws:
IllegalArgumentException- if readings are not valid.
-
RssiRadioSourceEstimator
Constructor.- Parameters:
initialPosition- initial position to start the estimation of radio source position.
-
RssiRadioSourceEstimator
protected RssiRadioSourceEstimator(List<? extends RssiReadingLocated<S, P>> readings, P initialPosition) Constructor. Sets radio signal readings belonging to the same radio source.- Parameters:
readings- radio signal readings belonging to the same radio source.initialPosition- initial position to start the estimation of radio source position.- Throws:
IllegalArgumentException- if readings are not valid.
-
RssiRadioSourceEstimator
Constructor.- Parameters:
initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's).
-
RssiRadioSourceEstimator
protected RssiRadioSourceEstimator(List<? extends RssiReadingLocated<S, P>> readings, Double initialTransmittedPowerdBm) Constructor. Sets radio signal readings belonging to the same radio source.- Parameters:
readings- radio signal readings belonging to the same radio source.initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's).- Throws:
IllegalArgumentException- if readings are not valid.
-
RssiRadioSourceEstimator
protected RssiRadioSourceEstimator(List<? extends RssiReadingLocated<S, P>> readings, P initialPosition, Double initialTransmittedPowerdBm) Constructor. Sets radio signal readings belonging to the same radio source.- Parameters:
readings- radio signal readings belonging to the same radio source.initialPosition- initial position to start the estimation of radio source position.initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's)- Throws:
IllegalArgumentException- if readings are not valid.
-
RssiRadioSourceEstimator
Constructor.- Parameters:
initialPosition- initial position to start the estimation of radio source position.initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's)
-
RssiRadioSourceEstimator
protected RssiRadioSourceEstimator(List<? extends RssiReadingLocated<S, P>> readings, P initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent) Constructor. Sets radio signal readings belonging to the same radio source.- Parameters:
readings- radio signal readings belonging to the same radio source.initialPosition- initial position to start the estimation of radio source position.initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's).initialPathLossExponent- initial path loss exponent. A typical value is 2.0.- Throws:
IllegalArgumentException- if readings are not valid.
-
RssiRadioSourceEstimator
protected RssiRadioSourceEstimator(P initialPosition, Double initialTransmittedPowerdBm, double initialPathLossExponent) Constructor.- Parameters:
initialPosition- initial position to start the estimation of radio source position.initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's).initialPathLossExponent- initial path loss exponent. A typical value is 2.0.
-
-
Method Details
-
getInitialTransmittedPowerdBm
Gets initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's). If not defined, average value of received power readings will be used.If transmitted power estimation is enabled, estimation will start at this value and will be converted to the most appropriate value. If transmitted power estimation is disabled, this value will be assumed to be exact and the estimated transmitted power will be equal to this value (converted to dBm's).
- Returns:
- initial transmitted power to start the estimation of radio source transmitted power.
-
setInitialTransmittedPowerdBm
public void setInitialTransmittedPowerdBm(Double initialTransmittedPowerdBm) throws com.irurueta.navigation.LockedException Sets initial transmitted power to start the estimation of radio source transmitted power (expressed in dBm's). If not defined, average value of received power readings will be used.If transmitted power estimation is enabled, estimation will start at this value and will be converted to the most appropriate value. If transmitted power estimation is disabled, this value will be assumed to be exact and the estimated transmitted power will be equal to this value (converted to dBm's).
- Parameters:
initialTransmittedPowerdBm- initial transmitted power to start the estimation of radio source transmitted power.- Throws:
com.irurueta.navigation.LockedException- if estimator is locked.
-
getInitialTransmittedPower
Gets initial transmitted power to start the estimation of radio source transmitted power (expressed in mW). If not defined, average value of received power readings will be used.If transmitted power estimation is enabled, estimation will start at this value and will be converted to the most appropriate value. If transmitted power estimation is disabled, this value will be assumed to be exact and the estimated transmitted power will be equal to this value (converted to dBm's).
- Returns:
- initial transmitted power to start the estimation of radio source transmitted power.
-
setInitialTransmittedPower
public void setInitialTransmittedPower(Double initialTransmittedPower) throws com.irurueta.navigation.LockedException Sets initial transmitted power to start the estimation of radio source transmitted power (expressed in mW). If not defined, average value of received power readings will be used.If transmitted power estimation is enabled, estimation will start at this value and will be converted to the most appropriate value. If transmitted power estimation is disabled, this value will be assumed to be exact and the estimated transmitted power will be equal to this value (converted to dBm's).
- Parameters:
initialTransmittedPower- initial transmitted power to start the estimation of radio source transmitted power.- Throws:
com.irurueta.navigation.LockedException- if estimator is locked.IllegalArgumentException- if provided value is negative.
-
isTransmittedPowerEstimationEnabled
public boolean isTransmittedPowerEstimationEnabled()Indicates whether transmitted power estimation is enabled or not.- Returns:
- true if transmitted power estimation is enabled, false otherwise.
-
setTransmittedPowerEstimationEnabled
public void setTransmittedPowerEstimationEnabled(boolean transmittedPowerEstimationEnabled) throws com.irurueta.navigation.LockedException Specifies whether transmitted power estimation is enabled or not.- Parameters:
transmittedPowerEstimationEnabled- true if transmitted power estimation is enabled, false otherwise.- Throws:
com.irurueta.navigation.LockedException- if estimator is locked.
-
getInitialPosition
Gets initial position to start the estimation of radio source position. If not defined, centroid of provided readings will be used.If position estimation is enabled, estimation will start at this value and will converge to the most appropriate value. If position estimation is disabled, this value will be assumed to be exact and the estimated position will be equal to this value.
- Returns:
- initial position to start the estimation of radio source position.
-
setInitialPosition
Sets initial position to start the estimation of radio source position. If not defined, centroid of provided fingerprints will be used.If position estimation is enabled, estimation will start at this value and will converge to the most appropriate value. If position estimation is disabled, this value will be assumed to be exact and the estimated position will be equal to this value.
- Parameters:
initialPosition- initial position to start the estimation of radio source position.- Throws:
com.irurueta.navigation.LockedException- if estimator is locked.
-
isPositionEstimationEnabled
public boolean isPositionEstimationEnabled()Indicates whether radio source position estimation is enabled or not.- Returns:
- true if position estimation is enabled, false otherwise.
-
setPositionEstimationEnabled
public void setPositionEstimationEnabled(boolean positionEstimationEnabled) throws com.irurueta.navigation.LockedException Specifies whether radio source position estimation is enabled or not.- Parameters:
positionEstimationEnabled- true if position estimation is enabled, false otherwise.- Throws:
com.irurueta.navigation.LockedException- if estimator is locked.
-
getInitialPathLossExponent
public double getInitialPathLossExponent()Gets initial exponent typically used on free space for path loss propagation in terms of distance. On different environments path loss exponent might have different value: - Free space: 2.0 - Urban Area: 2.7 to 3.5 - Suburban Area: 3 to 5 - Indoor (line-of-sight): 1.6 to 1.8If path loss exponent estimation is enabled, estimation will start at this value and will converge to the most appropriate value. If path loss exponent estimation is disabled, this value will be assumed to be exact and the estimated path loss exponent will be equal to this value.
- Returns:
- initial path loss exponent.
-
setInitialPathLossExponent
public void setInitialPathLossExponent(double initialPathLossExponent) throws com.irurueta.navigation.LockedException Sets initial exponent typically used on free space for path loss propagation in terms of distance. On different environments path loss exponent might have different value: - Free space: 2.0 - Urban Area: 2.7 to 3.5 - Suburban Area: 3 to 5 - Indoor (line-of-sight): 1.6 to 1.8If path loss exponent estimation is enabled, estimation will start at this value and will converge to the most appropriate value. If path loss exponent estimation is disabled, this value will be assumed to be exact and the estimated path loss exponent will be equal to this value.
- Parameters:
initialPathLossExponent- initial path loss exponent.- Throws:
com.irurueta.navigation.LockedException- if estimator is locked.
-
isPathLossEstimationEnabled
public boolean isPathLossEstimationEnabled()Indicates whether path loss estimation is enabled or not.- Returns:
- true if path loss estimation is enabled, false otherwise.
-
setPathLossEstimationEnabled
public void setPathLossEstimationEnabled(boolean pathLossEstimationEnabled) throws com.irurueta.navigation.LockedException Specifies whether path loss estimation is enabled or not.- Parameters:
pathLossEstimationEnabled- true if path loss estimation is enabled, false otherwise.- Throws:
com.irurueta.navigation.LockedException- if estimator is locked.
-
isReady
public boolean isReady()Indicates whether this instance is ready to start the estimation.- Specified by:
isReadyin classRadioSourceEstimator<P extends com.irurueta.geometry.Point<P>,RssiReadingLocated<S extends RadioSource, P extends com.irurueta.geometry.Point<P>>, RssiRadioSourceEstimatorListener<S extends RadioSource, P extends com.irurueta.geometry.Point<P>>> - Returns:
- true if this instance is ready, false otherwise.
-
estimate
public void estimate() throws RadioSourceEstimationException, com.irurueta.navigation.NotReadyException, com.irurueta.navigation.LockedExceptionEstimate position, transmitted power and path loss exponent.- Specified by:
estimatein classRadioSourceEstimator<P extends com.irurueta.geometry.Point<P>,RssiReadingLocated<S extends RadioSource, P extends com.irurueta.geometry.Point<P>>, RssiRadioSourceEstimatorListener<S extends RadioSource, P extends com.irurueta.geometry.Point<P>>> - Throws:
RadioSourceEstimationException- if estimation fails.com.irurueta.navigation.NotReadyException- if estimator is not ready.com.irurueta.navigation.LockedException- if estimator is locked.
-
getEstimatedTransmittedPower
public double getEstimatedTransmittedPower()Gets estimated transmitted power expressed in milli watts (mW).- Returns:
- estimated transmitted power expressed in milli watts.
-
getEstimatedTransmittedPowerdBm
public double getEstimatedTransmittedPowerdBm()Gets estimated transmitted power expressed in dBm's.- Returns:
- estimated transmitted power expressed in dBm's.
-
getEstimatedPathLossExponent
public double getEstimatedPathLossExponent()Gets estimated exponent typically used on free space for path loss propagation in terms of distance. On different environments path loss exponent might have different values: - Free space: 2.0 - Urban Area: 2.7 to 3.5 - Suburban Area: 3 to 5 - Indoor (line-of-sight): 1.6 to 1.8 If path loss exponent estimation is not enabled, this value will always be equal toDEFAULT_PATH_LOSS_EXPONENT- Returns:
- estimated path loss exponent.
-
getEstimatedTransmittedPowerVariance
Gets estimated transmitted power variance. This value will only be available when transmitted power estimation is enabled.- Returns:
- estimated transmitted power variance or null.
-
getEstimatedPathLossExponentVariance
Gets estimated path loss exponent variance. This value will only be available when path-loss exponent estimation is enabled.- Returns:
- estimated path loss exponent variance or null.
-
getChiSq
public double getChiSq()Gets estimated chi square value.- Returns:
- estimated chi square value.
-
setupFitterPosition
private void setupFitterPosition() throws com.irurueta.numerical.fitting.FittingExceptionSetups fitter to estimated position.- Throws:
com.irurueta.numerical.fitting.FittingException- if Levenberg-Marquardt fitting fails.
-
setupFitterTransmittedPower
private void setupFitterTransmittedPower() throws com.irurueta.numerical.fitting.FittingExceptionSetups fitter to estimate transmitted power.- Throws:
com.irurueta.numerical.fitting.FittingException- if Levenberg-Marquardt fitting fails.
-
setupFitterPathLossExponent
private void setupFitterPathLossExponent() throws com.irurueta.numerical.fitting.FittingExceptionSetups fitter to estimated path loss exponent.- Throws:
com.irurueta.numerical.fitting.FittingException- if Levenberg-Marquardt fitting fails.
-
setupFitterPositionAndTransmittedPower
private void setupFitterPositionAndTransmittedPower() throws com.irurueta.numerical.fitting.FittingExceptionSetups fitter to estimate transmitted power and position.- Throws:
com.irurueta.numerical.fitting.FittingException- if Levenberg-Marquardt fitting fails.
-
setupFitterPositionAndPathLossExponent
private void setupFitterPositionAndPathLossExponent() throws com.irurueta.numerical.fitting.FittingExceptionSetups fitter to estimate position and path loss exponent.- Throws:
com.irurueta.numerical.fitting.FittingException- if Levenberg-Marquardt fitting fails.
-
setupFitterTransmittedPowerAndPathLossExponent
private void setupFitterTransmittedPowerAndPathLossExponent() throws com.irurueta.numerical.fitting.FittingExceptionSetups fitter to estimate transmitted power and path loss exponent.- Throws:
com.irurueta.numerical.fitting.FittingException- if Levenberg-Marquardt fitting fails.
-
setupFitterPositionTransmittedPowerAndPathLossExponent
private void setupFitterPositionTransmittedPowerAndPathLossExponent() throws com.irurueta.numerical.fitting.FittingExceptionSetups fitter to estimate transmitted power, position and path loss exponent.- Throws:
com.irurueta.numerical.fitting.FittingException- if Levenberg-Marquardt fitting fails.
-
computeInitialTransmittedPowerdBm
private double computeInitialTransmittedPowerdBm()Computes initial transmitted power expressed in dBm's. If no initial transmitted power is provided, the average of all measures is used, otherwise provided value is used.- Returns:
- initial transmitted power.
-
computeInitialPosition
private void computeInitialPosition(double[] result, int dims) Computes initial position.- Parameters:
result- array where result will be stored.dims- number of dimensions of position coordinates (either 2 or 3).
-