Operator Discretization Library (ODL)

Operator Discretization Library (ODL) is a Python library for fast prototyping focusing on (but not restricted to) inverse problems. The main intent of ODL is to enable mathematicians and applied scientists to use different numerical methods on real-world problems without having to implement all necessary parts from the bottom up. This is reached by an Operator structure which encapsulates all application-specific parts, and a high-level formulation of solvers which usually expect an operator, data and additional parameters. The main advantages of this approach are that Different problems can be solved with the same method (e.g. TV regularization) by simply switching operator and data. The same problem can be solved with different methods by simply calling into different solvers. Solvers and application-specific code need to be written only once, in one place, and can be tested individually. Adding new applications or solution methods becomes a much easier task. Features ====== Efficient and well-tested data containers based on NumPy (default) or CUDA (optional) Objects to represent mathematical notions like vector spaces and operators, including properties as expected from mathematics (inner product, norm, operator composition, ...) Convenience functionality for operators like arithmetic, composition, operator matrices etc., which satisfy the known mathematical rules. Out-of-the-box support for frequently used operators like scaling, partial derivative, gradient, Fourier transform etc. A versatile and pluggable library of optimization routines for smooth and non-smooth problems, such as CGLS, BFGS, Chambolle-Pock and Douglas-Rachford splitting. Support for tomographic imaging with a unified geometry representation and bindings to external libraries for efficient computation of projections and back-projections. Standardized tests to validate implementations against expected behavior of the corresponding mathematical object, e.g. if a user-defined norm satisfies norm(x + y) <= norm(x) + norm(y) for a number of input vectors x and y.  

Tags
Data and Resources
To access the resources you must log in

This item has no data

Identity

Description: The Identity category includes attributes that support the identification of the resource.

Field Value
PID https://www.doi.org/10.5281/zenodo.249479
URL https://figshare.com/articles/Operator_Discretization_Library_ODL_/11468415
URL http://dx.doi.org/10.5281/zenodo.249479
URL https://zenodo.org/record/249479
Access Modality

Description: The Access Modality category includes attributes that report the modality of exploitation of the resource.

Field Value
Access Right Open Source
Attribution

Description: Authorships and contributors

Field Value
Author Adler, Jonas
Author Kohr, Holger
Author Öktem, Ozan
Contributor Axel Ringh
Contributor Chong Chen
Contributor Julian Moosmann
Contributor niinimaki
Contributor hilding79
Contributor Willem Jan Palenstijn
Publishing

Description: Attributes about the publishing venue (e.g. journal) and deposit location (e.g. repository)

Field Value
Collected From Zenodo; figshare; Datacite
Hosted By Zenodo; figshare
Publication Date 2017-01-17
Publisher Figshare
Additional Info
Field Value
Language UNKNOWN
Resource Type Software
system:type software
Management Info
Field Value
Source https://science-innovation-policy.openaire.eu/search/software?softwareId=dedup_wf_001::50ef82d64f686ab00de127817e2aa7bb
Author jsonws_user
Last Updated 17 December 2020, 21:45 (CET)
Created 17 December 2020, 21:45 (CET)