Contents
When you do using DynamicalSystems
in your Julia session, the module re-exports and brings into scope all submodules (Julia packages) that compose DynamicalSystems.jl. These are listed in this page. Of course, you could be using these packages directly instead of adding DynamicalSystems
. However, doing using DynamicalSystems
provides the environment all these packages were designed to work together in, and so we recommend to simply install DynamicalSystems
and use that.
Exported submodules
The submodules that compose DynamicalSystems.jl are the following packages, which are re-exported by DynamicalSystems
:
Core
For observed/measured data
For dynamical system instances
At the very end of this page, a full list of exported names is presented.
Core
#
StateSpaceSets.StateSpaceSets
— Module
StateSpaceSets.jl
A Julia package that provides functionality for state space sets. These are collections of points of fixed, and known by type, size (called dimension). It is used in several projects in the JuliaDynamics organization, such as DynamicalSystems.jl or CausalityTools.jl.
The main export of StateSpaceSets
is the concrete type StateSpaceSet
. The package also provides functionality for distances, neighbor searches, sampling, and normalization.
To install it you may run import Pkg; Pkg.add("StateSpaceSets")
, however, there is no real reason to install this package directly as it is re-exported by all downstream packages that use it.
previously StateSpaceSets.jl was part of DelayEmbeddings.jl
#
DynamicalSystemsBase.DynamicalSystemsBase
— Module
DynamicalSystemsBase.jl
A Julia package that defines the DynamicalSystem
interface and many concrete implementations used in the DynamicalSystems.jl ecosystem.
To install it, run import Pkg; Pkg.add("DynamicalSystemsBase")
. Typically, you do not want to use DynamicalSystemsBase
directly, as downstream analysis packages re-export it.
All further information is provided in the documentation, which you can either find online or build locally by running the docs/make.jl
file.
For observed/measured data
#
ComplexityMeasures.ComplexityMeasures
— Module
ComplexityMeasures.jl
A Julia package that provides estimators for probabilities, entropies, and other complexity measures, in the context of nonlinear dynamics, nonlinear timeseries analysis, and complex systems. It can be used as a standalone package, or as part of other projects in the JuliaDynamics organization, such as DynamicalSystems.jl or CausalityTools.jl.
To install it, run import Pkg; Pkg.add("ComplexityMeasures")
.
All further information is provided in the documentation, which you can either find online or build locally by running the docs/make.jl
file.
Previously, this package was called Entropies.jl.
#
RecurrenceAnalysis.RecurrenceAnalysis
— Module
RecurrenceAnalysis.jl
A Julia module that offers tools for computing Recurrence Plots and exploring them within the framework of Recurrence Quantification Analysis and Recurrence Network Analysis. It can be used as a standalone package, or as part of DynamicalSystems.jl.
To install it, run import Pkg; Pkg.add("RecurrenceAnalysis")
.
All further information is provided in the documentation, which you can either find online or build locally by running the docs/make.jl
file.
#
DelayEmbeddings.DelayEmbeddings
— Module
DelayEmbeddings.jl
A Julia package that provides a generic interface for performing delay coordinate embeddings, as well as cutting edge algorithms for creating optimal embeddings given some data. It can be used as a standalone package, or as part of DynamicalSystems.jl.
To install it, run import Pkg; Pkg.add("DelayEmbeddings")
.
All further information is provided in the documentation, which you can either find online or build locally by running the docs/make.jl
file.
#
FractalDimensions.FractalDimensions
— Module
FractalDimensions.jl
A Julia package that estimates various definitions of fractal dimension from data. It can be used as a standalone package, or as part of DynamicalSystems.jl.
To install it, run import Pkg; Pkg.add("FractalDimensions")
.
All further information is provided in the documentation, which you can either find online or build locally by running the docs/make.jl
file.
Previously, this package was part of ChaosTools.jl.
Publication
FractalDimensions.jl is used in a review article comparing various estimators for fractal dimensions. The paper is likely a relevant read if you are interested in the package. And if you use the package, please cite the paper.
@article{FractalDimensions.jl, doi = {10.1063/5.0160394}, url = {https://doi.org/10.1063/5.0160394}, year = {2023}, month = oct, publisher = {{AIP} Publishing}, volume = {33}, number = {10}, author = {George Datseris and Inga Kottlarz and Anton P. Braun and Ulrich Parlitz}, title = {Estimating fractal dimensions: A comparative review and open source implementations}, journal = {Chaos: An Interdisciplinary Journal of Nonlinear Science} }
#
TimeseriesSurrogates.TimeseriesSurrogates
— Module
TimeseriesSurrogates.jl
A Julia package for generating timeseries surrogates. TimeseriesSurrogates.jl is the fastest and most featureful open source code for generating timeseries surrogates. It can be used as a standalone package, or as part of DynamicalSystems.jl.
To install it, run import Pkg; Pkg.add("TimeseriesSurrogates")
.
All further information is provided in the documentation, which you can either find online or build locally by running the docs/make.jl
file.
Citing
Please use the following BiBTeX entry, or DOI, to cite TimeseriesSurrogates.jl:
BiBTeX:
@article{TimeseriesSurrogates.jl,
doi = {10.21105/joss.04414},
url = {https://doi.org/10.21105/joss.04414},
year = {2022},
publisher = {The Open Journal},
volume = {7},
number = {77},
pages = {4414},
author = {Kristian Agasøster Haaga and George Datseris},
title = {TimeseriesSurrogates.jl: a Julia package for generating surrogate data},
journal = {Journal of Open Source Software}
}
For dynamical system instances
#
PredefinedDynamicalSystems.PredefinedDynamicalSystems
— Module
PredefinedDynamicalSystems.jl
Module which contains pre-defined dynamical systems that can be used by the DynamicalSystems.jl library. To install it, run import Pkg; Pkg.add("PredefinedDynamicalSystems")
.
Predefined systems exist as functions that return a DynamicalSystem
instance. They are accessed like:
ds = PredefinedDynamicalSystems.lorenz(u0; ρ = 32.0)
The alias Systems
is also exported as a deprecation.
This module is provided purely as a convenience. It does not have any actual tests, and it is not guaranteed to be stable in future versions. It is not recommended to use this module for anything else besides on-the-spot demonstrative examples.
For some systems, a Jacobian function is also defined. The naming convention for the Jacobian function is \$(name)_jacob
. So, for the above example we have J = Systems.lorenz_jacob
.
All available systems are provided in the documentation, which you can either find online or build locally by running the docs/make.jl
file.
#
ChaosTools.ChaosTools
— Module
ChaosTools.jl
A Julia module that offers various tools for analysing nonlinear dynamics and chaotic behaviour. It can be used as a standalone package, or as part of DynamicalSystems.jl.
To install it, run import Pkg; Pkg.add("ChaosTools")
.
All further information is provided in the documentation, which you can either find online or build locally by running the docs/make.jl
file.
ChaosTools.jl is the jack-of-all-trades package of the DynamicalSystems.jl library: methods that are not extensive enough to be a standalone package are added here. You should see the full DynamicalSystems.jl library for other packages that may contain functionality you are looking for but did not find in ChaosTools.jl.
#
Attractors.Attractors
— Module
Attractors.jl
A Julia module for
-
finding attractors of arbitrary dynamical systems
-
finding their basins of attraction or the state space fractions of the basins
-
"continuing" the attractors and their basins over a parameter range
-
finding the basin boundaries and analyzing their fractal properties
-
tipping points related functionality for systems with known dynamic rule
-
and more!
It can be used as a standalone package, or as part of DynamicalSystems.jl.
To install it, run import Pkg; Pkg.add("Attractors")
.
All further information is provided in the documentation, which you can either find online or build locally by running the docs/make.jl
file.
Previously, Attractors.jl was part of ChaosTools.jl
All exported names
This section lists all exported names of the DynamicalSystems.jl library. We do not list their documentation in any way here. This list is only meant as a quantitative listing of features, as well as perhaps helping searching via the search bar. To actually learn how to use all these exported names you need to use above-linked documentation of the respective submodules!
The total exported names are:
using DynamicalSystems
all_exported_names = names(DynamicalSystems)
length(all_exported_names)
378
And they are:
using DisplayAs
DisplayAs.unlimited(all_exported_names)
378-element Array{Symbol, 1}:
:..
Symbol("@windowed")
:AAFT
:AR1
:AbstractBinning
:AbstractDataset
:AbstractEmbedding
:AbstractRecurrenceType
:AbstractStateSpaceSet
:AlizadehArghami
:AllSlopesDistribution
:ApproximateEntropy
:ArbitrarySteppable
:AttractorMapper
:Attractors
:AttractorsBasinsContinuation
:AttractorsViaFeaturizing
:AttractorsViaProximity
:AttractorsViaRecurrences
:AutoRegressive
:BlockShuffle
:BruteForce
:Centroid
:ChaosTools
:Chebyshev
:CircShift
:Cityblock
:ClusteringConfig
:ComplexityEstimator
:ComplexityMeasure
:ComplexityMeasures
:Composite
:ContinuousDynamicalSystem
:ContinuousTimeDynamicalSystem
:CoreDynamicalSystem
:Correa
:CountOccurrences
:CoupledODEs
:CramerVonMises
:CrossRecurrenceMatrix
:CrossingAccurateInterpolation
:CrossingLinearIntersection
:Curado
:CycleShuffle
:Dataset
:DelayEmbedding
:DelayEmbeddings
:DeterministicIteratedMap
:DiffEntropyEst
:DifferentialEntropyEstimator
:DiscEntropyEst
:DiscreteDynamicalSystem
:DiscreteEntropyEstimator
:DiscreteTimeDynamicalSystem
:Dispersion
:Diversity
:DynamicalSystem
:DynamicalSystems
:DynamicalSystemsBase
:Ebrahimi
:Encoding
:EntropyDefinition
:Euclidean
:FAN
:FT
:FirstElement
:FixedRectangularBinning
:FractalDimensions
:Gao
:GaussianCDFEncoding
:GeneralizedEmbedding
:GlobalRecurrenceRate
:Goria
:GroupAcrossParameter
:GroupAcrossParameterContinuation
:GroupViaClustering
:GroupViaHistogram
:GroupViaNearestFeature
:GroupingConfig
:HRectangle
:HSphere
:HSphereSurface
:Hausdorff
:IAAFT
:IntervalBox
:InvariantMeasure
:IrregularLombScargle
:JointRecurrenceMatrix
:KDTree
:Kaniadakis
:KozachenkoLeonenko
:Kraskov
:LargestLinearRegion
:LinearRegression
:LocalRecurrenceRate
:Lord
:MLEntropy
:MissingDispersionPatterns
:NLNS
:NSAR2
:NaiveKernel
:NeighborNumber
:OrdinalPatternEncoding
:ParallelDynamicalSystem
:PartialRandomization
:PartialRandomizationAAFT
:PlaneCrossing
:PoincareMap
:PowerSpectrum
:PredefinedDynamicalSystems
:Probabilities
:ProbabilitiesEstimator
:ProjectedDynamicalSystem
:PseudoPeriodic
:PseudoPeriodicTwin
:RAFM
:RandomCascade
:RandomFourier
:RandomShuffle
:RectangularBinEncoding
:RectangularBinning
:RecurrenceAnalysis
:RecurrenceMatrix
:RecurrenceThreshold
:RecurrenceThresholdScaled
:RecurrencesFindAndMatch
:RecurrencesSeededContinuation
:Regular
:Renyi
:ReverseDispersion
:SMatrix
:SNLST
:SVector
:SampleEntropy
:Shannon
:ShuffleDimensions
:SpatialDispersion
:SpatialSymbolicPermutation
:StateSpaceSet
:StateSpaceSets
:StatisticalComplexity
:StretchedExponential
:StrictlyMinimumDistance
:StroboscopicMap
:Surrogate
:SurrogateTest
:SymbolicAmplitudeAwarePermutation
:SymbolicPermutation
:SymbolicWeightedPermutation
:Systems
:TAAFT
:TFTD
:TFTDAAFT
:TFTDIAAFT
:TFTDRandomFourier
:TFTS
:TangentDynamicalSystem
:TimeScaleMODWT
:TimeseriesSurrogates
:TransferOperator
:Tsallis
:ValueHistogram
:Vasicek
:VisitationFrequency
:WLS
:WaveletOverlap
:WithinRange
:Zhu
:ZhuSingh
:aggregate_attractor_fractions
:allprobabilities
:autocor
:automatic_Δt_basins
:basin_entropy
:basins_fractal_dimension
:basins_fractal_test
:basins_fractions
:basins_of_attraction
:beta_statistic
:boxassisted_correlation_dim
:boxed_correlationsum
:broomhead_king
:colored_noise
:columns
:complexity
:complexity_normalized
:continuation
:convert_logunit
:coordinates
:correlationsum
:current_crossing_time
:current_deviations
:current_parameters
:current_state
:current_states
:current_time
:dataset_distance
:datasets_sets_distances
:decode
:delay_afnn
:delay_f1nn
:delay_fnn
:delay_ifnn
:determinism
:dimension
:distancematrix
:divergence
:dl_average
:dl_entropy
:dl_max
:dyca
:dynamic_rule
:embed
:encode
:entropy
:entropy_approx
:entropy_complexity
:entropy_complexity_curves
:entropy_dispersion
:entropy_maximum
:entropy_normalized
:entropy_permutation
:entropy_sample
:entropy_wavelet
:estimate_boxsizes
:estimate_delay
:estimate_gpd_parameters
:estimate_period
:estimate_r0_buenoorovio
:estimate_r0_theiler
:exit_entry_times
:expansionentropy
:exponential_decay_fit
:extract_attractors
:extract_features
:extremal_index_sueveges
:extremevaltheory_dim
:extremevaltheory_dims
:extremevaltheory_dims_persistences
:extremevaltheory_gpdfit_pvalues
:extremevaltheory_local_dim_persistence
:findlocalextrema
:findlocalminima
:first_return_times
:fixedmass_correlation_dim
:fixedmass_correlationsum
:fixedpoints
:gali
:garcia_almeida_embedding
:genembed
:genentropy
:generalized_dim
:get_deviations
:get_state
:grassberger_proccacia_dim
:grayscale
:group_features
:higuchi_dim
:initial_parameters
:initial_state
:initial_states
:initial_time
:integrator
:interval
:invariantmeasure
:isdeterministic
:isdiscretetime
:isinplace
:kaplanyorke_dim
:lambdamatrix
:lambdaperms
:laminarity
:linear_region
:linear_regions
:linreg
:local_growth_rates
:lyapunov
:lyapunov_from_data
:lyapunovspectrum
:match_attractor_ids!
:match_basins_ids!
:maxima
:mdop_embedding
:mdop_maximum_delay
:mean_return_times
:meanrecurrencetime
:minima
:minimum_pairwise_distance
:minmaxima
:missing_outcomes
:molteno_boxing
:molteno_dim
:n_statistic
:nmprt
:noiseradius
:optimal_separated_de
:optimal_traditional_de
:orbitdiagram
:orthonormal
:outcome_space
:outcomes
:parallel_integrator
:pecora
:pecuzal_embedding
:periodicorbits
:permentropy
:poincaremap
:poincaresos
:pointwise_correlationsums
:pointwise_dimensions
:predictability
:prismdim_theiler
:probabilities
:probabilities!
:probabilities_and_outcomes
:produce_orbitdiagram
:projected_integrator
:pvalue
:random_cycles
:randomwalk
:reconstruct
:recurrence_threshold
:recurrenceplot
:recurrencerate
:recurrencestructures
:recursivecopy
:reinit!
:rematch!
:replacement_map
:rna
:rqa
:rt_average
:rt_entropy
:rt_max
:selfmutualinfo
:set_deviations!
:set_distance
:set_parameter!
:set_parameters!
:set_period!
:set_state!
:setsofsets_distance
:setsofsets_distances
:skeletonize
:slopefit
:sorteddistances
:standardize
:statespace_sampler
:step!
:stochastic_indicator
:successful_step
:surrogate
:surrogenerator
:surroplot_path
:swap_dict_keys!
:takens_best_estimate_dim
:tangent_integrator
:testchaos01
:textrecurrenceplot
:tipping_probabilities
:total_outcomes
:trajectory
:transfermatrix
:transit_return_times
:transitivity
:trappingtime
:trend
:uncertainty_exponent
:unique_keys
:uzal_cost
:uzal_cost_local
:vl_average
:vl_entropy
:vl_max
:windowed
:yin
:×
:τrange