使用Levenberg-Marquardt算法的优化
10视图(30天)
显示旧的评论
接受的答案
罗伯特你
2020年4月23日
你好拉斐尔•欧文斯,
%已知参数
T
e_g
电动汽车
k
i_ph
1
Ut
%基本方程
= @ (c_01) c_01 * T ^ 3 * exp ((-e_g * eV) / (k * T));
我= @ (c_01 U) i_ph - (c0_1)。* (exp(美国/ (1 * Ut)) 1);
%开始为优化值(s)
c_01_guess = 1;
%选择算法,和可能的其他选项优化解算器
选择= optimoptions (“lsqcurvefit”);
opt.Algorithm =“levenberg-marquardt”;
%运行优化
c_01_opt = lsqcurvefit(我c_01_guess U_measured I_measured,[],[],选择);
亲切的问候,
罗伯特。
9日评论
罗伯特你
2020年5月5日
你好拉斐尔•欧文斯,
我不确定我是否正确地理解你的问题:我在哪里获取xdata和ydata真实数据吗?
通常你是测量U-I-curve U和测量。在这种情况下,通过提供真实的数据是“U”(xdata)和“我”(ydata)。网格无关紧要,因为你正试图适应函数的数据模型。它只是需要好足以覆盖整个模型的功能特点。
简而言之:
- 供应U (xdata)
- 我(ydata)
- 给已知参数
- 脂肪酸的适合模型。
亲切的问候,
罗伯特。