Go to the documentation of this file.
30 auto diagonal = std::dynamic_pointer_cast<noiseModel::Diagonal>(
model);
32 throw std::invalid_argument(
"ScenarioRunner::Diagonal: not a diagonal");
56 double imuSampleTime = 1.0 / 100.0,
const Bias&
bias =
Bias())
59 imuSampleTime_(imuSampleTime),
60 sqrt_dt_(
std::
sqrt(imuSampleTime)),
63 gyroSampler_(
Diagonal(
p->gyroscopeCovariance), 10),
64 accSampler_(
Diagonal(
p->accelerometerCovariance), 29284) {}
83 return actualAngularVelocity(
t) + estimatedBias_.
gyroscope() +
84 gyroSampler_.
sample() / sqrt_dt_;
88 accSampler_.
sample() / sqrt_dt_;
96 bool corrupted =
false)
const;
100 const Bias& estimatedBias =
Bias())
const;
103 Matrix9 estimateCovariance(
double T,
size_t N = 1000,
104 const Bias& estimatedBias =
Bias())
const;
107 Matrix6 estimateNoiseCovariance(
size_t N = 1000)
const;
125 double imuSampleTime = 1.0 / 100.0,
130 imuSampleTime,
bias),
132 estimatedBias_(
bias),
133 preintMeasCov_(preintMeasCov) {}
137 double T,
const Bias& estimatedBias =
Bias(),
138 bool corrupted =
false)
const;
142 const Bias& estimatedBias =
Bias())
const;
146 double T,
size_t N = 1000,
const Bias& estimatedBias =
Bias())
const;
const Vector3 & gyroscope() const
Vector3 measuredSpecificForce(double t) const
Simple class to test navigation scenarios.
const Eigen::Matrix< double, 15, 15 > preintMeasCov_
const Scenario & scenario() const
const Vector3 & gravity_n() const
virtual Vector3 omega_b(double t) const =0
angular velocity in body frame
const Vector3 bias(1, 2, 3)
std::shared_ptr< PreintegrationParams > SharedParams
Rot3 rotation(double t) const
void diagonal(const MatrixType &m)
Vector3 actualAngularVelocity(double t) const
std::shared_ptr< PreintegrationCombinedParams > SharedParams
Rot3 is a 3D rotation represented as a rotation matrix if the preprocessor symbol GTSAM_USE_QUATERNIO...
const Vector3 & accelerometer() const
CombinedScenarioRunner(const Scenario &scenario, const SharedParams &p, double imuSampleTime=1.0/100.0, const Bias &bias=Bias(), const Eigen::Matrix< double, 15, 15 > &preintMeasCov=Eigen::Matrix< double, 15, 15 >::Zero())
ConstantTwistScenario scenario(Z_3x1, Vector3(v, 0, 0))
A small structure to hold a non zero as a triplet (i,j,value).
noiseModel::Diagonal::shared_ptr model
const Bias estimatedBias_
ScenarioRunner(const Scenario &scenario, const SharedParams &p, double imuSampleTime=1.0/100.0, const Bias &bias=Bias())
const double & imuSampleTime() const
const Bias estimatedBias_
Vector sample() const
sample from distribution
imuBias::ConstantBias Bias
std::shared_ptr< Diagonal > shared_ptr
static noiseModel::Diagonal::shared_ptr Diagonal(const Matrix &covariance)
Matrix3 transpose() const
Vector3 actualSpecificForce(double t) const
Vector3 acceleration_b(double t) const
imuBias::ConstantBias Bias
sampling from a NoiseModel
const Scenario & scenario_
Jet< T, N > sqrt(const Jet< T, N > &f)
Vector3 measuredAngularVelocity(double t) const
Simple trajectory simulator.
static shared_ptr Covariance(const Matrix &covariance, bool smart=true)
gtsam
Author(s):
autogenerated on Sun Dec 22 2024 04:13:09