Angewandte Mathematik
Algorithmus von de Casteljau
de Casteljau - wird auf Bernsteinpolynome angewendet (Q (n²))
Hahnrechnung von de Casteljau

Beispiel de Casteljau - Algorithmus

Beispiel de Casteljau-Schema

de Casteljau
| ein kleines Programm zur Simulation. |
| #include <stdio.h> #include <math.h> typedef double feld[11]; typedef double feldfeld[11][11]; void bezcoef(void); double castel(double,int,feld); feld b; int n; void bezcoef(void) { /* Verzicht auf Einleseroutine und direkter Zugriff auf Aufgabendaten des Skripts */ n=3; b[0]=1.0; b[1]=0.0; b[2]=-1.0; b[3]=2.0; } double castel(double x0, int n, feld b) { int k,l; feldfeld bb; for(k=0;k<=n;k++) bb[k][0]=b[k]; for(l=1;l<=n;l++) { for(k=0;k<=n-l;k++) bb[k][l]=(1.0-x0)*bb[k][l-1]+x0*bb[k+1][l-1]; } return(bb[0][n]); } /* Hauptprogramm */ int main(void) { int k; double x0=-1.0,px0; bezcoef(); px0=castel(x0,n,b); printf("\n"); printf("\n"); printf("Auszuwerten ist ein Polynom p vom Grad %i.\n",n); printf("\n"); printf("\n"); for(k=0;k<=n;k++) printf("Der %i-te Bezier-Koeffizient des Polynoms p lautet % .12E.\n",k,b[k]); printf("\n"); printf("\n"); printf("Der Auswertungspunkt ist gegeben als x0 = % .12E.\n",x0); printf("\n"); printf("Der de Casteljau-Algorithmus liefert p(x0) = % .12E.\n",px0); return(0); } |