/emat30008

Scientific Computing Coursework

Primary LanguageJulia

About

Software suite of various numerical ODE and PDE solution methods, written in Julia for the Engineering Mathematics Scientific Computing module.

Features

Solves systems of ODEs in any number of dimensions: predprey

Plot Phase portraits: circle

Plot Phase portraits in 3d: 3d-phase-portrait

Perform numerical shooting and find limit cycles: predprey-phase-portrait

Find bifurcations using numerical continuation: predprey-continuation

Track parameters in ODE systems using the pseudo-arclength method: pseudo-arclength

Analyse the effects of the diffusion PDE using finite difference: fd

Installation

Using the latest version of Julia prompt, run "include("requirements.jl")", which will install the following dependencies:

  • ExportAll
  • ForwardDiff
  • LinearAlgebra
  • NLsolve
  • PlotlyJS
  • ProgressMeter
  • Test

Then, run SciCompToolkit.jl to install the module.

Usage

After installation, use the module by calling "using .SciCompToolkit" in your Julia file. Note: This does not work in IJulia notebooks.

Simple Example

using .SciCompToolkit

function ode(u,t)
    u1, u2 = u
    du1dt = u2.^2 - u1.^2
    du2dt = -u1
    return [du1dt du2dt]
end

plot_ode(ode, [1 1], 0:0.1:5)