Módulo Python para Matemática Intervalar
DOI:
https://doi.org/10.5540/tema.2007.08.01.0073Abstract
Este trabalho apresenta o módulo PyInterval para Matemática Intervalar, implementado na linguagem Python e desenvolvido como software livre. Neste módulo foram disponibilizadas funcionalidades básicas, como, por exemplo, operações aritméticas com intervalos e matrizes de intervalos, funções intervalares (potência, exponencial, trigonométricas etc.), ponto médio, diâmetro, distância etc., além de alguns métodos para resolução de sistemas de equações lineares intervalares. Além de considerar o alto custo dos software proprietários (como o Matlab R, por exemplo) que, em geral, dificulta a ampla utilização de ferramentas para Matemática Intervalar, a opção pela linguagem Python baseou-se em sua simplicidade sintática, aliada à facilidade de implementação/extensão e portabilidade, e por ser multiplataforma e de livre distribuição. São apresentados exemplos de utilização e testes comparativos com resultados obtidos utilizando o toolbox IntLab.References
[1] G. Alefeld, J. Herzberger, “Introduction to Interval Computations”, Academic Press, New York, 1983.
T. Beelitz, B. Lang, C.H. Bischof, Efficient Task Scheduling in the Parallel Result-Verifying Solution of Nonlinear Systems, Reliable Computing, 12, No. 2 (2006), 141–151.
A.M. Dias, G.P. Dimuro, “Matemática Intervalar com Aplicações no Maple”, NAPI/UCPel, Pelotas, 2000. (disponível em http://gmc.ucpel.tche.br/mat-int/)
G.P. Dimuro, “Domínios Intervalares da Matemática Computacional”, PPGC/UFRGS, Porto Alegre, 1991.
G.P. Dimuro, A.C.R. Costa, L.V. Gonçalves, A. H¨ubner, L.V. Barboza, M.A. Campos, V. Kreinovich, Interval-valued Hidden Markov Models for recognizing personality traits in social exchanges in open multiagent systems, in “Proc. 12th GAMM-IMACS Intl. Symp. Scientific Computing, Computer Arithmetic and Validated Numerics”, pp. 148–159, Univ. Duisburg-Essen, 2006.
P.S. Grigoletti, “Uma Ferramenta Computacional Intervalar para a Análise Confiável de Circuitos Elétricos”, ESIN/UCPel, Pelotas, 2004.
P.S. Grigoletti, G.P. Dimuro, L.V. Barboza, R.H.S. Reiser, Análise intervalar de circuitos elétricos, em “Seleta do XXVIII CNMAC” (C.F. Bracciali, V.L.R. Lopes, A.J. Silva Neto, A. Sri Ranga, H.M. Yang, eds.), TEMA - Tendências em Matemática Aplicada e Computacional, Vol. 7, No. 2, pp. 287–296, SBMAC, 2006.
E.R. Hansen, On solving systems of equations using interval arithmetic, Mathematics of Computation, 22, No. 102 (1968), 374–384.
E.R. Hansen, Bounding the solution of interval linear equations, SIAM Journal on Numeric Analysis, 29, No. 5 (1992), 1493–1503.
E.R. Hansen, G.W. Walster, Solving overdetermined systems of interval linear equations, Reliable Computing, 12, No. 3 (2006), 239–243.
R.B. Keafort, V. Kreinovich (eds.), “Applications of Interval Computations”, Kluwer, Boston, 1996.
R. Klatte, U. Kulisch, C. Lawo, M. Rauch, A. Wietho, “C-XSC – A C++ class library for extended scientific computing”, Springer, Heidelberg, 1993.
U. Kulisch, W.L. Miranker (eds.), “A New Approach to Scientific Computation”, Academic Press, New York, 1983.
U. Kulisch, Advanced arithmetic for the digital computer, design of arithmetic units, Electronic Notes in Theoretical Computer Science, 24 (1999), 63.
R.E. Moore, “Methods and Applications of Interval Analysis”, SIAM, Philadelphia, 1979.
A. Neumaier, “Interval Methods for Systems of Equations”, Cambridge University Press, Cambridge, 1990.
S.M. Rump, IntLab - Interval Laboratory, in “Developments in Reliable Computing” (T. Csendes, ed.), Kluwer, Dordrecht, 1999.
G. Van Rossum, “Python tutorial: release 2.4.3”, Python Software Foundation, 2006. (disponível em http://www.python.org/doc/current/tut/)
Sun Microsystems, “Sun Forte Developer 7: C++ Interval Arithmetic Programming Reference”, Santa Clara, 2002. (disponível em http://docs.sun.com/)
Downloads
Published
How to Cite
Issue
Section
License
Authors who publish in this journal agree to the following terms:
Authors retain copyright and grant the journal the right of first publication, with the work simultaneously licensed under the Creative Commons Attribution License that allows the sharing of the work with acknowledgment of authorship and initial publication in this journal.
Authors are authorized to assume additional contracts separately, for non-exclusive distribution of the version of the work published in this journal (eg, publish in an institutional repository or as a book chapter), with acknowledgment of authorship and initial publication in this journal.
Authors are allowed and encouraged to publish and distribute their work online (eg, in institutional repositories or on their personal page) at any point before or during the editorial process, as this can generate productive changes as well as increase impact and the citation of the published work (See The effect of open access).
This is an open access journal which means that all content is freely available without charge to the user or his/her institution. Users are allowed to read, download, copy, distribute, print, search, or link to the full texts of the articles, or use them for any other lawful purpose, without asking prior permission from the publisher or the
author. This is in accordance with the BOAI definition of open access
Intellectual Property
All the contents of this journal, except where otherwise noted, is licensed under a Creative Commons Attribution License under attribution BY.