Matlab 函数最大值点变量值确定方法

先明确Matlab里的函数绘图也是由点连成,所以这里的函数其实可以看做数组来处理。

以三元函数(对应二维数组)为例:

clc;
f=13000:100:19000;
k=0:0.01:1;
[f,k]=meshgrid(f,k);
Us=10;
Rs=0.1;
Ls=10^(-4);
Cs=10^(-6);
Rd=0.1;
Ld=10^(-4);
Cd=10^(-6);
Rw=10;
M=sqrt(Ls.*Ld).*k;
w=2.*pi.*f;
I1=Us./(Rs+w.*Ls.*j+1./(w.*Cs.*j)+(w.*w.*M.*M)./(Rd+Rw+w.*Ld.*j+1./(w.*Cd.*j)));
I2=j.*w.*M.*Us./(Rs+j.*w.*Ls+1./(j.*w.*Cs))./(Rd+Rw+j.*w.*Ls+w.*w.*M.*M./(Rd+Rw+j.*w.*Ls));
I1real=real(I1);
I2real=real(I2);
P=I1real.*Us;
Pw=I2real.*I2real.*Rw;
%surf(f,k,I1),hold on
%surf(f,k,I2real);
I2abs=abs(I2);
I2absmax=max(I2abs);
I2max=max(I2absmax);
[kn,fn]=find(I2abs==I2max);
disp(I2max);
disp(fn);
disp(13000+(fn-1).*100);
disp(kn);
disp(0+(kn-1).*0.01);
disp(I2abs)

  使用max()函数找出最大值,再用find()函数查找与最大值对应的元素的行列坐标。

  find()函数使用说明如下:

  [kn,fn]=find(I2abs==I2max)

kn,fn为当I2abs=I2max时对应的元素行列坐标。

再根据得到的行列坐标倒推两个自变量的值:

f=13000+(fn-1).*100

k=0+(kn-1).*0.01
//由变量起始值和间隔值倒推

在上例中,I2abs最大值为61.6064,对应的行列坐标为101和30,两变量的间隔值分别为100和0.01,倒推得函数最大值时量变量值为f=15900,k=1。

转载于:https://www.cnblogs.com/freevolunteer/p/6802493.html

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
符号函数在数学上通常被定义为: sgn(x) = { -1, x < 0; 0, x = 0; 1, x > 0 } 因此,它在x=0处不可导,但在任意非零x处的导数为0。 要求符号函数最大值最大值,可以利用符号函数的性质,并结合一些数学技巧来实现。具体步骤如下: 1. 首先,观察符号函数定义可以发现,它的取值范围为{-1, 0, 1},且在x=0处取值为0。 2. 其次,由于符号函数在任意非零x处的导数为0,因此它在这些处可能取得最大值。 3. 最后,我们可以通过枚举所有非零x,计算符号函数在该处的取值,并找出取值为1或-1的最大值及其对应的,即可确定符号函数最大值最大值。 下面是一个MATLAB代码示例,用于计算符号函数最大值最大值: ```matlab syms x; sgn = piecewise(x<0,-1,x>0,1,0); x_vals = linspace(-10,10,1001); % 枚举x轴上的 y_vals = eval(subs(sgn,x,x_vals)); % 计算每个处的函数值 [max_val,max_idx] = max(abs(y_vals)); % 找出绝对值最大的函数值及其位置 max_x = x_vals(max_idx); % 对应的x值即为最大值 max_y = sgn(max_x); % 最大值即为该处的函数值 ``` 这段代码中,使用了MATLAB的符号计算工具箱,通过syms函数定义符号变量x,并使用piecewise函数表示符号函数。然后,使用linspace函数枚举x轴上的,并使用subs函数计算每个处的函数值。最后,使用MATLAB的内置函数max和abs找出绝对值最大的函数值及其位置,并计算出对应的x值和y值。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值