// 输入: L0:函数值, 行向量 // x0:自变量x的值,行向量 // 输出: Num:零点数目 // Pos:零点位置 // 功能: 根据函数值计算零点 // 编写: 李兆亭,2019 / 11 / 04 #include "GPM.h" int Sum_ZeroPoints(vec* L0, vec* x0, int* Num, mat* Pos) { int max_row_len = (size(*Pos))(0); int row_len = (size(*L0))(0); *Num = 0; int i = 0; while (i < row_len - 1) { if ( (*L0)(i)*(*L0)(i + 1) <= 0 ) { (*Pos)(*Num, 0) = (*x0)(i); (*Pos)(*Num, 1) = (*x0)(i + 1); i = i + 1; *Num = *Num + 1; } else { i = i + 1; } } return 1; }