回复: matlab计算二元二次拟合问题
			 
			 
			
		
		
		
			
			x1=[...];x2=[...];u=[...];%将原x1(第一列),x2(第二列),u(第三列)输入 
x=[x1,x2,x1.^2,x1.*x2]; 
X=[ones(20,1),x]; 
y=u         
b=X\y 
fx=@(b,x1,x2)b(1)+b(2)*x1+b(3)*x2+b(4)*x1.^2+b(5)*x1.*x2;   [x11,x22]=meshgrid(min(x1):range(x1)/60:max(x1),min(x2):range(x2)/60:max(x2)); 
y1=fx(b,x11,x22); 
plot3(x1,x2,y,'o'); 
stem3(x1,x2,y,'filled') 
str=num2str([1:20]'); 
text(x1,x2,y+range(y)/20,str,'fontsize',15) 
hold on 
surf(x11,x22,y1) 
shading interp 
alpha(.75) 
axis tight
		 
		
		
		
		
		
		
		
		
			
				  
				
					
						此帖于 2009-08-27 16:45 被 slgu 编辑。
					
					
				
			
		
		
	 |