首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Matlab中符号变量的替换?

Matlab中符号变量的替换?
EN

Stack Overflow用户
提问于 2018-08-01 06:34:54
回答 1查看 0关注 0票数 0
代码语言:txt
复制
    function A_j = po(j,k)            % Adomian polynomials
       if j >0
         x =  sym('x',[1 j])
         syms p                       % Assinging a symbolic variable for p
         syms x0
         S = x0+ sum(p.^(1:j) .* x) ; % Sum of p*x up to order j
         Q =f(S,k);                   
         A_nc = diff(Q,p,j)/factorial(j);    
         A_j = subs(A_nc,p,0) ;            % Filling in p=0
       else
        syms x0
        S = x0; 
        A_j =f(S,k);                    
       end
    end 

我的职能F(x,k)在MATLAB中如下所示,

代码语言:txt
复制
    function F = f(x,k) % Nonlinear function of k power
             F = x^k ;
    end

我想做一个循环,这样我就可以实现X1,X2等,所以我尝试以下方法,注意我所选择的兰卜达=k(s,t)=1和X0=t^{2}

代码语言:txt
复制
x0 = @(t) t^{2}
K = matlabFunction(subs(po(0,2)))
x1 =integral(K,0,1)
K= matlabFunction(subs(po(1,2)))
x2 = integral(K,0,1)
K= matlabFunction(subs(po(2,2)))
x3 = integral(K,0,1)
etc

现在我的问题是如何调用所有的XJ在一段时间的循环中。我试着打电话X(J),因为x(J)=xj但显然这是行不通的,因为它将为X(J)而不是XJ

EN

回答 1

Stack Overflow用户

发布于 2018-08-01 16:30:51

不是很好的解决办法,但应该有效.

代码语言:txt
复制
for n = 1:N
  eval(sprintf('x%d = integral(K,0,1);',n));
end
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100001836

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档