From 28d24c7fe030bf755455616a430d05c92e61a5a1 Mon Sep 17 00:00:00 2001 From: Twan Koolen Date: Tue, 6 Feb 2018 00:38:38 -0500 Subject: [PATCH] Minor doc fixes. --- README.md | 4 +++- docs/src/index.md | 13 ++++++++----- src/control.jl | 6 +----- src/visualization.jl | 2 +- 4 files changed, 13 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index cb474ca..8bdc4c5 100644 --- a/README.md +++ b/README.md @@ -4,4 +4,6 @@ [![codecov.io](http://codecov.io/github/tkoolen/RigidBodySim.jl/coverage.svg?branch=master)](http://codecov.io/github/tkoolen/RigidBodySim.jl?branch=master) [![Docs (latest)](https://img.shields.io/badge/docs-latest-blue.svg)](https://tkoolen.github.io/RigidBodySim.jl/latest) -***This package is currently under construction.*** +RigidBodySim provides Julia tools for simulation and visualization of systems of interconnected rigid bodies (both passive and controlled), built on top of [RigidBodyDynamics](https://github.com/tkoolen/RigidBodyDynamics.jl), [DifferentialEquations](https://github.com/JuliaDiffEq/DifferentialEquations.jl), and [RigidBodyTreeInspector](https://github.com/rdeits/RigidBodyTreeInspector.jl). + +See the [latest documentation](https://tkoolen.github.io/RigidBodySim.jl/latest) for more information. diff --git a/docs/src/index.md b/docs/src/index.md index 4ca0814..8077c81 100644 --- a/docs/src/index.md +++ b/docs/src/index.md @@ -1,8 +1,9 @@ # RigidBodySim -RigidBodySim provides Julia tools for simulation and visualization of rigid body dynamics. +RigidBodySim provides Julia tools for simulation and visualization of systems of interconnected rigid bodies. RigidBodySim is mainly built on top of the following packages: + * [RigidBodyDynamics](https://github.com/tkoolen/RigidBodyDynamics.jl) for construction of rigid body dynamics mechanisms and evaluation of their dynamics. * [DifferentialEquations](https://github.com/JuliaDiffEq/DifferentialEquations.jl) packages, for numerical integration of the differential equations. * [RigidBodyTreeInspector](https://github.com/rdeits/RigidBodyTreeInspector.jl) for visualization. @@ -15,13 +16,14 @@ RigidBodySim does not attempt to abstract away its dependence on these packages, ## Functionality RigidBodySim currently provides the following key features: + * Convenient creation of [`DiffEqBase.ODEProblem`s](http://docs.juliadiffeq.org/release-4.0/types/ode_types.html) given a [`RigidBodyDynamics.MechanismState`](http://tkoolen.github.io/RigidBodyDynamics.jl/release-0.4/mechanismstate.html#RigidBodyDynamics.MechanismState) and, optionally, a controller. * Integration with [RigidBodyTreeInspector](https://github.com/rdeits/RigidBodyTreeInspector.jl) for visualization, both during simulation and after. The visualizer window can also control (currently, pause or terminate) the simulation. * Easy simulation of a digital controller running at a fixed rate (see [PeriodicController](@ref control)). ## Performance -Performance is currently fair. For example, we have used RigidBodySim to perform a 10-second simulation of the humanoid robot [Atlas (v5)](https://en.wikipedia.org/wiki/Atlas_(robot)) standing on flat ground with a controller running at 100 Hz in 13 seconds with the Tsitouras 5/4 variable-step integrator on a 3GHz machine. +Performance is fairly good. For example, we have used RigidBodySim to perform a 10-second simulation of the humanoid robot [Atlas (v5)](https://en.wikipedia.org/wiki/Atlas_(robot)) standing on flat ground with a controller running at 100 Hz in 13 seconds with the Tsitouras 5/4 variable-step integrator on a 3GHz machine. ## Installation @@ -38,7 +40,7 @@ Download links and more detailed instructions are available on the [Julia](http: To install the latest tagged release of RigidBodySim, simply run ```julia -Pkg.add("RigidBodySim")  +Pkg.add("RigidBodySim") ``` To check out the master branch and work on the bleeding edge (generally, not recommended), additionally run @@ -50,11 +52,12 @@ Pkg.checkout("RigidBodySim") ### First steps To load the package, use the command: -``` + +```julia using RigidBodySim ``` -It is recommended to follow the [quick start guide](@ref quickstart) to get up to speed. +It is recommended to follow the [quick start guide](@ref quickstart) to get up to speed. ## Contents diff --git a/src/control.jl b/src/control.jl index 9a6349a..64088fa 100644 --- a/src/control.jl +++ b/src/control.jl @@ -15,7 +15,7 @@ PeriodicController(τ, Δt, control; initialize = DiffEqBase.INITIALIZE_DEFAULT, ``` where `control` is a controller satisfying the standard RigidBodySim controller signature -(`control(τ, Δt, state)`), Δt is the simulation time interval between calls to the +(`control(τ, Δt, state)`), `Δt` is the simulation time interval between calls to the `control` function, and `τ` is used to call `control`. The `initialize` and `save_positions` keyword arguments are documented in the [`DiscreteCallback`](http://docs.juliadiffeq.org/release-4.0/features/callback_functions.html#DiscreteCallback-1) @@ -31,10 +31,6 @@ this `PeriodicCallback`, as it is automatically created and added to the `ODEProblem` when the `PeriodicController` is passed into the following `DiffEqBase.ODEProblem` constructor overload: -```julia -DiffEqBase.ODEProblem(state::MechanismState, tspan, controller::PeriodicController; callback = nothing) -``` - ``` ODEProblem(state, tspan, controller::PeriodicController; callback) ``` diff --git a/src/visualization.jl b/src/visualization.jl index 3c3d49a..8ca63cd 100644 --- a/src/visualization.jl +++ b/src/visualization.jl @@ -118,7 +118,7 @@ representing the state of the mechanism that was simulated, and will be modified * `max_fps`: the maximum number of frames per second to draw. Default: `60.0`. * `realtime_rate`: can be used to slow down or speed up playback compared to wall time. A `realtime_rate` of `2` will result in playback that is sped up 2x. Default: `1.0`. -* `pause_pollint`: how often to poll for commands coming from the director window when playback is paused. +* `pause_pollint`: how often to poll for commands coming from the director window when playback is paused. Default: $DEFAULT_PAUSE_POLLINT. # Examples