S
Sina
Guest
Hi!
Ich hab da wieder mal ein Problem. Ich habe einen Code, der mir möglichst 1Mio Stützstellen liefern soll.
Zuerst habe ich das so gelöst:
CODE
while xx<=1
xx2=xx;
y=y0;
%fsolve iteriert in der nachfolgenden Funktion y so lange, bis die
%Funktion 0 ergibt.
[TI, y] = fsolve(@(y)[sqrt(54/pi)*((-1/3)*y* exp((-3/2)*y^2) + (1/18)* pi^(1/2)*6^(1/2)*erf((1/2)*y*sqrt(6)))]-xx2, y);
arrayx(i)=xx2;
arrayTI(i)=TI;
arrayy(i)=y;
i=i+1;
xx=xx2+deltaX;
end
Diese While-Schleife ist aber sehr zeitaufwendig, und bei 1Mio Durchläufen kann das ziemlich auf den Wecker fallen
Ich habe schon versucht, das ganze mit linspace zu verbessern, habe aber irgendwie nicht die Lösung bekommen, die die While-Schleife gebracht hat...
Kann mir hier jemand helfen, und mir sagen, wie ich diesen Teil "schneller" bekomme?
Viele sonnige Grüße,
sina
Ich hab da wieder mal ein Problem. Ich habe einen Code, der mir möglichst 1Mio Stützstellen liefern soll.
Zuerst habe ich das so gelöst:
CODE
while xx<=1
xx2=xx;
y=y0;
%fsolve iteriert in der nachfolgenden Funktion y so lange, bis die
%Funktion 0 ergibt.
[TI, y] = fsolve(@(y)[sqrt(54/pi)*((-1/3)*y* exp((-3/2)*y^2) + (1/18)* pi^(1/2)*6^(1/2)*erf((1/2)*y*sqrt(6)))]-xx2, y);
arrayx(i)=xx2;
arrayTI(i)=TI;
arrayy(i)=y;
i=i+1;
xx=xx2+deltaX;
end
Diese While-Schleife ist aber sehr zeitaufwendig, und bei 1Mio Durchläufen kann das ziemlich auf den Wecker fallen
Ich habe schon versucht, das ganze mit linspace zu verbessern, habe aber irgendwie nicht die Lösung bekommen, die die While-Schleife gebracht hat...
Kann mir hier jemand helfen, und mir sagen, wie ich diesen Teil "schneller" bekomme?
Viele sonnige Grüße,
sina