Skip to content

yevgenryeznik/PyInterval

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PyInterval (Legacy 2016)

⚠️ Note: This repository is an archived portfolio project developed in 2016. It is preserved here to demonstrate algorithm design and low-level numerical handling. It is not maintained for modern Python versions.

Overview

PyInterval is a Python library for Interval Arithmetic, designed to handle numerical uncertainty by treating numbers as bounds $[a,b]$ rather than single floating-point values.

The package was developed as an exercise on solving problems in global optimization and uncertainty quantification.

Technical Highlights

Despite its age, the core logic demonstrates several advanced concepts relevant to quantitative development:

Directed Rounding: Uses ctypes to interface with the C standard math library (libm), manually controlling hardware rounding modes (Up/Down) to ensure strict containment of results.

Operator Overloading: Implements custom arithmetic behaviors for Interval and Box classes.

Automatic Differentiation: Includes a forward-mode AD implementation for calculating exact derivatives.

Usage Note

This code was written for an older Python environment.

Rounding: The hardware rounding controls are specific to macOS (darwin).

Division: Uses legacy __div__ operator overloading.

About

Python routine for doing interval analysis

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages