Avaliando frações simbólicas sem atribuir valores às variáveis simbólicas no MATLAB?

0

Estou trabalhando com algumas matrizes e tentando simplificar os resultados envolvendo termos simbólicos. O comando subs() não funcionará porque não há valores atribuídos às variáveis. Mas é desagradável tentar trabalhar com isso:

(5592405333333333*u11)/4194304 - (5592405333333333*u9)/4194304

(1977213867171907*2^(1/2)*u5)/4194304 + (1977213867171907*2^(1/2)*u6)/4194304 - (1977213867171907*2^(1/2)*u9)/4194304 - (1977213867171907*2^(1/2)*u10)/4194304

Os valores de u são simbólicos. Avaliar o primeiro termo, (5592405333333333*u11)/4194304 , é muito próximo de 1,333,333,333*u11 com o qual posso trabalhar.

Existe algum comando para fazer a divisão de modo que fique um pouco limpo?

    
por Asinine 10.06.2017 / 01:28

1 resposta

1

O comando que você está procurando é vpa . Um exemplo:

syms u11;
expr =(5592405333333333*u11)/4194304;  %fraction
res1 = vpa(expr);    %it'll evaluate expr to at least 32 significant digits
res2 = vpa(expr,5);  %it'll evaluate expr to at least 5 significant digits
res3 = vpa(expr,9);  %it'll evaluate expr to at least 9 significant digits

Saída:

res1 =
1333333333.3333332538604736328125*u11

res2 =
1.3333e9*u11

res3 = 
1333333333.0*u11
    
por 11.06.2017 / 21:28