Skip to content

dolfinx_optim is a convex optimization add-on package to the FEniCSx finite-element library. It provides a simple Domain-Specific Language through FEniCSx dolfinx Python interface for solving convex optimization problems.

License

Notifications You must be signed in to change notification settings

bleyerj/dolfinx_optim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

dolfinx_optim

dolfinx_optim is a convex optimization add-on package to the FEniCSx finite-element library. It provides a simple Domain-Specific Language through FEniCSx dolfinx Python interface for solving convex optimization problems. In particular, it relies on the Mosek mathematical programming library. Mosek provides a state-of-the art interior-point solver for linear programming (LP), convex quadratic programming (QP), second-order conic programming (SOCP) and semi-definite programming (SDP).

Prerequisites

dolfinx_optim requires:

pip install -f https://download.mosek.com/stable/wheel/index.html Mosek

Mosek is a commercial software so users need a valid Mosek license. Free unlimited licenses are available for education and research purposes, see the Academic License section.

Installation and usage

Simply clone the dolfinx_optim public repository

https://github.com/bleyerj/dolfinx_optim

and install the package by typing

pip install dolfinx_optim/ --user

Features

Current version supports variational problem formulations resulting in Linear Programs, Second-Order Cone Programs, Semi-Definite Programs and Power or Exponential cone programs.

License

All this work is licensed under the Creative Commons Attribution-ShareAlike 4.0 International License license.

Citing

Papers related to this project can be cited as:

@article{bleyer2020automating,
  title={Automating the formulation and resolution of convex variational problems: applications from image processing to computational mechanics},
  author={Bleyer, Jeremy},
  journal={ACM Transactions on Mathematical Software (TOMS)},
  volume={46},
  number={3},
  pages={1--33},
  year={2020},
  publisher={ACM New York, NY, USA}
}
@article{bleyer2022applications,
  title={Applications of conic programming in non-smooth mechanics},
  author={Bleyer, Jeremy},
  journal={Journal of Optimization Theory and Applications},
  pages={1--33},
  year={2022},
  publisher={Springer}
}

About the author

Jeremy Bleyer is a researcher in Solid and Structural Mechanics at Laboratoire Navier, a joint research (UMR 8205) of Ecole Nationale des Ponts et Chaussées, Université Gustave Eiffel and CNRS.

{fas}at [email protected]

{fab}linkedin jeremy-bleyer

ORCID logo 0000-0001-8212-9921

About

dolfinx_optim is a convex optimization add-on package to the FEniCSx finite-element library. It provides a simple Domain-Specific Language through FEniCSx dolfinx Python interface for solving convex optimization problems.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages