www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Sollte man auf einem µC Polynomgleichungen rechnen?


Autor: Manfred (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Guten Abend zusammen,
habe nur eine kurze Frage.
Kann ich einem 16bit,24MHz, µC eine Polynomgleichung 6ten Grades antun 
oder sollte man das besser bleiben lassen.
Im Bezug auf Laufzeit usw.
Danke Manfred

Autor: Jochen Müller (taschenbuch)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
24Mhz sind eine völlig relative Angabe, solange Du verheimlichst welche 
Laufzeit Du gerne hättest, also wie schnell das mindestens gehen muss.
Gehen tut das auch mit 1Mhz oder 1Khz.

Die Frage ist auch, ob Du Dir das per Assembler antun sollst, oder ob Du 
eine Hochsprache benutzen willst.

Wieviel Speicher hast Du?

Je weniger konkrete Angaben Du machst um so weniger kann Dir dazu jemand 
sagen... So ist das.

Jochen Müller

Autor: rotzfrech (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
kein Problem

Wenn man geschickt umformt, kann man sogar alles mit Integer-Arithmetik 
machen.

Autor: Sven Woehlbier (woehlb)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da ich Deine Randbedingungen nicht kenne, ist es schwer da pauschal eine 
Aussage zu machen. Polynomberechnungen kann man aber effizient mit dem 
Horner Schema implementieren.

Tschau Sven!

Autor: Sven Woehlbier (woehlb)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schau dir mal folgende Seite an!

http://de.wikipedia.org/wiki/Horner_Schema

Tschau Sven!

Autor: Praktisch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Horner Schema

Mit viel Praxiserfahrung scheint mir das selbst in Assembler noch 
umsetzbar zu sein.

Autor: Jens 343 (jens343)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sry falscher Threat, bin in Firefox mit den Tabs durcheinander gekommen.

Gruß Jens

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Selbstverständlich kann man mit einem µC Polynomgleichungen berechnen - 
wenn Rechenzeit nicht kritisch ist.

Das hängt einfach davon ab, was der µC sonst noch so zu tun hat bzw. wie 
oft pro Zeiteinheit eine solche Berechnung durchzuführen ist.

Autor: Sven Woehlbier (woehlb)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Praktisch:

Natürlich ist auch Assembler möglich! Letzendlich ist das Horner-
Schema doch nur ein clevere Umstellung der Polynomgleichungen für eine 
effiziente Berechung.

Tschau Sven!

Autor: Sven Woehlbier (woehlb)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ rotzfrech:

Integer-Arithmetik und damit Festkommazahlen sollte auf einem 
Mikrocontroller immer zum Einsatz kommen! Denn wenn die Anzahl der 
Nachkommastellen für Festkommazahlen einmal festgelegt wurde, läst sich 
im Gegensatz zu Floatkommazahlen auch JEDE Zahl darstellen. Abgesehen 
davon sind Integer-Algorithmen grundsätzlich effizienter als 
Floatkommaberechungen.

Tschau Sven!

Autor: Knilch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Besser ein Polynom 6.Grades als eine Exponentialfunktion...

Autor: Sven Woehlbier (woehlb)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Knilch:

Würde ich so pauschal nicht sagen! Denn selbst mit dem Horner-Schema 
sind Multiplikationen notwendig, um ein Polynom zu berechnen. Die 
Exponentialfunktion läßt sich aber mit dem CORDIC-Algorithmus berechnen, 
und der benutzt nur Additionen und Schiebebefehle.

Tschau Sven!

Autor: yalu (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielleicht sollte Manfred genauer beschreiben, was er eigentlich will.
Die meisten hier scheinen davon auszugehen, das es um die Berechnung
von Polynomen geht. Manfred schreibt aber von Polynom_gleichungen_,
was ich so interpretiere, dass Gleichungen 6. Grades gelöst werden
sollen, was gleichbedeutend mit der Nullstellenbestimmung von
Polynomen 6. Grades ist. So etwas ist natürlich deutlich schwieriger
als das bloße Einsetzen von Werten in eine Polynomfunktion.

Aber auch das ist auf einem Mikrocontroller natürlich möglich, wenn
man ihm genügend Zeit zugesteht, und wenn der Speicher für den
Programmcode und die benötigten Variablen ausreicht.

Autor: Mensch Z (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
sollte man ?
ne Frage des Willens ... Wollens

beim uC steht das ' C ' fuer 'Controller'...nicht fuer 'Calculator'

Autor: I_ H. (i_h)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Türlich geht das. Und wenn du damit weiterrechnen willst, und nicht das 
letzte bisschen Performance entscheidend ist, tu dir den Gefallen und 
nimm floats.
Aber 1000 Gleichungen / Sekunde wirst du damit nicht lösen können.

In einen meiner Taschenrechner sitzt eine 4-Bit Saturn CPU mit 8MHz. Die 
löst solche Gleichungen im Handumdrehen symbolisch.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.