Matlab Programming(Need help with the last couple of details)

  • Thread starter ialan731
  • Start date
  • #1
25
0

Homework Statement



Okay, so I need some help with this Matlab program. I never learned Matlab, so I'm trying to do it as best as I can. The question is: Calculate the 2nd and 3rd degree Taylor polynomials for the function f(x)=ln(1+x) about the point a=0 Plot these polynomials and the function on the interval -1<x<3

Homework Equations



N/A

The Attempt at a Solution


This is what I have so far. I thought it was right, but Matlab said "Not enough input arguments." What does that mean, and I how do I fix it?
>> figure(1);clf;
x=[-1:.01:3];
y=log*(1+x);
P2= x-(x^2/2)!;
P3= x-(x^2/2)+(x^3/3)!;
figure(1);clf;
plot(x,y,x,P2,'--',x,P3,'-.')
legend('log*(1+x)','P_2','P_3')
xlabel('x')
title('The function and the 2^{nd} and ^{rd} order Taylor Polynomials')
figure(2);clf
plot(x,abs(y-P2),x,abs(y-P3),'--')
legend('log*(1+x)-P_2|','log*(1+x)-P_3|')
xlabel('x')
title('Errors in the two Taylor Polynomials')

Thanks in advance!:)
 

Answers and Replies

  • #2
lewando
Homework Helper
Gold Member
1,349
135
Problem is with this line: "y=log*(1+x)". Can you spot it?
 
  • #3
25
0
Honestly, no. There was an issue with that line before because I had put ln instead of log so I changed it. Is there supposed to be a . Before/after the x? I noticed that there's a lot of times where that's necessary.
 
  • #4
lewando
Homework Helper
Gold Member
1,349
135
log (natural log) is a function so it should be: "y=log(1+x)"
 
  • #5
25
0
It's that simple? Wow I was looking for at least an hour, and I couldn't find the issue. Thank you so much!
 
  • #6
lewando
Homework Helper
Gold Member
1,349
135
I think you are also going to have a problem with the factorial operator. Missed that one--try the factorial() function. [edit-- you have some significant semantic issues with the factorial operation--does not make much sense]
 
Last edited:
  • #7
25
0
What do you mean?
 
  • #8
lewando
Homework Helper
Gold Member
1,349
135
Well for example, the line:
P2= x-(x^2/2)!;

You are trying to take the factorial of an array of non-integers (not defined) using "!" (not a MATLAB operator). You might need to step back and detail what you are trying to do.
 
  • #9
25
0
Oh so I would have to write out the factorial instead of simply putting !.
 
  • #10
lewando
Homework Helper
Gold Member
1,349
135
I don't understand what the factorial symbol is doing in the expressions for P2 and P3. I don't think they belong there at all.
 
  • #11
25
0
But doesn't the equation call for a factorial? How else would it be done?
 
  • #12
lewando
Homework Helper
Gold Member
1,349
135
Not sure what equation you are using. From page 4 of this link is the general form http://www.math.ufl.edu/~vatter/teaching/m8w10/m8l01.pdf [Broken]

f = ln(1+x)
f' = 1/(1+x)
f'' = -1/(1+x)2
f''' = 2/(1+x)3

[edit-- also familiarize yourself with the distinction between the ".^" and the "^" operators]
 
Last edited by a moderator:
  • #13
25
0
Not sure what equation you are using. From page 4 of this link is the general form http://www.math.ufl.edu/~vatter/teaching/m8w10/m8l01.pdf [Broken]

f = ln(1+x)
f' = 1/(1+x)
f'' = -1/(1+x)2
f''' = 2/(1+x)3

[edit-- also familiarize yourself with the distinction between the ".^" and the "^" operators]
I have to use the Taylor series so it's not just the derivative. And okay, will do.
 
Last edited by a moderator:

Related Threads on Matlab Programming(Need help with the last couple of details)

Replies
2
Views
7K
Replies
2
Views
1K
Replies
1
Views
4K
Replies
6
Views
2K
Replies
7
Views
1K
Replies
3
Views
877
Replies
1
Views
1K
  • Last Post
Replies
2
Views
8K
Top