originlab吧 关注:5,806贴子:16,552
  • 2回复贴,共1

Origin自定义公式拟合求助,Parameter Initialization Code编辑

只看楼主收藏回复

各位同仁,请大家帮我看看我拟合过程有什么问题,又技术性难题求大神指点。
我想用dual-stie Langmuir-Freundlich公式

采用OriginPro2016拟合,步骤如下:

先新建一个拟合公式

这顶自变量x,对应公示里面的P,因变量y对应公式里面的n(P)。
设定a、b、c分别对应公式中的nm1, b1, t1
设定d、e、f分别对应公式中的nm2, b2, t2

然后输入公式内容,我没有输错

到了Parameter Initialization Code这里我就不知道输入什么了,插入简单的拟合公式可以直接点Finish,但这个公式太复杂了。我直接点Finish,然后开始拟合

拟合结果是没有意义的一条直线,拟合失败


IP属地:美国1楼2020-04-14 14:33回复
    有一个类似的公式,简单办,我倒是成功地手动添加好了

    我的方法如下:





    关键就是这个代码,我对代码其实一窍不通,但是origin自带的拟合公式power里面的LangmuirEXT1和我当前这个公式很像,我稍作改动,输入如下代码,成功添加:
    sort(x_y_curve);
    //smooth(x_y_curve, 2);
    a=yatxmax(x_y_curve);
    double x1=0.75*min(x_data)+0.25*max(x_data);
    double y1=Curve_yfromX(&x_y_curve,x1);
    double x2=0.25*min(x_data)+0.75*max(x_data);
    double y2=Curve_yfromX(&x_y_curve,x2);
    c=1/(ln(y2*(a-y1)/(y1*(a-y2)))/ln(x2/x1));
    b=exp(ln(y2/(a-y2))-(1/c)*ln(x2));
    拟合结果如下:


    IP属地:美国2楼2020-04-14 14:45
    回复

      那么,怎么编辑这个公式的Parameter Initialization Code?或者说我想学怎么编辑Parameter Initialization Code应该看哪方面的书?这些代码属于那种计算机语言?


      IP属地:美国3楼2020-04-14 14:47
      回复