"Unable to convert expression containing remaining symbolic function calls into double array. Argument must be expression that evaluates to number"

5 vues (au cours des 30 derniers jours)
I've got a symbolic integral that I want to substitue some numbers into. Matlab will evaluate the integral for 0 < t < 4.8, but above that I get the error message.
"Unable to convert expression containing remaining symbolic function calls into double array. Argument must be expression that evaluates to number"
int(sin((7015723114167667*tau)/17592186044416 - 2630896167812875/1099511627776)*((555609333788003*tau^2*sin((pi*tau^2)/5))/7036874417766400 - (pi*cos((pi*tau^2)/5))/50), tau, 0, t)
Thanks in advance!

Réponse acceptée

darova
darova le 29 Mar 2021
It's too complicated for symbolic toolbox
Use numerical approach
  2 commentaires
Cameron Sprent
Cameron Sprent le 29 Mar 2021
Is there a way around this? I need to calculate this function for 0 < t < 200, likely in steps of t = 0.0001. Won't calling an integral each time be very slow?
darova
darova le 30 Mar 2021
im afraid there is no other way. Use numerical integration

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Loops and Conditional Statements dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by