Skip to content

Commit

Permalink
Merge branch 'master' into PythonPlot
Browse files Browse the repository at this point in the history
  • Loading branch information
jtravs authored Nov 8, 2024
2 parents acdcd6d + 38ce40b commit 4fcec24
Show file tree
Hide file tree
Showing 31 changed files with 1,294 additions and 467 deletions.
4 changes: 3 additions & 1 deletion .github/workflows/documenter.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,11 @@ jobs:
- uses: julia-actions/setup-julia@latest
with:
version: ^1.7.0-rc1
- name: Install dependencies
- name: Install dependencies and build package
env:
PYTHON: # remove PYTHON env variable to make sure packages are installed
uses: julia-actions/julia-buildpkg@v1
- name: Instantiate documentation pkg
run: julia --project=docs/ -e 'using Pkg; Pkg.develop(PackageSpec(path=pwd())); Pkg.instantiate();'
- name: Build and deploy
env:
Expand Down
8 changes: 5 additions & 3 deletions .github/workflows/run_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,17 +8,19 @@ jobs:
strategy:
fail-fast: false
matrix:
julia-version: ['1.7', '1.8', '1.9']
julia-version: ['1.9', '1']
julia-arch: [x64]
os: [ubuntu-latest, windows-latest, macos-latest]
if: github.event.pull_request.draft == false
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- uses: julia-actions/setup-julia@latest
with:
version: ${{ matrix.julia-version }}
arch: ${{ matrix.julia-arch }}
- name: Install dependencies
- name: Install dependencies and build
env:
PYTHON: # remove PYTHON env variable to make sure packages are installed
uses: julia-actions/julia-buildpkg@v1
- name: Run tests
uses: julia-actions/julia-runtest@v1
33 changes: 24 additions & 9 deletions Project.toml
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
name = "Luna"
uuid = "30eb0fb0-5147-11e9-3356-d75b018717ce"
authors = ["chrisbrahms <[email protected]>"]
version = "0.3.0"
version = "0.5.0"

