Autor Tópico: scilab (Resolvido)  (Lida 2480 vezes)

Offline hvduarte

  • Usuário Ubuntu
  • *
  • Mensagens: 4
    • Ver perfil
scilab (Resolvido)
« Online: 20 de Janeiro de 2007, 17:29 »
Instalei o scilab 4.0 pelo synapitc no Ubuntu 6.10. A versão instalada não está funcionando corretamente, parece haver alguma falha que não é de configuração, a operação de multiplicação da matriz por sua inversa não gera uma matriz diagonal, na realidade aparecem zeros na diagonal(!!!) o que é um erro sério. Tive o mesmo problema no kurumin 6.1 com esta versão do scilab. Não vi no forum do ubuntu problema semelhante, não há nada reportado nos bugs do Debian. Sugestões?


hvduarte

20/01/07
« Última modificação: 23 de Janeiro de 2007, 16:42 por hvduarte »

Offline bruno.vitorino

  • Usuário Ubuntu
  • *
  • Mensagens: 76
    • Ver perfil
Re: scilab
« Resposta #1 Online: 20 de Janeiro de 2007, 18:22 »
Bem eu testei aqui e deu o resultado correcto.

Código: [Selecionar]
A = [2 2;0 3]
B = [1/2 -1/3; 0 1/3] //Matriz inversa calculada por mim

A * B = [1 0;0 1]

persistência, persistência,persistência...



Offline hvduarte

  • Usuário Ubuntu
  • *
  • Mensagens: 4
    • Ver perfil
Re: scilab
« Resposta #2 Online: 20 de Janeiro de 2007, 19:18 »
Caro bruno.vitorino obrigado pelo interesse, mas
tente com uma matriz um pouco maior e cheia,  a seguinte matriz:

-->a=[10 2 3;11 12 13;21 22 23]
 a  =
 
    10.    2.     3.   
    11.    12.    13. 
    21.    22.    23. 
 
-->det(a)              // determinante muito diferente de zero   sem problemas numéricos para o programa                   
 ans  =
 
  - 90. 
 
-->inv(a)*a                                   
 ans  =
 
    0.         - 1.388D-16  - 1.249D-16 
  - 3.997D-15    0.         - 1.332D-15 
    4.663D-15    1.332D-15    1.         
 
-->diag(inv(a)*a)
 ans  =
 
    0. 
    0. 
    1. 
 
!!!!

Offline bruno.vitorino

  • Usuário Ubuntu
  • *
  • Mensagens: 76
    • Ver perfil
Re: scilab
« Resposta #3 Online: 20 de Janeiro de 2007, 19:31 »
Tem razão, é realmente estranho!  ???
Também já experimentei com o invr() e dá o mesmo... se for uma matriz quadrada 2x2 funciona na perfeição.
persistência, persistência,persistência...



Offline hvduarte

  • Usuário Ubuntu
  • *
  • Mensagens: 4
    • Ver perfil
Re: scilab
« Resposta #4 Online: 21 de Janeiro de 2007, 13:00 »
Enviei um notificação de bug para o mantenedor Debian deste pacote, recebi a informação de que a versão 4.0-2 está com um erro, mas este problema já foi corrigido nas versões mais recentes, a versão Debian atual é a 4.0-12.

saudações

hvduarte

Offline hvduarte

  • Usuário Ubuntu
  • *
  • Mensagens: 4
    • Ver perfil
Re: scilab
« Resposta #5 Online: 23 de Janeiro de 2007, 16:37 »
Postei o problema e recebi a seguinte mensagem da equipe de desenvolvedores do Scilab:

The problem probabily comes from a gfortran bug with makes some Scilab
display wrong (the numbers like 0.999999999 are displayed as zeros
instead of one)

You can verify if it is only a display problem with

-->diag(inv(a)*a)-1


If it is not the display bug please let us know.

This bug as been fixed in the Scilab-4.1 version

Serge Steer
Scilab Team


Como solução, copiei (baixei) do repositório Debian os programas scilab_4.0-12_all.deb, scilab_bin__4.0-12_i386.deb e scilab_doc_4.0-12_all.deb e instalei-os com o Gdebi, que vem no Ubuntu. Funcionou sem problemas uma vez que os outros programas necessários já haviam sido instalados anteriormente (durante a instalação da versão versão anterior 4.0-2, que estava dando problemas). Testei algumas funções e alguns dos programas que uso sem problemas de compatibilidade ou conflitos.

hvduarte