• 大小: 1KB
    文件类型: .cpp
    金币: 1
    下载: 0 次
    发布日期: 2021-05-16
  • 语言: C/C++
  • 标签:

资源简介

用C语言实现 的最速下降法,可利用函数指针将自己的目标函数设置进去

资源截图

代码片段和文件信息

// 目标函数  输入 输出  其他状态量
typedef  double (*Fun)(double *inputvoid *other);
#define N 3; // 状态变量
void nonline_Gradient()
{
// 利用最速下降法求解平衡舵偏角 
// 建立最小二乘方程  三个方向的力矩系数平方和
Fun fun; // 目标函数
double pace[N]; // 步长
double in[N]in_1[N]; // 输入变量
double out; // 函数输出
double alpha[N]; // 因子
double Grad[N];
double Temp=0;
do{
CalGrad(funinpaceGradNULL);
out = fun(inNULL);
for(int i=0;i {
Temp+=(Grad[i]*Grad[i]);
}
alpha = out/(Temp);
for(int 

评论

共有 条评论

相关资源