MATLAB Answers


Error in Quad, suggestions required ?

Tonu 님이 질문을 제출함. 15 Dec 2012
syms E
numer = inline('0.99954.*E + ((0.58058-0.044967.*m).*R.*T');
deno = inline('E + (2.54 + 0.94057.*m).*R.*T');
f1 = quad('numer./deno',80,158);
I basically want to calculate the integral of f1 which is a function of E,
it gives me an error . . Not enough inputs to inline function.
When I substitute the the whole function into quad i.e. substituting the function r and fun_e directly, the code works fine but not this way ?
I want to basically define the function in symbolic way step by step and then use it with quad, to integrate,
Any suggestions would help, Thanks, Tonu

  댓글 수: 0

로그인 to comment.


답변 수: 1

Answer by Matt Fig
on 15 Dec 2012

Don't mix inlines with symbolics this way.
syms E m R T
f1 = int((0.99954.*E + ((0.58058-0.044967.*m).*R.*T))./(E + (2.54 + 0.94057.*m).*R.*T),E,80,158);

  댓글 수: 1

on 17 Dec 2012
@ Matt Thank you for the prompt reply sir, Actually in my case , the m R t are the inputs and what I wanted to learn was that, Instead of syms E m R T f1 = int((0.99954.*E + ((0.58058-0.044967.*m).*R.*T))./(E + (2.54 + 0.94057.*m).*R.*T),E,80,158); I wanted to code
f1 = int(numer/deno, 80,158) ;
the equation I want to solve is a complicated one (eventually, not shown here) and wanted to simplify the same by coding it as asked in my Original question . Any suggestions would be helpful. thanks,

로그인 to comment.

Translated by