Interpretar funções matemáticas e fazer gráficos

Olá,

há pouco mais de um ano eu estava tentando fazer um programa pra resolver operações do tipo:

f(x) = x^3 + sin(2*x) + e^-5 + log154

Coloquei essa para abringir diversas operações matemáticas :stuck_out_tongue:

Tentava fazer um programa assim pra matéria de Cálculo Número pra faculdade. Como eu não consegui na época(e ninguém me respondeu no guj ¬¬ hehe) eu desisti de tratar esse tipo de programa(por não ter conhecimentos para isso…) e resolvi trabalhar mais na interface gráfica usando swing.

Enfim, agora eu queria saber o seguinte. Tem algum tipo melhor de tratar uma equação, como essa, do que utilizar ifs e switchs aos montes no programa? Porque apesar de ser uma maneira simples de tratar do problema daria muito trabalho e também, que o código ficaria extenso e tedioso de se ler.

E outra dúvida.

Como posso fazer o gráfico de uma função como essa? Eu já pensei em uma maneira, mas acho que consumiria muita memória. Apresentar diversos objetos Line2D(ou qualquer outro do tipo… não sei se esse seria o melhor também) com um intervalo muito pequeno entre um ponto e outro, de tal forma que o gráfico ficaria contínuo e correto.(eu utilizei esse tipo de raciocínio pra fazer um programa pra calcular integrais e derivadas :stuck_out_tongue:

Aí acho que utilizando esse programa de integrais e derivadas com o de gráficas e interpretador de funções seria algo muito bom pra trabalhar com algumas funções.

Olá

http://www.math-solutions.org/curvefitter.html

http://forum.java.sun.com/thread.jspa?threadID=506162&messageID=2406896

http://www.codeproject.com/Purgatory/Equation_Analyzer_Parser_.asp

Local onde achei isto em 10 segundos

[]s
Luca

Hmmm beleza… vou dar uma olhada nesses códigos então… quando eu procurei não achei nada ‘aproveitável’, sobre gráficos só gráficos de pizza, ou gráficos estatísticos, não de funções específicas… e de funções não encontrei nenhum código fonte, só alguns programas sem código fonte mesmo… mas valeu o/

Procure também por uma API chamada JavaView, se não me engano.

esse JavaView parece ser interessante, dps dou uma olhada melhor nele. valeu o/