我需要编写 MATLAB 程序(或使用现有程序)来获得傅立叶级数系数。假设该系列将逼近一维曲线。边界条件为:
- 曲线函数在几个地方的值
- 曲线的一阶导数在一些地方已知
- 曲线二阶导数的最大允许值
- 谐波数
- 曲线在指定区间内的积分值应尽可能大 <- 优化标准。
到目前为止,我看到的所有函数和工具都可以在更简单的情况下获得级数系数。任何提示都会有所帮助,尤其是:
- 文献,描述有用方法的文章
- 对傅里叶级数有用的目标函数的提示
- 有关有用的 MATLAB 工具的信息
我需要编写 MATLAB 程序(或使用现有程序)来获得傅立叶级数系数。假设该系列将逼近一维曲线。边界条件为:
到目前为止,我看到的所有函数和工具都可以在更简单的情况下获得级数系数。任何提示都会有所帮助,尤其是:
将您的函数写为谐波的线性组合,并将系数视为变量。这给出了一个半无限线性规划。Matlab 优化工具箱有一个例程 linprog,仅用于求解线性规划 (LP);所以你需要离散曲率约束。
将曲率约束替换为在等距点,求解 LP,在接近最坏情况曲率发生的点附近添加更多点,然后重复直到达到所需的精度。