Drake
linear_system.cc File Reference
#include "drake/systems/primitives/linear_system.h"
#include <string>
#include <utility>
#include <Eigen/Dense>
#include <Eigen/LU>
#include <fmt/format.h>
#include "drake/common/autodiff.h"
#include "drake/common/default_scalars.h"
#include "drake/common/eigen_types.h"
#include "drake/common/symbolic.h"
#include "drake/common/symbolic_decompose.h"
#include "drake/math/autodiff.h"
#include "drake/math/autodiff_gradient.h"
#include "drake/systems/framework/event.h"
#include "drake/systems/framework/event_collection.h"
Include dependency graph for linear_system.cc:

Namespaces

 drake
 
 drake::systems
 

Functions

std::unique_ptr< LinearSystem< double > > Linearize (const System< double > &system, const Context< double > &context, variant< InputPortSelection, InputPortIndex > input_port_index=InputPortSelection::kUseFirstInputIfItExists, variant< OutputPortSelection, OutputPortIndex > output_port_index=OutputPortSelection::kUseFirstOutputIfItExists, double equilibrium_check_tolerance=1e-6)
 Takes the first-order Taylor expansion of a System around a nominal operating point (defined by the Context). More...
 
std::unique_ptr< AffineSystem< double > > FirstOrderTaylorApproximation (const System< double > &system, const Context< double > &context, variant< InputPortSelection, InputPortIndex > input_port_index=InputPortSelection::kUseFirstInputIfItExists, variant< OutputPortSelection, OutputPortIndex > output_port_index=OutputPortSelection::kUseFirstOutputIfItExists)
 A first-order Taylor series approximation to a system in the neighborhood of an arbitrary point. More...
 
Eigen::MatrixXd ControllabilityMatrix (const LinearSystem< double > &sys)
 Returns the controllability matrix: R = [B, AB, ..., A^{n-1}B]. More...
 
bool IsControllable (const LinearSystem< double > &sys, optional< double > threshold)
 Returns true iff the controllability matrix is full row rank. More...
 
Eigen::MatrixXd ObservabilityMatrix (const LinearSystem< double > &sys)
 Returns the observability matrix: O = [ C; CA; ...; CA^{n-1} ]. More...
 
bool IsObservable (const LinearSystem< double > &sys, optional< double > threshold)
 Returns true iff the observability matrix is full column rank. More...