一种根本部诗人的对称求法
查看原帖
一种根本部诗人的对称求法
1436960
Arabidopsis楼主2025/7/21 05:51

代码:

std::vector<double> symmetry(double a0, double b0, double c0, double k1, double k2) {
	auto x1 = 2 * k1 - 1;
	auto y1 = 2 * k2 - (a0 + b0 + c0);
	auto x2 = 2 * k1 - 2;
	auto y2 = 2 * k2 - (4 * a0 + 2 * b0 + c0);
	auto x3 = 2 * k1 - 3;
	auto y3 = 2 * k2 - (9 * a0 + 3 * b0 + c0);

	double a = x1 * x1, b = x1, c = 1, r1 = y1;
	double d = x2 * x2, e = x2, f = 1, r2 = y2;
	double g = x3 * x3, h = x3, i = 1, r3 = y3;

	auto D = a * (e * i - f * h) - b * (d * i - f * g) + c * (d * h - e * g);
	auto D1 = r1 * (e * i - f * h) - b * (r2 * i - f * r3) + c * (h * r2 - e * r3);
	auto D2 = a * (i * r2 - f * r3) - r1 * (d * i - f * g) + c * (d * r3 - g * r2);
	auto D3 = a * (e * r3 - r2 * h) - b * (d * r3 - r2 * g) + r1 * (d * h - e * g);
	return std::vector<double> {D1 / D, D2 / D, D3 / D};
}

其中,函数参数的 a0b0c0 是抛物线 f(x)=ax2+bx+cf(x) = ax^2+bx+c 的三个参数,函数的参数的 k1k2 是对称点 (k1,k2)(k_1,k_2)

2025/7/21 05:51
加载中...