Matlab Problem

Neue Frage »

Ripper1986 Auf diesen Beitrag antworten »
Matlab Problem
Hi,

ich habe irgendwie ein Problem mit meinem Plott bzw. eher mit meiner Funktion. Hier erstmal der Code:

function [ z] = Testfunktion( x,y )
a = 4*(x+y);
h = (a>=0)==(a<=1);
z = (1-a).*h;
end

function [b]=binom(n,k)
%Biniomialkoeffizient Berechnung des Binomialkoeffizienten
%
%Input : n,k Zahlen aus N
%Output: b Binomialkoeffiezent aus N
%Berechnung:
b=(factorial(n))/(factorial(k)*factorial(n-k));
end


function [ y ] = Grundfunk( n,i,x )
%Berechnung der Bernstein Grundfunktionen
%Input: i,n aus N und x aus [0,1]
%Output: y Wert der Grundfunktion
y=binom(n,i)*x^i*(1-x)^(n-i);
end

function [ erg ] = Bernsteinop( x,y )
%Bernsteinoperator
%Input: n,k aus N und Punkt x, in dem ausgewertet wird
%Output: Auswertung des Bernsteinoperators in x
erg=0;
for i=0:2
for j=0:2
boolsum=[Testfunktion(x,j/2)+Testfunktion(i/2,y)-Testfunktion(i/2,j/2)];
erg=erg+boolsum*Grundfunk(2,i,x)*Grundfunk(2,j,y);
end
end
end



Jetzt möchte ich Bernsteinop Plotten und bekomme leider nur eine gekippte Ebene. Eigentlich soll eine geschwungene Fläche herauskommen die ähnlich ist zu der Testfunktion.

Gruß
Ripper1986 Auf diesen Beitrag antworten »

also ich habe an dem Problem weitergearbeitet...

wenn ich den Bernsteinop diskret in ein paar Punkten auswerte kommt das richtige raus, wenn ich ihn jetzt Plotten will mit:

>> [X,Y]=meshgrid(0:0.02:1);
>> Z=Bernsteinop(X,Y);
>> surf(X,Y,Z)

kommt totaler Mist raus... kann mir jemand sagen warum das so ist?

Gruß
Ripper1986 Auf diesen Beitrag antworten »

keiner der helfen kann?
Neue Frage »
Antworten »



Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »