https://github.com/certik/hermes1-dev
https://github.com/certik/hermes1-dev
Last synced: over 1 year ago
JSON representation
- Host: GitHub
- URL: https://github.com/certik/hermes1-dev
- Owner: certik
- License: other
- Created: 2009-03-08T00:50:02.000Z (over 17 years ago)
- Default Branch: master
- Last Pushed: 2009-03-28T02:26:19.000Z (over 17 years ago)
- Last Synced: 2025-02-01T20:13:53.918Z (over 1 year ago)
- Language: Python
- Homepage:
- Size: 137 KB
- Stars: 2
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README
- License: LICENSE
Awesome Lists containing this project
README
Hermes1D
========
This is a 1D FEM code. The goal is to have an adaptive hp-FEM in 1D, that
should be robust enough to solve any ODE (linear or nonlinear) and fast enough
to compete with any other ODE solver out there.
Currently only a nonadaptive FEM is implemented (any order), more below.
License: New BSD License (see the LICENSE file for details)
covers all files in the sympy repository unless stated otherwise.
1. Installation
---------------
Install numpy, scipy and matplotlib, e.g. in Debian/Ubuntu:
$ apt-get install python-numpy python-scipy python-matplotlib
Try that it works:
$ python examples/sin.py
This solves y''+y=0 and plots the solution, which is sin(x).
2. Todo
-------
* write thorough tests for the current functionality and test many different
equations together with checks that the solution is correct (currently only
very few equations are checked and we do not check for the solution)
* implement more general way for the user to input any set of ODEs (linear or
nonlinear)
* implement adaptive hp-FEM refinement
* write the core in C++ and compare with other ODE solvers, do our best to be
the best. :) E.g. in terms of speed, error control, robustness, ...
* check the global Newton's iteration to see if there is a possibility to speed
it up