matlab称号运行有错,matlab计算时出现“ Error using ==> mpower Inputs must be a scalar

本文解答了在Matlab中进行矩阵运算时遇到的“mpower”错误,并详细解释了如何正确使用点运算符实现对应元素间的乘方及除法操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题描述:

matlab计算时出现“ Error using ==> mpower Inputs must be a scalar and a square matrix.”

a =[ -0.0881,-2.1214 ,-1.4637,-3.4110,-2.0793]; b =[0.1527,0.3555,0.4291,0.1678,0.3078]; r =[-0.0963,-0.3700,-0.0963,-0.2179,-0.3438]; J=[(a^2)*j3+(b^2)*j1-a*b*r]/[(a^2)+(b^2)]; W=a*[(b^2)*j3-(b^2)*j1+a*b*r]/[b*(a^2)+(b^2)] 我也没多少分 希望能帮我看看后面的两个问题出在哪里?分段运行主要是J和W不对.

1个回答

分类:

综合

2014-10-03

问题解答:

我来补答

首先,你的j1和j3没有赋值.我任意给了一个值,j1=1;j3=3.

其次,你的a、b和r的赋值中逗号要用英文而非中文,我做了修改.a =[-0.0881,-2.1214,-1.4637,-3.4110,-2.0793]; b =[0.1527,0.3555,0.4291,0.1678,0.3078]; r =[-0.0963,-0.3700,-0.0963,-0.2179,-0.3438];

再次(关键问题),矩阵乘积或乘幂,如果要求的是对应元素的乘积,需要用点乘,即在称号或乘幂符号前加一个点.

程序如下:

a =[-0.0881,-2.1214,-1.4637,-3.4110,-2.0793];

b =[0.1527,0.3555,0.4291,0.1678,0.3078];

r =[-0.0963,-0.3700,-0.0963,-0.2179,-0.3438];

j1=1;j3=3;

J=[(a.^2)*j3+(b.^2)*j1-a.*b.*r]./[(a.^2)+(b.^2)]

W=a.*[(b.^2)*j3-(b.^2)*j1+a.*b.*r]./[b.*(a.^2)+(b.^2)]

展开全文阅读

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值