功能我通过数学的方式安装的一些功能像这样FindMinimum与数学
parameter = {a, b};
parameter
data = {{0, 1.2}, {0, 0.1}, {0.1, 0.2}, {1.1, 0}}
Ftest[x_, y_] := a*x^2 + b*y^2
fit = FindMinimum[Total[(Ftest @@@ data - 2)^2], parameter]
ContourPlot[(Ftest[x, y] /. fit[[2]]) == 2, {x, 0, 1.5}, {y, 0, 1.5},
Epilog -> {Red, Point /@ data}]
有了适当的结果。但是我的实际作用更为复杂,由窦/余弦/反余弦函数的一些指数,以8.电源使用我的实际功能,实际的代码我得到一些错误:
The function value {3.74166 (-2.+81. (256. Power[<<2>>]+256. Power[<<2>>]+256. Power[<<2>>]) (Times[<<4>>]+Times[<<2>>])^4)^2} is not a list of real numbers with dimensions {1} at {apb3d,bpb3d,cpb3d,fpb3d,gpb3d,hpb3d} = {1.,1.,1.,1.,1.,1.}. >>
我想要的功能拟合是在x为0和90的区域,而y在0和2之间。但是由于它是一系列的正弦函数,所以拟合函数是symertical。我想要拟合的参数在-2和2之间。已经执行了一些已知参数值的测试,因此实际功能是正确的。 Mathematica是否需要进一步的输入以限制对参数的搜索?
由于在{apb3d,bpb3d,cpb3d,fpb3d,gpb3d,hpb3d} = {1.,1.,1.,1.,1.,1}时出现错误消息说YourFunction不是真实的,请尝试YourFunction/。{apb3d-> 1.,bpb3d-> 1.,cpb3d-> 1.,fpb3d-> 1.,gpb3d-> 1.,hpb3d-> 1},看看结果是什么。 – Bill
您可以在'FindMinimum'参数中指定约束。在文档中查看几个例子。 – agentp
当我插入apb3d = 1的值和其他参数以及我的函数看起来应该如此。然而,当我在另一个prorgam中绘制函数时,我的函数中会出现一些小波, Excel中。 – YaY