u函数 matlab,“未定义的函数或变量”u“。” MATLAB文章

在尝试提交MATLAB文章时,作者遇到一个问题:调用自定义旋转函数时出现'未定义的函数或变量'u'的错误。尽管代码中并未使用名为'u'的变量或函数,但错误仍然存在。该函数旨在接受3D向量、旋转角度和标量,通过球坐标系统进行旋转。错误出现在尝试访问输出向量的元素时。代码包括了对输入向量有效性的检查和向量到球坐标及回转的转换过程。
摘要由CSDN通过智能技术生成

我有一个非常奇怪的问题,我需要交上一篇matlab文章。 我写了一个旋转3d矢量的函数。我称之为旋转。“未定义的函数或变量”u“。” MATLAB文章

rotate得到一个向量v,一个角度theta,角度alpha和一个标量r。 该函数将旋转增加矢量用Z轴旋转theta创建的角度,旋转它围绕Z轴(增加X轴创建的角度)alpha,然后用r延长。

例如:

v=(0,0,1)

theta= pi/2

alpha=0

r=1

rotate(v,theta,alpha,r) will return (0,1,0).

我的问题是,每当我调用函数的旋转,我得到一个错误说: ???未定义的函数或变量“u”。

错误==>旋转在51 x = u(1);

而在我写的整个代码中,没有称为“u”的函数或变量。

这是我的代码。基本上,我将向量转换为球形坐标,然后添加theta和alpha。我认为它不应该工作?

function [output] = rotate(v,theta,alpha,r)

if(isnumeric(v))

[i,j]=size(v);

if(i>j)

for i=1:3

sum = sum+pow(v(i,1),2);

end

sum=sqrt(sum);

output(1,1)=sum*r;

output(2,1)=acos(v(3,1)/sum)+theta;

output(3,1)=

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值