Matlab 如何同时拟合两条曲线?如何对复数进行曲线拟合?

Matlab 如何同时拟合两条曲线?如何对复数进行曲线拟合?,matlab,curve-fitting,complex-numbers,Matlab,Curve Fitting,Complex Numbers,更具体地说,我正在处理一个问题,在这个问题上,我收集了与形式为y(x)=a+b/(x*I)+c/(x+I)+d/(x*I)[注:我使用I作为虚单位。我稍微简化了函数,但不是以一种重要的方式进行的]。换句话说,我有数据(理论上)我知道y[x1 x2…xn]=[t1 t2…tn]+[s1 s2…sn]*因此,对于任何给定的x值,我独立收集了y的实部和虚部的实验数据 由于y的虚部和实部均依赖于相同的参数(在上述等式中给出:a、b、c、d),因此能够同时或作为一个单元对该数据进行曲线拟合将非常有益 我曾

更具体地说,我正在处理一个问题,在这个问题上,我收集了与形式为
y(x)=a+b/(x*I)+c/(x+I)+d/(x*I)
[注:我使用
I
作为虚单位。我稍微简化了函数,但不是以一种重要的方式进行的]。换句话说,我有数据(理论上)我知道
y[x1 x2…xn]=[t1 t2…tn]+[s1 s2…sn]*因此,对于任何给定的
x
值,我独立收集了
y
的实部和虚部的实验数据
由于
y
的虚部和实部均依赖于相同的参数(在上述等式中给出:
a、b、c、d
),因此能够同时或作为一个单元对该数据进行曲线拟合将非常有益

我曾考虑:

  • 曲线拟合时:尝试将其视为一个函数,其中有某种标记或指示器指定“实”或“虚”,允许函数正确输出

  • 将此曲线拟合为单个复杂函数

  • 作为两个函数的曲线拟合,可以同时进行,也可以以迭代交替的方式进行


  • 我没有能够成功地实现这些想法中的任何一个。其中有可能吗?有没有其他解决方案可以给我答案?关于如何进行的任何建议?

    nlinfit
    对于我来说,对于想象的值似乎很好:

    beta = nlinfit(x, y, @(b, x) b(1) + b(2)/(x*i) + b(3)/(x+i) + b(4)/(x*i), randn(4,1));
    

    这可能相当于同时最小化实部和虚部的平方误差之和。

    nlinfit
    对我来说,虚值似乎很好:

    beta = nlinfit(x, y, @(b, x) b(1) + b(2)/(x*i) + b(3)/(x+i) + b(4)/(x*i), randn(4,1));
    

    这可能相当于同时最小化实部和虚部的平方误差之和。

    x
    值是真的吗?是的,x值都是真的。
    x
    值是真的吗?是的,x值都是真的。