Skip to main content

Usage Guide

Overview

This section describes how to use the Nonlinear Least-Squares Optimization program.

Run from Command Line

To execute the program via the command line, use the following syntax:

lsq_AxSI \
  --x0 1.0 2.0 \
  --bounds -10.0 10.0 -5.0 5.0 \
  --ftol 1e-6 \
  --xtol 1e-6 \
  --diff_step 1e-3 \
  --max_nfev 10000

Required Arguments:

  • --x0: Initial guess for the parameters (space-separated values).
  • --bounds: Parameter bounds as pairs (lower and upper limits for each parameter).

Optional Arguments:

  • --ftol (default: 1e-6): Tolerance for changes in the cost function value.
  • --xtol (default: 1e-6): Tolerance for updates to the parameter values.
  • --diff_step (default: 1e-3): Step size for finite-difference approximation.
  • --max_nfev (default: 10000): Maximum number of function evaluations allowed.

Function Import and Customization

The program also supports direct import of the nonlinear_least_squares function into Python scripts. This allows advanced customization, such as using custom residual (reg_func) and Jacobian (jac) functions.

Example:

from nonlinear_least_squares import nonlinear_least_squares

def custom_reg_func(x, *args):
    # Define custom residual computation
    pass

def custom_jacobian(x, *args):
    # Define custom Jacobian computation
    pass

result = nonlinear_least_squares(
    reg_func=custom_reg_func,
    x0=[1.0, 2.0],
    bounds=([-10.0, -5.0], [10.0, 5.0]),
    jac=custom_jacobian
)

print(result)

Output Description

The program provides a summary of the optimization process, including:

Key Results:

  • Success: Indicates whether the optimization converged successfully.
  • Optimized Parameters: The final parameter values at the solution.
  • Residuals: Values of the residual function at the solution.
  • Jacobian: Jacobian matrix at the solution.
  • Exit Flag: Integer code indicating the reason for termination.

Detailed Metadata:

The output includes a dictionary with the following fields:

  • algorithm: Solver used for optimization.
  • firstorderopt: Measure of first-order optimality.
  • iterations: Number of iterations performed.
  • funcCount: Number of function evaluations.
  • cgiterations: Number of conjugate gradient iterations.
  • Message: Descriptive message about the termination reason.

Python version

This project is currently using Python 3.12

Installation

It is recommended to use virtualenv to create a clean python environment.

To install lsqAxSI, use pip:

pip install lsqAxSI

Execution

The main script shipped with this project is lsq_AxSI.py, see its options by running:

lsq_AxSI.py -h

Metadata

Release files for lsqAxSI 0.0.6

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

Source distribution (sdist)

Source distribution for lsqAxSI 0.0.6
File Size Uploaded Provenance
lsqaxsi-0.0.6.tar.gz 20.1 kB Without provenance Details

Release files / lsqaxsi-0.0.6.tar.gz

Download URL lsqaxsi-0.0.6.tar.gz
Size 20.1 kB
Tags Source
SHA-256 checksum
How to use checksums
4cd151b223873cbc50db77e89450ef2c95a269f6aa0ab0c9b190043bfc73a194
BLAKE2b-256 checksum
How to use checksums
e6f62d5067a740c3f2ac83b546bae66ea25abe0e635b560e673216f57dfb1e30
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.1

Security for lsqAxSI 0.0.6

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

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