RT 曲线拟合后得到一个方程
y = (0.000116176242636361) * x * x * x + (-0.0369042410603229) * x * x + (3.18057383667107) * x + (-14.7459220790877)
先要求其拐点坐标。【最好能把每两个拐点之间的距离和圆心坐标也求出来】,先奉上100分,求各位大神帮帮忙,小弟感激不尽!曲线拐点
y = (0.000116176242636361) * x * x * x + (-0.0369042410603229) * x * x + (3.18057383667107) * x + (-14.7459220790877)
先要求其拐点坐标。【最好能把每两个拐点之间的距离和圆心坐标也求出来】,先奉上100分,求各位大神帮帮忙,小弟感激不尽!曲线拐点
这个你看看书,或者google一下什么的,还要求导等。我也毕业好多年,淡忘了
y' = 3 * (0.000116176242636361) * x * x + 2 * (-0.0369042410603229) * x + (3.18057383667107)
将 y' = 0代入,用一元二次方程的那个公式即可求拐点。
1 先把这1000个点,按x 坐标排序,从小到大
2
for (i = 1 到999){
if ( (a[i].y > a[i-1].y && a[i].y < a[i+1].y) || (a[i].y < a[i-1].y && a[i].y > a[i+1].y)) )
{
点(a[i].x, a[i].y)是拐点
}
这种算法对吗?
没有学过数学的人也可以这么做。
好比计算123+456你完全可以
int result = 123;
for (int i = 1; i <= 456; i++)
result++;
算出来。
只要一阶导数就可以了。文章是错的。
只要一阶导数就可以了。文章是错的。我查了资料又问了别人都说是二阶导数为0的点啊
只要一阶导数就可以了。文章是错的。我查了资料又问了别人都说是二阶导数为0的点啊
只要一阶导数就可以了。文章是错的。我查了资料又问了别人都说是二阶导数为0的点啊二阶导数为0的点求出来的是拐点切线为水平的拐点。而且,一些函数二阶还不可导。
只要一阶导数就可以了。文章是错的。我查了资料又问了别人都说是二阶导数为0的点啊二阶导数为0的点求出来的是拐点切线为水平的拐点。而且,一些函数二阶还不可导。我现在懵了,到底是求一阶还是二阶,顺便问一句 2+x^3-2x^2+3x>0 c#中怎么判断这个式子有没有解?
只要一阶导数就可以了。文章是错的。我查了资料又问了别人都说是二阶导数为0的点啊二阶导数为0的点求出来的是拐点切线为水平的拐点。而且,一些函数二阶还不可导。我现在懵了,到底是求一阶还是二阶,顺便问一句 2+x^3-2x^2+3x>0 c#中怎么判断这个式子有没有解?
f(x)=2+x^3-2x^2+3x>0
f'(x)=3x^2-4x+3
f"(x)=6x-4
x=2/3时f"(x)为0,有解。
一阶为零是指斜率为零,二阶为零才是求拐点。
简单一个判断,x=0时,2+x^3-2x^2+3x=2>0。
看看是不是这样?就记得这几个高中学的公式了,请无视相当随意的变量名void Calc(double a, double b, double c, double d)
{
double a1 = 3 * a;
double b1 = 2 * b;
double c1 = c;
double tmp = b1 * b1 - 4 * a1 * c1;
if (tmp < 0)
{
Console.WriteLine("无解");
return;
} double x1 = (-b1 + Math.Sqrt(tmp)) / (2 * a1);
double x2 = (-b1 - Math.Sqrt(tmp)) / (2 * a1);
double y1 = a * Math.Pow(x1, 3) + b * Math.Pow(x1, 2) + c * x1 + d;
double y2 = a * Math.Pow(x2, 3) + b * Math.Pow(x2, 2) + c * x2 + d;
Console.WriteLine("坐标1:{0},{1},坐标2:{2},{3}", x1, y1, x2, y2); double distance = Math.Sqrt(Math.Pow(x1 - x2, 2) + Math.Pow(y1 - y2, 2));
Console.WriteLine("两点间距离:" + distance);
}//Calc(0.000116176242636361, -0.0369042410603229, 3.18057383667107, -14.7459220790877)
//结果:
//坐标1:151.559488381255,24.0512749955817,坐标2:60.2120994687416,68.3280259388061
//两点间距离:101.512443253141
圆心我就不知道了,两点确定不了圆心
如果f'(x)为零,此点为拐点的驻点,简称为鞍点。
如果f'(x)不为零,此点为拐点的非驻点。
手工求导
double a1 = 3 * a;
double b1 = 2 * b;
double c1 = c;我那图用外部的函数图像软件画的,不了解Matlab
手工求导
double a1 = 3 * a;
double b1 = 2 * b;
double c1 = c;我那图用外部的函数图像软件画的,不了解Matlab我的方程是动态生成的如y = (0.000116176242636361) * x * x * x + (-0.0369042410603229) * x * x + (3.18057383667107) * x + (-14.7459220790877)只是前面的系数会边,你的方法试用吗?
那不管你的abcd怎么变,都可以用。如果不是,要么我没理解,要没你没理解吧
三次曲线的二阶导是一次函数,你还想要几个拐点?
(ax3+bx2+cx+d)''=6ax+2b
(ax3+bx2+cx+d)'''=6a
f''(x)=6ax+2b=0且f'''(x)=6a≠0的就是拐点
x=-b/3a
拿好不谢。。