Resolver numericamente uma equação

3

Relacionado a uma pergunta da pilha Math troca, existe uma maneira de resolver uma equação numericamente usando o excel?

Eu sei que existe um solver no Excel, mas requer interação do usuário sempre que algo muda. Eu quero ser capaz de alterar alguns parâmetros e ter toda a planilha de atualização em si, assim como com fórmulas normais.

A equação que precisa ser resolvida é a seguinte, com todos os parâmetros, exceto a conhecidos:

a*cosh(x/a) - a - s = 0
    
por relatively_random 27.07.2017 / 11:22

1 resposta

3

Esta não é uma solução geral, apenas uma demonstração de técnica.

Em A1 insira um pequeno valor positivo, digamos 0,001 . Em B1 insira um valor positivo REALMENTE grande, digamos 1.E + 15 . Em S1 insira um valor s , diga 7 . Em X1 digite um valor x , diga 10 .

Em C1 , introduza =(A1+B1)/2 e, em D1 , introduza a sua fórmula:

=C1*COSH(X$1/C1)-C1-S$1

ClaramenteC1éamédiadeumlimiteinferioresuperior.PorquetambéméREALMENTEgrande,afórmulaproduzumvaloraproximadamente-s

EmA2,insira=IF(D1>0,C1,A1)eemB2insira=IF(D1<0,C1,B1)ecopieC1eD1parabaixo.

Nalinha2,cortamosointervalopelametade.Emseguida,copieA2atéD2parabaixo:

Emcadalinha,ointervaloémetadedointervalonalinhaanterior.Pertodofundo:

Portanto, a solução numérica é aproximadamente 8.097966368

NOTAS:

  • Isso irá convergir muito mais rápido usando o Newton-Raphson.
  • Uma função definida pelo usuário do VBA permitirá que a convergência termine automaticamente.
  • Para alguns valores de s e x , o valor inicial em A1 pode precisar ser modificado.
por 27.07.2017 / 17:06