
This repository contains the code accompanying the book “Introduction to Nonsmooth Analysis and Optimization” (MOS_SIAM Series on Optimization, SIAM, 2026; 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. (The exact version of Julia these codes were written for and tested with is recorded at the top of Manifest.toml.) 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 the key to leave it. Then, to make the functions that perform the experiments in the book available, run 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.
| selected citations These citations are derived from selected sources. This is an alternative to the "Influence" indicator, which also reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically). | 0 | |
| popularity This indicator reflects the "current" impact/attention (the "hype") of an article in the research community at large, based on the underlying citation network. | Average | |
| influence This indicator reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically). | Average | |
| impulse This indicator reflects the initial momentum of an article directly after its publication, based on the underlying citation network. | Average |
