我有一个关于寻找矩形s2
(曲线上方)的区域的问题。我想找到S1/S2
类似于(S-S2)/(S2)
,其中S=S1+S2
。
我有两个双
(x;y)的向量
,可以找到S1+S2
:
s=(x.back()-x[0])*(y.back()-y[0])
)
我的问题是:如果我没有函数,但有(x;y),如何使用数值积分。例如,在matlab中,Feval
:
% Total area under the curve
ft = fittype('smoothingspline');
cf = fit(x,y,ft);
F = @(x) feval(cf,x);
S2 = quad(F,x(1),x(end));
在C++中,我有:
#include "Functions.h"
std::vector<double>AreaRatio(std::vector<double>&x, std::vector<double>&y) {
double S(0.0), z(0.0), S2(0.), R(0.0);
S = (x.back() - x[0])*(y.back() - y[0]);
z = (x.back()*x[0])*(y[0]-0);
S2 = /.../
// Numerical methods (any library) to find the area under the curve,
// but I don't know how to transfer function into function of Numerical integration,
// because I have only coordinates.
R = (S - S2) / S2;
return R;
}
不确定,但我认为你需要进一步回到积分的第一原理...看起来你要做的是找到图下的区域...要做到这一点,您需要将其视为切片[集成是这个概念的增量接近0的点]
因此,将面积计算为小矩形或更好的矩形,在每个数据点之间的顶部有三角形...
即。
for(loop over data)
{
area += (data[1] + data[0]) * time/distance between data[1] and data[0]
}
如何获取用户当前所在的路由?我需要它来隐藏导航栏链接,如果用户当前在链接通向的路线上。
我在想一个算法来解决下面的问题: 问题是如何找到最小的边数来满足所有客户的要求? 有一个简单的例子: 客户1希望从顶点a到顶点B。 客户2希望从顶点b到顶点C。 客户3希望从顶点a到顶点C。 null
如果我的问题看起来很长,我道歉。我会尽量简明扼要。 问题:编写一个程序,将以千克为单位的估算重量转换为磅。如果用户输入负值,程序应要求玩家重新输入数字。 我创建了三个函数。第一个函数-返回玩家输入第二个函数-返回以磅为单位的权重第三个函数-如果权重为正,返回以磅为单位的值,或者如果值为负,要求另一个输入。 如果相同的值为正数,我的程序将返回正确的值。然而,当我输入一个负浮点数时,我的程序将永远打印
发生在我身上的是MDB接收消息并尝试处理它们,甚至我的服务器也没有完全启动 知道怎么解决这个问题吗?
我需要将一个JSON文件推进到一个Kafka主题中,在presto中连接该主题,并将JSON数据结构化到一个可查询的表中。
如何获取已设置为ImageView的可绘图文件的名称?