【拟合】基于粒子群算法实现热瞬态阻抗曲线拟合附matlab代码

简介: 【拟合】基于粒子群算法实现热瞬态阻抗曲线拟合附matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。

🍎个人主页:Matlab科研工作室

🍊个人信条:格物致知。

更多Matlab仿真内容点击👇

智能优化算法  神经网络预测雷达通信 无线传感器

信号处理图像处理路径规划元胞自动机无人机 电力系统

⛄ 内容介绍

文章阐述MATLAB的曲线拟合工具箱(Curve Fitting Toolbox)的交互式图形界面和程序调用两种方式的使用方法,并以某柴油发动机稳态工况下的试验数据绘制万有特性图为例,介绍利用曲线拟合工具箱进行曲面拟合的步骤和方法,并给出关键代码,探讨利用该工具箱改进拟合效果和绘图质量.对拟合结果的数理统计校验表明拟合结果完全符合要求,MATLAB的曲线拟合工具箱为发动机特性的曲面拟合提供更大的便利.

⛄ 部分代码

% Your digitized plot goes here. You can use e.g. Plot Digitizer or many

% other digitizers available on Matlab Central.

% Here the trench IGBT module SKM145GB066D from Semikron will serve as an

% example. Note that the thermal chain parameters are given explicitely for

% this particular module but this is not always the case. In fact, it's usually not

% the case. More on thermal modelling:

% http://www.plexim.com/download/documentation .

x_igbt_zth = [1.02e-05, 1.46e-05, 1.93e-05, 2.52e-05, 3.14e-05, 3.92e-05,...

   5.03e-05, 6.71e-05, 8.89e-05, 0.0001185, 0.000159193, 0.000215443, 0.00029157,...

   0.000403431, 0.000541969, 0.000722727, 0.000970911, 0.00132372, 0.00184512, 0.002553,...

   0.00350648, 0.00514681, 0.00733474, 0.0112534, 0.01664, 0.0225198, 0.0332994, 0.0444054,...

   0.0632823, 0.0831518, 0.104528, 0.135335, 0.171386, 0.206112, 0.272833, 0.361154,...

   0.492388, 0.65661, 0.831518, 0.992647];

y_igbt_zth = [0.000438281, 0.000600275, 0.000779386, 0.00100595, 0.00123818, 0.00152402,...

   0.00189824, 0.0024793, 0.0031811, 0.00408155, 0.0052994, 0.00675922, 0.00877605,...

   0.0111273, 0.0141926, 0.0176776, 0.0216298, 0.026623, 0.0333577, 0.0410584,...

   0.0487691, 0.0603848, 0.0747672, 0.0936806, 0.117378, 0.138597, 0.168579, 0.195541,...

   0.228164, 0.252384, 0.271013, 0.28419, 0.292749, 0.299781, 0.30336, 0.30336,...

   0.30336, 0.305166, 0.30336, 0.30336];

% rng('shuffle');

asur = 0; % 1 --> the asynchronous update rule; 0 --> the synchronous update rule

evaporation_constant = 1; % Static optimization problem (SOP)

swarm_size = 50;

init_position = 3; % note that parameters are coded using exponential function;

% the initial area covered by the swarm is then [0.001, 1000];

% this should work for most thermal models of

% semiconductor switches and heat sinks in power electronic systems. If the

% optimizer fails to identify your device, you should try setting

% init_position = 5 .

init_speed = 1;

diversity_limit = 0; % Static optimization problem (SOP)

velocity_clamping = 2;

num_of_iter = 10000; % don't worry -- it will take seconds to complete the task at hand

% Constricted PSO

correction_factor = 2.05;

Kappa=2/abs(2-2*correction_factor-sqrt((2*correction_factor)^2-8*correction_factor));

% The problem

num_of_D = 6; % 6 parameters of the Foster-type RC ladder network to be identified

% More declarations

swarm = zeros(swarm_size,4,num_of_D);

swarm_diversity = zeros(1,num_of_D);

swarm_dir = zeros(1,num_of_D);

%% Initial swarm position and velocity

for index=1:swarm_size,

   swarm(index, 1, :) = init_position*(rand(num_of_D,1)-0.5)*2;

   swarm(index, 2, :) = init_speed*(rand(num_of_D,1)-0.5)*2;

end

swarm(:, 4, 1) = 10e10;          % initial best value --> some value out of practical limits

%% The swarm is turned on

