| Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) | 
![]()  | 
	
| 		
			
			 | 
		#1 | 
| 
			
			 初级会员 
			
			
			
			注册日期: 2007-08-14 
				
				
				
					帖子: 7
				 
				
				
				声望力: 0 ![]()  | 
	
	
	
		
		
			
			 
			
			最近在做程序时,遇到一个问题,如下: 
		
		
		
		
		
		
		
	solve('sqrt(x^5+x^4+x^3+x^2+x-a^2-b^2)=c+d*x','x') 其中x待求,a,b,c,d均是已知(执行上述命令时,abcd都是带变量名) 命令不能执行,提示如下: error:(in allvalues/rootseq) cannot with symbolic coefficients. 意思就是:在所有的参量/根中,不能有符号向量。 但是,当我把上述命令里的abcd全部带入实际值时,却是能够执行的。 计算出来的结果是符号向量,10×1的数组,8个复数,2个实数。 现在的问题是,怎么能够解这个方程呢?因为程序所需,我不可能每一步都带入实际值,必须以变量表示。 求高手帮忙!!  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 		
			
			 | 
		#2 | 
| 
			
			 初级会员 
			
			
			
			注册日期: 2008-03-20 
				
				年龄: 39 
				
					帖子: 10
				 
				
				
				声望力: 18 ![]()  | 
	
	
	
		
		
			
			 
			
			那你这个问题解决了没有.?? 
		
		
		
		
		
		
		
	我也遇到了这个问题. 如果你解决了告诉我一下.  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 		
			
			 | 
		#3 | 
| 
			
			 普通会员 
			
			
			
			注册日期: 2008-03-25 
				
				年龄: 41 
				
					帖子: 58
				 
				
				
				声望力: 19 ![]()  | 
	
	
	
		
		
			
			 
			
			我想到的方法@@ 應該還有更好的寫法:smile:  
		
		
		
		
		
		
		
	qq=rand(4); %先假設qq是 %[a1 b1 c1 d1; % a2 b2 c2 d2; % ........ % an bn cn dn] 係數矩陣 syms a b c d x %定義符號變數 f=@(a,b,c,d,x) sqrt(x^5+x^4+x^3+x^2+x-a^2-b^2)-c-d*x; %把函數表現 for i=1:size(qq,1) %每組係數帶入 作迴圈 eval(solve(f(qq(i,1),qq(i,2),qq(i,3),qq(i,4),x),x)) %求解 end :smile:  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 		
			
			 | 
		#4 | 
| 
			
			 初级会员 
			
			
			
			注册日期: 2008-03-20 
				
				年龄: 39 
				
					帖子: 10
				 
				
				
				声望力: 18 ![]()  | 
	
	
	
		
		
			
			 | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 |