A computational environment for interval matrices in c
This presentation is the property of its rightful owner.
Sponsored Links
1 / 20

A Computational Environment for Interval Matrices in C++ PowerPoint PPT Presentation


  • 45 Views
  • Uploaded on
  • Presentation posted in: General

A Computational Environment for Interval Matrices in C++. Michael Nooner and Chenyi Hu. Computer Science Department, University of Central Arkansas. Introduction. Motivations What is IntBLAS Why use IntBLAS The package. Motivations. Profil, IntLAB, IntLib Easy to use Cross platform.

Download Presentation

A Computational Environment for Interval Matrices in C++

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


A computational environment for interval matrices in c

A Computational Environment for Interval Matrices in C++

Michael Nooner and Chenyi Hu

Computer Science Department, University of Central Arkansas


Introduction

Introduction

  • Motivations

  • What is IntBLAS

  • Why use IntBLAS

  • The package


Motivations

Motivations

  • Profil, IntLAB, IntLib

  • Easy to use

  • Cross platform


What is intblas

What Is IntBLAS

  • Interval BLAS Standard

    • Basic Interval Arithmetic Subroutines (IntLib)

    • Interval Basic Linear Algebra Subroutines

      • Level 1, 2, 3

  • C++ Implementation

    • Three core objects

    • Three auxiliary objects


Why use intblas

Why use IntBLAS

  • Easy to install

    • GCC

    • Visual Studio

    • More on the way …

  • Cross Platform

  • Open Source (LGPL)

  • Well Documented

  • Easy to use


The package

The Package

  • One header

    • IntBLAS.h

  • Two Static Libraries

    • intblas.lib (optimized)

    • intblas_d.lib (debug)

  • One Namespace

    • intblas

  • One Initialization Function

    • INIT_INTERVAL()


The package1

The Package

#include<IntBLAS.h>

using namespace intblas;

int main()

{

INIT_INTERVAL();

Interval a( .1 );

IntervalMatrix m( 2, 2 ), result;

m[0][0] = 2.3; m[0][1] = 3.3;

m[1][0] = 5.5; m[1][1] = a;

result = m + a;


Core classes

Core Classes


Core classes1

Core Classes

  • Three Main Classes

    • Interval

    • IntervalVector

    • IntervalMatrix


Interval class

Interval Class

  • IntLib

  • Double precision

  • Rounding

    • Round Up: add one ε

    • Round Down: subtract one ε

    • 16th – 18th significant digit


Interval class1

Interval Class

  • Arithmetic operators

  • Standard Functions

    • ipow, isin, isqrt, ilog, iatan …

  • Additional interval set routines

    • isEmpty(), midpoint(), width(), …


Intervalvector and intervalmatrix

IntervalVector and IntervalMatrix

  • BLAS Standard

  • Method/Function pairs

    double norm( NORMTYPE n );

    friend double norm( IntervalMatrix& a, NORMTYPE n );

  • Arithmetic operators

  • Assignment operator

    • Intermediate values


Auxiliary classes

Auxiliary Classes


Error handling

Error Handling

  • INTERVAL_EXCEPTION

    int code

    char msg[200]

  • Global Error Object

    • 32 predefined codes

      setError( int code, const char* msg = NULL )

      getLastError()


Intervalvectort intervalmatrixt

IntervalVectorT & IntervalMatrixT

  • Enables strong dimension checking

  • Typdef common matrices and vectorstypedef IntervalMatrixT<2,2> IMatrix2x2;. . .IMatrix2x2 m, n, o;


A computational environment for interval matrices in c

Demo


Problem

Problem

  • Solve the following set of linear equations:


Problem1

Problem

  • By paper the solution is


Conclusion

Conclusion

  • Interval Basic Linear Algebra Subprograms

  • Easy to install

  • Cross Platform

  • Open Source

  • Well Documented

  • Easy to use

  • Download it from http://www.geocities.com/mike_nooner


Future work

Future Work

  • Banded and Sparse Matrices

  • Arbitrary precision arithmetic

  • Fuzzy Logic Module

  • Interval Based LU Decomposition

  • Other cool stuff!


  • Login