Skip to main content

GCMMA-MMA-Python

This repository contains the Python code of the Method of Moving Asymptotes (Svanberg, 1987), originally developed and written in MATLAB by Krister Svanberg. The original MATLAB code was taken from http://www.smoptit.se/ under the GNU General Public License.

If you opt to use this code, Krister Svanberg would appreciate it if you could send him an email sharing your application and intentions (the email address can be found on his website). When work is published, the authors must cite Krister Svanberg's academic work. The references can be found below.

An example application of the code in topology optimization can be found here.

Installation and usage

The mmapy package is available on PyPi. To install it, use the following command:

pip install mmapy

After installation, you can import the package in your Python script with:

import mmapy

Cite

This repository is linked to Zenodo. To ensure accurate citation of this project and facilitate traceability in case of bugs or issues, please refer to the specific version used, including the DOI from Zenodo. You can find the corresponding DOI on the Zenodo page. Additionally, cite the original work by Krister Svanberg. The relevant references are provided below.

References

  • Svanberg, K. (1987). The Method of Moving Asymptotes – A new method for structural optimization. International Journal for Numerical Methods in Engineering 24, 359-373. doi:10.1002/nme.1620240207
  • Svanberg, K. (n.d.). MMA and GCMMA – two methods for nonlinear optimization. Retrieved August 3, 2017 from
    https://people.kth.se/~krille/mmagcmma.pdf

License

Original work written in MATLAB: Copyright (c) 2006-2009 Krister Svanberg
Derived Python implementation: Copyright (c) 2020-2024 Arjen Deetman

GCMMA-MMA-Python is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License (file LICENSE) along with this file. If not, see http://www.gnu.org/licenses/.

Metadata

Release files for mmapy 0.3.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mmapy 0.3.1
File Size Uploaded
mmapy-0.3.1.tar.gz 23.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for mmapy 0.3.1
File Interpreter ABI Platform
mmapy-0.3.1-py3-none-any.whl Python 3 none any Details

Total release size: 45.9 kB

Release files / mmapy-0.3.1.tar.gz

Download URL mmapy-0.3.1.tar.gz
Size 23.6 kB
Tags Source
SHA-256 checksum
How to use checksums
185a7c395d6dff741e1283dca07ed417bd0cfc59975fd02ba22d8a14d3c5306a
BLAKE2b-256 checksum
How to use checksums
9e0d6092211453cfffa302e271b774f5d69a182c9ccd38b75a6c9ba9b23e9fcb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.9.22

Release files / mmapy-0.3.1-py3-none-any.whl

Download URL mmapy-0.3.1-py3-none-any.whl
Size 22.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
44703a59e06d8c5fbc64913812f1e2df22b43dd1a5a2fe29588c625c17d49d46
BLAKE2b-256 checksum
How to use checksums
eba7949b8fad0a1e76002748ed2b50dfd87f5d6f0f97a204f957df534c3dd954
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.9.22

Release history Release notifications | RSS feed

This release

0.3.1 This release

2 release files

0.3.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page