[deps]
ArgParse = "c7e460c6-2fb9-53a9-8c5b-16f535851c63"
BlackBoxOptim = "a134a8b2-14d6-55f6-9291-3336d3ab0209"
CSV = "336ed68f-0bac-5ca0-87d4-7b16caf5d00b"
Conda = "8f4d0f93-b110-5947-807f-2305c1781a2d"
CoolProp = "e084ae63-2819-5025-826e-f8e611a84251"
Cubature = "667455a9-e2ce-5579-9412-b964f529a492"
DSP = "717857b8-e6f2-59f4-9121-6e50c889abd2"
Expand All @@ -18,6 +19,7 @@ Distributed = "8ba89e20-285c-5b6f-9357-94700520ee1b"
Documenter = "e30172f5-a6a5-5a46-863b-614d45cd2de4"
EllipsisNotation = "da5c29d0-fa7d-589e-88eb-ea29b0a81949"
FFTW = "7a1cc6ca-52ef-59f5-83cd-3a7055c09341"
FileWatching = "7b1f6079-737a-58dc-b8bc-7a2ca5c1b5ee"
FiniteDifferences = "26cc04aa-876d-5657-8c51-4c34ba976000"
GSL = "92c85e6c-cbff-5e0c-80f7-495c94daaecd"
Glob = "c27321d9-0574-5035-807b-f59d2c89b15c"
Expand All @@ -33,7 +35,7 @@ NumericalIntegration = "e7bfaba1-d571-5449-8927-abc22e82249b"
Optim = "429524aa-4258-5aef-a3af-852621145aeb"
Peaks = "18e31ff7-3703-566c-8e60-38913d67486b"
PhysicalConstants = "5ad8b20f-a522-5ce9-bfc9-ddf1d5bda6ab"
Pidfile = "fa939f87-e72e-5be4-a000-7fc836dbe307"
Pkg = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f"
Polynomials = "f27b6e38-b328-58d1-80ce-0feddd5e7a45"
Printf = "de0858da-6303-5e67-8744-51eddeeeb8d7"
ProgressLogging = "33c8b6b6-d38a-422a-b730-caa89a2f386c"
Expand All @@ -43,6 +45,7 @@ QuadGK = "1fd47b50-473d-5c70-9696-f719f8f3bcdc"
Random = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c"
Reexport = "189a3867-3050-52da-a836-e630ba90ab69"
Roots = "f2b01f46-fcfa-551c-844a-d8ac1e96c665"
Scratch = "6c6a2e73-6563-6170-7368-637461726353"
SpecialFunctions = "276daf66-3868-5448-9aa4-cd146d93841b"
StaticArrays = "90137ffa-7385-5640-81b9-e52037218182"
Statistics = "10745b16-79ce-11e8-11f9-7d13ad32a3b2"
Expand All @@ -53,34 +56,46 @@ Unitful = "1986cc42-f94f-5a68-af5c-568840ba703d"
ArgParse = "1"
BlackBoxOptim = "0.6"
CSV = "0.9, 0.10"
CoolProp = "0.1"
Conda = "1"
CoolProp = "0.1, 0.2"
Cubature = "1.5.1"
DSP = "0.7.3"
DataStructures = "0.18.10"
Dates = "1.9"
DelimitedFiles = "1"
Dierckx = "0.5.1"
Documenter = "0.27.5"
Distributed = "1.9"
Documenter = "0.27.5, 1"
EllipsisNotation = "1"
FFTW = "1.3"
FileWatching = "1.9"
FiniteDifferences = "0.11, 0.12"
GSL = "1"
Glob = "1.3"
H5Zblosc = "0.1"
HCubature = "1.5"
HDF5 = "0.15, 0.16"
HDF5 = "0.15, 0.16, 0.17"
Hankel = "0.5.5"
LibGit2 = "1.9"
LinearAlgebra = "1.9"
Logging = "1.9"
Memoize = "0.4.4"
NumericalIntegration = "0.3.3"
Optim = "1.4"
Peaks = "0.3.2, 0.4"
Peaks = "0.3.2, 0.4, 0.5"
PhysicalConstants = "0.2"
Pidfile = "1.2"
Polynomials = "2, 3"
Pkg = "1.9"
Polynomials = "2, 3, 4"
Printf = "1.9"
ProgressLogging = "0.1"
QuadGK = "2.4"
Random = "1.9"
Reexport = "1.2"
Roots = "2"
Scratch = "1"
SpecialFunctions = "0.10.3, 1, 2"
StaticArrays = "1"
Statistics = "1.9"
Test = "1.9"
Unitful = "1"
julia = "1.7"
julia = "1.9"
4 changes: 3 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@
[![DOI](https://zenodo.org/badge/190623784.svg)](https://zenodo.org/badge/latestdoi/190623784)
[![Stable](https://img.shields.io/badge/docs-stable-blue.svg)](https://lupo-lab.com/Luna.jl)

> [!IMPORTANT]
> To stay up-to-date with Luna.jl and learn about bugfixes and new features, subscribe to our [mailing list](https://jiscmail.ac.uk/luna).
Luna.jl is a flexible platform for the simulation of nonlinear optical dynamics—both in waveguides (such as optical fibres) and free-space geometries—using the unidirectional pulse propagation equation (UPPE) and its approximate forms, such as the commonly used generalised nonlinear Schrödinger equation (GNLSE). Some of the key features of Luna:
- A variety of propagation geometries treated in a unified way:
Expand Down Expand Up @@ -34,7 +36,7 @@ There are two ways of using Luna:
For a short introduction on how to use the simple interface, see the [Quickstart](#quickstart) or [GNLSE](#gnlse) sections below. More information, including on the internals of Luna, can be found in the [Documentation](http://lupo-lab.com/Luna.jl).

## Installation
Luna requires Julia v1.7 or later, which can be obtained from [here](https://julialang.org/downloads/). In a Julia terminal, to install Luna simply enter the package manager with `]` and run `add Luna`:
Luna requires Julia v1.9 or later, which can be obtained from [here](https://julialang.org/downloads/). In a Julia terminal, to install Luna simply enter the package manager with `]` and run `add Luna`:

```julia
]
Expand Down
9 changes: 9 additions & 0 deletions deps/build.jl
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# from https://github.com/GeoscienceAustralia/HiQGA.jl/commit/db833bf32840503ee3bd0909b2b92993c239413c#diff-708e1c220f34be9ffbf04c0619b1f1a56388096c1df2b95603950d7adc80feaa
import Pkg, Conda
@info "building!"
Conda.pip_interop(true)
Conda.pip("install", "matplotlib")
Conda.add("matplotlib")
ENV["PYTHON"] = joinpath(Conda.ROOTENV, "bin", "python")
Pkg.build("PyCall")
@info "built PyCall!"
Loading

0 comments on commit 4fcec24

Please sign in to comment.