Maple-Problem



  • hi leute...
    in ansi c schon beschriebn, nun leicht abgeändert...
    ich übergebe aus einem c-programm werte in eine textdatei. diese werden dann von maple eingelesen, um graphisch verarbeitet zu werden (erscheint mir nach langem doch einfacher, als in c ne bitmap zu erstellen).

    eigentlich geht es nur darum, das newton-verfahren im dreidimensionalen graphisch darzustellen.
    vielleicht hat wer eine grundlegend andere idee?? im moment benutze ich den befehl pointplot, um jeden punkt einzeln zu plotten..

    in der Textdatei stehen die daten wie folgt:
    0 0 1
    0 1 1
    0 2 1
    0 3 1
    ... (bis 199 199 1)
    dabei stellen die ersten beiden werte den x- und y-wert eines punktes dar, der letzte wert übergibt die farbe des punktes (wird in maple umgewandelt, in RED, GREEN oder BLUE).
    nun will ich dieses Array mit 40.000 Zeilen graphisch ausarbeiten und nachdem mein Rechner mal um mal abgeschmiert ist, hab ich das array unterteilt in 10.000er schritte.
    nun klappt die graphische darstellung auch, der PC braucht jedoch ca. 45min für die berechnung!
    im folgenden der code, vielleicht hat wer ne ahnung, wie ich das verändern muss, damit ich eine bessere performance bekomme. auch eine änderung der daten in der textdatei ist kein problem, wenn maple damit besser umgehen kann...

    A:=array(readdata(datei,[integer,integer,integer])):
    for i from 1 to 10000 do
    B[i]:=pointplot({[(A[i,1]/50-2),(A[i,2]/50-2)]},color=A[i,3]):
    end do:
    C1:=display(seq(B[i], i=1..10000)):
    display(C1,C2,C3,C4);
    

    (farbumwandlung weggelassen und die schleife steht viermal im code... eben von 10001 bis 20000 usw... bis 40000)

    mfg, KB



  • Hi KingBenny,

    ich weiß ja nicht was du für einen Rechner hast 😉 aber ich hab mit Matlab mal ein zweidimensionales Feld mit 200x200 Feldern erstellt und es dann als colormap plotten lassen. Hat nicht mal eine Sekunde gedauert 😃 Ich denke, es liegt an der Skriptlaufzeit von Maple. Ich kenn mich nicht gut mit Maple aus, aber das was ich davon kenne, war mir immer sehr langsam vorgekommen. Denn dein abspeicher der 40000 Zeilen in einer Textdatei dauert ja auch nicht 45min 😉 Versuchs doch mal mit Matlab....

    CU bais



  • Mit Mathematica ist ein 3D Plot eines 60x60 Rasters kein Problem, selbst wenn man Hunderte davon zu einer kleinen Animation zusammenbastelt nicht... in Mathematica benutze ich dabei den Befehle "ListPlot3D" (stellt den F(x,y) Wert als Höhe dar) oder man kann auch ContourPlot wählen... vielleicht gibt es ähnliche Befehle in Maple.

    Viel Erfolg Winn



  • jo, thx für eure hilfe, habe auch in maple einen befehl listplot3d gefunden.
    somit alles umgeworfen, ne andere textdatei übergeben und nun klappt es, wunderschöne fraktale...
    vielen dank, KB


Anmelden zum Antworten