English 中文(简体)
matlab:
原标题:matlab: lsqcurvefit and parameters

I m试图做一些适合装饰。 我有这样的职能:

function F = cdf_3p_model(a,data)
F=1-((1-a(5)-a(6)).*(exp(-abs(data)./a(1)))+((1-a(4)-a(6)).*(exp(-abs(data)./a(2))))+((1-a(4)-a(5)).*(exp(-abs(data)./a(3)))));

以及

function [a residual] = cdf_fit_3p(x,y)
a0 = [10 1 0.1 0.3 0.3 0.3];
lb = [0 0 0 0 0 0];
ub = [];
curvefitoptions = optimset( Display , final , MaxFunEvals ,100000, MaxIter ,50000);
[a, residual] = fmincon(@cdf_3p_model,a0,x,y,lb,ub,curvefitoptions);
end

我确定了初步参数、泡沫、灯泡,但我也如何声明:

a(1) > a(2) > a(3)
a(5) + a(6) +a(7) = 1
最佳回答
问题回答

通常,我要说,“你的职能中的错误条款,如果这些条件得不到满足,就给真正的可怕的分数”。 然而,你的条件使各种可允许的参数范围如此之广,我认为,如果你这样做,就会使电离板变得永远无法调和。 我要说的是,“安全”不是你们的正确解决办法。

你们必须从更适于马塔雷克的一套参数中计算你们的参数。

例如,你可以改写仪式。

a(1) > a(2) > a(3)
a(5) + a(6) + a(7) = 1

页: 1

a(3) = p(1)
a(2) = p(1) + p(2)
a(1) = p(1) + p(2) + p(3)
a(4) = p(4)
a(5) = p(5)
a(6) = p(6)
a(7) = 1 - p(5) - p(6)

with

lb = [0 0 0 0 0 0]
ub = [Inf Inf Inf Inf 1 1]

Well, it s not perfect, because it allows a(7) 页: 1 low 页: 1 -1 instead of 0. But it includes your other constraints.





相关问题
MATLAB Solving equations problem

I want to solve these equations using MATLAB and I am sure there is a non zero solution. The equations are: 0.7071*x + 0.7071*z = x -0.5*x + 0.7071*y + 0.5*z = y -0.5*x - 0.7071*y +...

Difference between MATLAB s matrix notations

How do you read the following MATLAB codes? #1 K>> [p,d]=eig(A) // Not sure about the syntax. p = 0.5257 -0.8507 -0.8507 -0.5257 d = ...

preventing data from being freed when vector goes out of scope

Is there a way to transfer ownership of the data contained in a std::vector (pointed to by, say T*data) into another construct, preventing having "data" become a dangling pointer after the vector goes ...

Divide two polynomials using MATLAB

I want to divide p(x) by q(x) given that: p(x)=-5x^4+3x^2-6x q(x)=x^2+1 I tried: p=inline( -5*(x^4)+3*(x^2) , x ) p = Inline function: p(x) = -5*(x^4)+3*(x^2) q=inline( x^2+1 , x ) q = ...

matlab deals with Fibbonacci

The Fibonacci series is given as follows: 1, 2, 3, 5, 8, 13, 21, ... How can I write a script which calculates and prints the n-th Fibonacci term (for n>2), where n is inputed by the user. This ...

How do I plot lines between all points in a vector?

I have a vector containing some points in 2-D space. I want MATLAB to plot these points with lines drawn from every point to every other point. Basically, I want a graph with all vertices connected. ...

How do I create a string using a loop variable in MATLAB?

I have a loop like this: for i=1:no %some calculations fid = fopen( c:\out.txt , wt ); %write something to the file fclose(fid); end I want data to be written to different files like ...

热门标签