← Back to project catalogue
GP-MA-1LZ5K7NMathematicsOpen for request

Julia nonlinear dynamics laboratory

A Julia simulation laboratory for analysing equilibria, stability, bifurcations, limit cycles, and chaos in selected nonlinear dynamical systems.

  • Julia 1.12.7
  • DifferentialEquations.jl
  • BifurcationKit.jl
  • Makie.jl

Software compatibility

Julia 1.12.7 only

The project includes pinned Project.toml and Manifest.toml environments for Julia 1.12.7. MATLAB, Mathematica, and Python versions are not included.

Project definition

Problem statement

Nonlinear systems can change stability, create periodic orbits, and become chaotic as parameters vary, while numerical tolerances and transient length can alter the apparent result.

Project objectives

  • Implement selected one-dimensional maps and continuous nonlinear ODE systems.
  • Find equilibria and classify local stability from Jacobian eigenvalues.
  • Continue equilibria or cycles and identify selected bifurcations.
  • Estimate Lyapunov exponents and construct Poincare or return maps.
  • Verify numerical conclusions through tolerance, step, initial-condition, and benchmark checks.

System design

System modules

01

System library

Defines equations, parameters, domains, Jacobians, events, and prepared reference systems.

02

Trajectory solver

Runs adaptive ODE or map iterations with transient, tolerance, and event controls.

03

Stability analyser

Finds equilibria and evaluates Jacobians, eigenvalues, nullclines, and local behaviour.

04

Continuation module

Tracks branches and selected folds, Hopf points, period changes, and stability.

05

Chaos analysis

Calculates Poincare sections, return maps, spectra, and Lyapunov estimates.

Methodology

System workflow

  1. 01
    Verify system

    A reference model is checked against known equilibria and stable behaviour.

  2. 02
    Sweep parameter

    Trajectories and stability change across a bounded parameter interval.

  3. 03
    Continue branches

    Numerical continuation identifies branch and stability transitions.

  4. 04
    Analyse chaos

    Long-run trajectories, sections, and Lyapunov estimates are calculated.

  5. 05
    Check numerics

    Tolerances, transients, seeds, and initial conditions are varied.

Demonstration scenario

A nonlinear oscillator is continued through a stability change and periodic branch, then a chaotic reference system is analysed through trajectories, a Poincare section, and Lyapunov estimates. Numerical sensitivity is shown alongside each claim.

Engineering

Technical architecture

Environment
Julia 1.12.7 with a pinned Project.toml and Manifest.toml.
Solvers
DifferentialEquations.jl for trajectories and BifurcationKit.jl for selected continuation.
Analysis
Julia functions for equilibria, Jacobians, stability, sections, Lyapunov estimates, and convergence.
Visualisation
Makie.jl figures generated from saved experiment configurations.

Testing

Evaluation

Evaluation measures

  • Equilibrium and eigenvalue agreement with analytical cases
  • Trajectory convergence under tolerance changes
  • Bifurcation-location agreement with reference systems
  • Lyapunov and Poincare result repeatability
  • Sensitivity to initial conditions and transient removal
  • Runtime across parameter sweeps and continuation resolution

System boundaries

  • Requires the pinned Julia 1.12.7 environment.
  • No MATLAB, Mathematica, or Python version is included.
  • Numerical evidence is reported with tolerance and convergence checks and is not treated as a proof.
  • The project covers selected low-dimensional systems rather than a general symbolic dynamics package.

Included

  1. 01Pinned Julia project and package environment
  2. 02ODE, equilibrium, continuation, and chaos modules
  3. 03Phase, bifurcation, Poincare, and Lyapunov visualisations
  4. 04Prepared systems, numerical experiments, and results
  5. 05Complete source code in a private GitHub repository
  6. 06Complete project documentation with synopsis, abstract, methodology, mathematical derivations, numerical results, screenshots, and conclusion
  7. 07Setup and usage guide

Project record

No buyer information is collected on this page.

Permanent project ID
GP-MA-1LZ5K7N
Catalogued
22 Aug 2026
Completed
Pending
Verified
Pending
Demonstration
Added when ready

Handover

After purchase

  1. 01
    Payment is confirmed

    The project is marked unavailable and cannot be purchased again.

  2. 02
    Repository access is granted

    The buyer's submitted GitHub account receives access to the private repository.

  3. 03
    The purchase record is delivered

    The certification sheet is prepared from the reviewed buyer details and sent privately by email.