for iter = 1 : num_of_iter,

   for n = 1 : swarm_size,

       r1 = 10^swarm(n, 1, 1); % resistances

       r2 = 10^swarm(n, 1, 2);

       r3 = 10^swarm(n, 1, 3);

       c1 = 10^swarm(n, 1, 4); % capacitances

       c2 = 10^swarm(n, 1, 5);

       c3 = 10^swarm(n, 1, 6);

       %% In this example the 3rd order Foster chain is used.

       % Particles are rated here using sum of squared errors.

       % Obviously you can define your own cost function.

       fitness = 0;

       for i = 1:numel(x_igbt_zth),

⛄ 运行结果

⛄ 参考文献

[1]黄兵锋, 解方喜, 傅佳宏. MATLAB曲线拟合工具箱在发动机特性拟合中的应用[J]. 湖北文理学院学报, 2014, 35(5):5.

⛄ 完整代码

❤️部分理论引用网络文献,若有侵权联系博主删除
❤️ 关注我领取海量matlab电子书和数学建模资料


相关文章
|
7天前
|
存储 算法 调度
【复现】【遗传算法】考虑储能和可再生能源消纳责任制的售电公司购售电策略(Python代码实现)
【复现】【遗传算法】考虑储能和可再生能源消纳责任制的售电公司购售电策略(Python代码实现)
105 26
|
7天前
|
存储 编解码 算法
【多光谱滤波器阵列设计的最优球体填充】使用MSFA设计方法进行各种重建算法时,图像质量可以提高至多2 dB,并在光谱相似性方面实现了显著提升(Matlab代码实现)
【多光谱滤波器阵列设计的最优球体填充】使用MSFA设计方法进行各种重建算法时,图像质量可以提高至多2 dB,并在光谱相似性方面实现了显著提升(Matlab代码实现)
|
9天前
|
传感器 机器学习/深度学习 算法
【UASNs、AUV】无人机自主水下传感网络中遗传算法的路径规划问题研究(Matlab代码实现)
【UASNs、AUV】无人机自主水下传感网络中遗传算法的路径规划问题研究(Matlab代码实现)
|
4天前
|
机器学习/深度学习 人工智能 搜索推荐
从零构建短视频推荐系统:双塔算法架构解析与代码实现
短视频推荐看似“读心”,实则依赖双塔推荐系统:用户塔与物品塔分别将行为与内容编码为向量,通过相似度匹配实现精准推送。本文解析其架构原理、技术实现与工程挑战,揭秘抖音等平台如何用AI抓住你的注意力。
110 6
从零构建短视频推荐系统:双塔算法架构解析与代码实现
|
7天前
|
机器学习/深度学习 传感器 算法
【高创新】基于优化的自适应差分导纳算法的改进最大功率点跟踪研究(Matlab代码实现)
【高创新】基于优化的自适应差分导纳算法的改进最大功率点跟踪研究(Matlab代码实现)
87 14
|
7天前
|
机器学习/深度学习 运维 算法
【微电网多目标优化调度】多目标学习者行为优化算法MOLPB求解微电网多目标优化调度研究(Matlab代码实现)
【微电网多目标优化调度】多目标学习者行为优化算法MOLPB求解微电网多目标优化调度研究(Matlab代码实现)
|
8天前
|
算法 数据可视化 异构计算
【车辆路径问题VRPTW】基于北极海鹦优化(APO)算法求解带时间窗的车辆路径问题VRPTW研究(Matlab代码实现)
【车辆路径问题VRPTW】基于北极海鹦优化(APO)算法求解带时间窗的车辆路径问题VRPTW研究(Matlab代码实现)
|
8天前
|
机器学习/深度学习 运维 算法
【复现】基于改进秃鹰算法的微电网群经济优化调度研究(Matlab代码实现)
【复现】基于改进秃鹰算法的微电网群经济优化调度研究(Matlab代码实现)
|
8天前
|
机器学习/深度学习 算法 安全
【无人机三维路径规划】基于非支配排序的鱼鹰优化算法NSOOA求解无人机三维路径规划研究(Matlab代码实现)
【无人机三维路径规划】基于非支配排序的鱼鹰优化算法NSOOA求解无人机三维路径规划研究(Matlab代码实现)
|
8天前
|
机器学习/深度学习 负载均衡 算法
【柔性作业车间调度】基于四种多目标优化算法(NSOOA、NSPSO、NSDBO、NSCOA)求解柔性作业车间调度问题FJSP研究(Matlab代码实现)
【柔性作业车间调度】基于四种多目标优化算法(NSOOA、NSPSO、NSDBO、NSCOA)求解柔性作业车间调度问题FJSP研究(Matlab代码实现)

热门文章

最新文章