Hi Thorsten,
The characteristic of a shock can be specified as:
Note that the underlying implementation of the shock uses a ChTSDA force element which accepts an arbitrary functor (derived from ChLinkTSDA::ForceFunctor). If you write your own C++ class for a concrete wheeled vehicle suspension, you can use that to implement any nonlinear function of both length and length rate of change (by overriding the evaluate() method). For suspension shocks (and springs) specified in a JSON file, I provide the 3 approximations above (based on scalar or tabular data and using piecewise linear interpolation where needed).
ChSubsysDefs.h and ChSubsysDefs.cpp contains several predefined derived functors of type ChLinkTSDA::ForceFunctor (mostly used when reading a suspension specification from a JSON file, but which could also be used in a user-provided suspension implementation file).
See HMMWV_DoubleWishbone.cpp or FEDA_DoubleWishbone.cpp for examples of user-provided shock functor.
See the JSON files for the HMMWV suspensions for examples of #1 and #3 above.
--Radu
--
You received this message because you are subscribed to the Google Groups "ProjectChrono" group.
To unsubscribe from this group and stop receiving emails from it, send an email to
projectchron...@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/projectchrono/ef5a2efa-a1c8-44fb-acae-e75b257fe893n%40googlegroups.com.