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


von Manfred (Gast)


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

von Jochen M. (taschenbuch)


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

von rotzfrech (Gast)


Lesenswert?

kein Problem

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

von Sven W. (woehlb)


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!

von Sven W. (woehlb)


Lesenswert?

Schau dir mal folgende Seite an!

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

Tschau Sven!

von Praktisch (Gast)


Lesenswert?

> Horner Schema

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

von Jens 3. (jens343)


Lesenswert?

Sry falscher Threat, bin in Firefox mit den Tabs durcheinander gekommen.

Gruß Jens

von Rufus Τ. F. (rufus) Benutzerseite


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.

von Sven W. (woehlb)


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!

von Sven W. (woehlb)


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!

von Knilch (Gast)


Lesenswert?

Besser ein Polynom 6.Grades als eine Exponentialfunktion...

von Sven W. (woehlb)


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!

von yalu (Gast)


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.

von Mensch Z (Gast)


Lesenswert?

sollte man ?
ne Frage des Willens ... Wollens

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

von I_ H. (i_h)


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.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.