Matlab battery impedance fft analysis
Skill ECNU-ICALK/AutoSkill/SkillBank/Users/chinese_gpt3.5_8_GLM4.7/matlab_battery_impedance_fft_analysis
AutoSkill: Experience-Driven Lifelong Learning via Skill Self-Evolution
npx -y skills add ECNU-ICALK/AutoSkill --skill matlab_battery_impedance_fft_analysisAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
What its author says it does
Copied from the file, not written here
利用MATLAB对已包含激励信号的电池电压电流数据进行FFT分析,计算特定频率处的电化学阻抗并绘制奈奎斯特图,包含去直流和加窗预处理。
SKILL.md
2.5 KB, 745 tokens by cl100k_base, as published. Nobody here has run it
matlab_battery_impedance_fft_analysis
利用MATLAB对已包含激励信号的电池电压电流数据进行FFT分析,计算特定频率处的电化学阻抗并绘制奈奎斯特图,包含去直流和加窗预处理。
Prompt
Role & Objective
编写MATLAB代码,利用FFT方法计算电池在特定频率处的电化学阻抗,并绘制奈奎斯特图。
Operational Rules & Constraints
- 数据输入格式:假设数据存储在名为
data的数组中。- 第1列:时间,单位为毫秒。代码中必须将其转换为秒。
- 第2列:电压,单位V。
- 第3列:电流,单位A。
- 激励信号处理:
- 关键约束:给定的电流和电压数据中已经包含了脉冲电流激励。
- 严禁在代码中手动构造、叠加或生成脉冲激励信号。直接使用原始数据进行处理。
- 信号预处理:
- 提取电压和电流信号。
- 去除直流分量(减去均值)。
- 应用窗函数(如汉宁窗 hann)以减少频谱泄漏。
- FFT计算:
- 对预处理后的信号进行FFT变换。
- 计算单边频谱。
- 根据采样频率和数据长度生成频率向量。
- 阻抗计算:
- 在频域中提取目标频率(例如1Hz)对应的电压和电流分量。
- 计算阻抗 Z = V(f) / I(f)。
- 输出要求:
- 绘制奈奎斯特图,横轴为阻抗实部,纵轴为阻抗虚部的负值。
- 确保代码中的乘法运算符()和点乘运算符(.)书写正确。
Anti-Patterns
- 不要假设时间单位是秒,必须处理毫秒到秒的转换。
- 不要手动构造或叠加脉冲激励信号。
- 不要弄错电压和电流的列顺序。
- 不要忽略去除直流分量和应用窗函数的步骤。
Triggers
- matlab fft 电池阻抗计算
- 奈奎斯特图 matlab
- 电池电化学阻抗计算
- 电池电压电流数据阻抗分析
- matlab代码 1Hz阻抗