Skip to main content

Numerical continuation using just the function

Project description

FContin

Made with Love in India

Solve F(u, λ) = 0 over λ with just F!

This repository contains natural and pseudo-arclength/Euler-Newton continuation library using JAX for automatic differentiation, numdifftools for numerical differentiation using real or complex derivatives, and Pacopy

This enables automatic/numerical differentiation to obtain the Jacobian and derivative with respect to the parameter. GPU/TPU support is packaged as part of JAX.

How to install and execute?

Just run

pip install fcontin

The following program illustrates a basic example

from fcontin.ContProblem import ContProblem

###
# Define problem
###

def f(u, lmbda):
    """The evaluation of the function to be solved
    """
    return [
        u[0] + u[1] - (lmbda + 1.), u[0] - u[1] - lmbda
    ]

###
# Solving and Plotting
###

# Initial guess
u0 = [0., 0.]
# Initial parameter value
lmbda0 = 1.0

# Creating the problem
# Natural or Euler-Newton for cont_method
# Forward, Reverse, Numerical, Complex for jac_mode
problem = ContProblem(f, u0, lmbda0,
cont_method='Euler-Newton', 
jac_mode='Complex',
max_steps=10,
newton_tol=1e-10,
callback=callback
)

problem.solve()

Whom to contact?

Please direct your queries to gpavanb1 for any questions.

Project details


Release history Release notifications | RSS feed

This version

0.1

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

FContin-0.1.tar.gz (3.3 kB view hashes)

Uploaded Source

Built Distribution

FContin-0.1-py3-none-any.whl (4.3 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page