chrono::vehicle::NonlinearSpringForce Class Reference

Description

Utility class for specifying a nonlinear translational spring force with pre-tension.

F = P - mapK(length - rest_length)

#include <ChSubsysDefs.h>

Inheritance diagram for chrono::vehicle::NonlinearSpringForce:
Collaboration diagram for chrono::vehicle::NonlinearSpringForce:

Public Member Functions

 NonlinearSpringForce (double preload=0)
 
 NonlinearSpringForce (const std::vector< std::pair< double, double > > &dataK, double preload=0)
 
void add_pointK (double x, double y)
 
virtual double evaluate (double time, double rest_length, double length, double vel, const ChLinkTSDA &link) override
 Calculate and return the general spring-damper force at the specified configuration.
 
virtual rapidjson::Value exportJSON (rapidjson::Document::AllocatorType &allocator) override
 Optional reporting function to generate a JSON value with functor information.
 
- Public Member Functions inherited from chrono::vehicle::SpringForce
 SpringForce (double preload)
 
void enable_stops (double min_length, double max_length)
 
void set_stops (const std::vector< std::pair< double, double > > &data_bump, const std::vector< std::pair< double, double > > &data_rebound)
 
void set_stops (double bump_coefficient, double rebound_coefficient)
 
double evaluate_stops (double length)
 

Additional Inherited Members

- Protected Attributes inherited from chrono::vehicle::SpringForce
double m_P
 pre-tension
 
bool m_stops
 
double m_min_length
 
double m_max_length
 
ChFunctionInterp m_bump
 
ChFunctionInterp m_rebound
 

Member Function Documentation

◆ evaluate()

double chrono::vehicle::NonlinearSpringForce::evaluate ( double time,
double rest_length,
double length,
double vel,
const ChLinkTSDA & link )
overridevirtual

Calculate and return the general spring-damper force at the specified configuration.

If the link has internal ODE states, the current states can be accessed with link->GetStates().

Parameters
timecurrent time
rest_lengthundeformed length
lengthcurrent length
velcurrent velocity (positive when extending)
linkassociated TSDA link

Implements chrono::ChLinkTSDA::ForceFunctor.

◆ exportJSON()

rapidjson::Value chrono::vehicle::NonlinearSpringForce::exportJSON ( rapidjson::Document::AllocatorType & allocator)
overridevirtual

Optional reporting function to generate a JSON value with functor information.

Reimplemented from chrono::vehicle::SpringForce.


The documentation for this class was generated from the following files:
  • C:/M/B/src/chrono-9.0.1/src/chrono_vehicle/ChSubsysDefs.h
  • C:/M/B/src/chrono-9.0.1/src/chrono_vehicle/ChSubsysDefs.cpp