Published July 29, 2024 | Version 0.1.0
Software Open

Code accompanying "Introduction to Nonsmooth Analysis and Optimization"

  • 1. ROR icon University of Graz
  • 2. ROR icon National Polytechnic School
  • 3. ROR icon University of Helsinki

Description

This record contains the code accompanying the book “Introduction to Nonsmooth Analysis and Optimization” (arXiv: 2001.00216) by C. Clason ⟨c.clason@uni-graz.at⟩ and T. Valkonen ⟨tuomov@iki.fi⟩.

How to run

To get started, install Julia following the instructions for your operating system on julialang.org.

Activating the Julia project

If you use the command line to launch Julia, go in to the directory where this README.md is located, and run

$ julia --project=.

Alternatively, if you start Julia from some alternative development or graphical environment (e.g., Jupyter), within Julia, you can switch to this project by typing

julia> ]
pkg> activate PATH_TO_THE_DIRECTORY_WITH_THIS_README

Your Julia development environment may also provide more direct ways to start the project; please see its respective documentation.

First time: downloading dependencies

The first (and only the first time) when you use these codes, you must download the package dependencies. You can do this by entering the package manager to instantiate the project:

julia> ] # Skip this step if you already entered the package manager above
pkg> instantiate

Running the experiments

If you entered the the Julia package manager above press backspace to leave it. Then, to make the functions that perform the experiments in the book available, run, within Julia

julia> using NonsmoothCode

This may require a while to precompile the code, especially the first time you do this.

Afterwards, to see a listing of the functions coresponding to different experiments in the book, type

julia> ?NonsmoothCode

For example, to run the sparse fitting experiments, you can use

julia> example_sparse()

For more help on Julia itself, see the official documentation.

Files

NonsmoothCode-0.1.0.zip

Files (59.3 kB)

Name Size Download all
md5:0544cf39140aa8ca286bc82c01a7d49e
59.3 kB Preview Download

Additional details

Related works

Is documented by
Book: arXiv:2001.00216 (arXiv)

Funding

Research Council of Finland
Decoupling preconditioners for non-smooth optimisation and inverse problems 314701

Software

Programming language
Julia