⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 subsasgn.m

📁 matlab 多参数积分工具箱 multivariable calculus toolbox
💻 M
字号:
function A=subsasgn(A,S,B)
%SUBSASGN  Subscripted assignment.
%   V = W assigns the vector function W into V.
%
%   V([],[],[]) = W does the same thing.
%
%   Subscripted assignment is also possible, e.g.
%   V.y = S where S is a scalar.
%
%   See also SUBSREF.

% Copyright (c) 2001-04-17, B. Rasmus Anthin.

err1='Cannot assign to an indexed vector';
[x y z]=vars(A);
if isempty(S(1).type)
   B=vector(B);
   A=B;
elseif strcmp(S(1).type,'()') & length(S(1).subs)==3
   if isempty(S(1).subs{1}) & isempty(S(1).subs{2}) & isempty(S(1).subs{3})
      B=vector(B);
      A=B;
   else
      error([err1 ' with values.']);
   end
elseif strcmp(S(1).type,'.')
   B=scalar(B);
   B=struct(B);
   A.x=[min(A.x(1),B.x(1)) max(A.x(2),B.x(2)) max(A.x(3),B.x(3))];
   A.y=[min(A.y(1),B.y(1)) max(A.y(2),B.y(2)) max(A.y(3),B.y(3))];
   A.z=[min(A.z(1),B.z(1)) max(A.z(2),B.z(2)) max(A.z(3),B.z(3))];
   A.xval=B.xval;A.yval=B.yval;A.zval=B.zval;
   name=inputname(3);
   if isempty(inputname(3))
      name=B.f;
   end
   switch(S(1).subs)
   case {x}
      A.fx=name;A.Fx=B.F;
   case {y}
      A.fy=name;A.Fy=B.F;
   case {z}
      A.fz=name;A.Fz=B.F;
   end
   A.coords=B.coords;
   A=vector(A);
else
   error([err1 ' using ''{}''.']);
end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -