声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1655|回复: 4

[绘图技巧] matlab如何绘制迟滞回线

[复制链接]
发表于 2015-9-30 23:15 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
matlab如何绘制迟滞回线
回复
分享到:

使用道具 举报

发表于 2015-10-4 17:37 | 显示全部楼层
这个要有迟滞回线的数据才能绘制
 楼主| 发表于 2015-10-6 16:41 | 显示全部楼层
happy 发表于 2015-10-4 17:37
这个要有迟滞回线的数据才能绘制

能否举个例子呢?
发表于 2015-10-8 10:20 | 显示全部楼层

% 最小二乘法拟合 B=1;
clear;clc;
wt=0:pi/6:5*pi/6;
B=sin(wt);
H=[280,400,720,800,400,-150];
T0=[0.01,0.01,0.01,0.01];
fun=inline('1*(1/u(1)*sin(wt+u(3))+1/u(2)*sin(3*wt+u(4)))','u','wt'); % 定义函数
[u1,r,J]=nlinfit(wt,H,fun,T0);
% wt,H为原始数据,fun是在M文件中定义的函数,T0是函数中参数的初始值;
% ui为参数的最优值,r是各点处的拟合残差,J为雅克比矩阵的数值.
R=sum(r.^2);%误差平方和
T=0:0.1:2*pi;
BB=sin(T);
HH=1*(1/u1(1,1)*sin(T+u1(1,3))+1/u1(1,2)*sin(3*T+u1(1,4))); %根据b1写出具体函数

plot(H,B,'-*',HH,BB,'-or');
axis([-1000,1000,-1.2,1.2])
annotation('arrow',[0.178 0.876],...
    [0.516 0.516]);
annotation('arrow',[0.5173 0.517],...
    [0.154 0.902]);
xlabel('H'), ylabel('B'),title('B-H');
 楼主| 发表于 2015-10-9 23:42 | 显示全部楼层
happy 发表于 2015-10-8 10:20
% 最小二乘法拟合 B=1;
clear;clc;
wt=0:pi/6:5*pi/6;

非常感谢,先研究研究
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-5-18 14:28 , Processed in 0.088999 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表