entligen en komplexkapabel RPN-räknare för PC, paln och pocket PC

(skiiiiit också - min kanske något fyndiga text raderades av en BSD nyss och texten nedan blir inte alls samma sak och rytm som jag har tänkt mig... - kommer ju inte ihåg hur jag formulerade mina något elaka sparkar mot HP längre... skiiiit också...)

Några av läsarna här har säkert noterat min irritation att det inte längre finns några skjortfickvänliga miniräknare med komplex kapabilitet och helst RPN (omvänd polsk notation) att köpa sedan länge.

och som skjortvänlig räknare räknas _inte_ HP33s då dess komplexa talhantering är synnerligen handikappat, inkomplett och svårarbetat och skall man ha något som hanterar detta bra så är räknarna stora kolosser som hp49g++ (med ökända lågkvalitetsknappar långt ifrån forna HP där 'invent' betydde någonting och istället borde bytas till 'profit') eller dom största av TI:s räknare typ TI89 eller liknande, något som i sin numeriska version inrymdes i lilla räknaren hp42s som jag har refererat tidigare i mina små räkneinlägg under åren.

---

Nu sprang jag på nära nog svaren på mina böner - dessvärre inte i fysisk form och storlek men ändock användbart som program på PC,palm och pocketPC, istället för dess inbyggda leksaker till räknare.

samt att ni som inte har haft förmånen med komplexkapabel räknare tidigare, kanske upptäcker att detta är inte sååå 'komplicerat' när man håller på med olika typer av uppgifter inom ellära och fysik med imaginära tal.

det är nämligen enkelt att operera med med komplexa tal i hp42s:

'1' 'enter' '2' '2nd complex' ; skapar ett komplex tal '1 i2' på stacken '3' 'enter' '4' '2nd complex' ; skapar det andra komplexa talet på stacken

därefter kan man operera med +-/* precis som vanligt tal, man kan också fritt blanda 'vanliga' tal med komplexa tal i operationerna utan speciella åtgärder - det är bara att knacka på

man kan också använda y^x, e^x, ln, log, 10^x, sin, cos, tan, asin, acos, atan och hyperboliska operationer obegränsat med dessa komplexa tal tex:

a+ib x c+id e är fullt möjligt eller Y motsvarande a+ib

med '2nd modes' kan du välja hur talen skall visas - rektangulärt (kartetiskt) eller polär i vald form (rad eller grad) - tänk på att inmatningen med '2nd complex' också anpassas med visningsmod - är det polärt visning så är det polär inmatning och med ändring av 'mode' till cartetsisk så kan man snabbt se vad den polära inmatningen motsvaras i cartetisk notation (internt arbetas det alltid med cartetisk mode)

(jag kan aldrig minnas att jag någonsin har använd cartetisk till polär-konverteringsfunktion och dess invers någon gång i hp42s - växla 'modes' går mycket fortare.)

----

jag har haft sedan länge en hp42S emulator i mina datorer då jag börja bli rädd om min fortfarande fungerande fysiska exemplar, men då dess hp42S prom-image är copyright av HP så har jag inte kunnat hänvisa till denna som referens och lägga upp denna för avhämtning på FTP i mina tidigare räkneinlägg.

hp42s kompatibla räknaren jag hittade referens till kallas 'free42'

formatting link

och är skriven av en entusatisk snubbe med start i slutet av förra året. Knapplayout etc. är identiskt med orginal hp42s men mer schematiskt upplagt och inte 'fotografiskt' som hp42s-emulatorn i färger och form etc.

Allt är reverse engineerat och skriven i C-kod under GNU-licens med mindre inskränkningar i kompabilitet mot hp42s (och kvarstående buggar). Ironiskt nog har tex. 'double' i IEEE-754 mindre numerisk omfång med 'xxxE308' (och 6160 dB i omfång) gentemot den BCD-baserade hp42s med sina 'xxxE499' (och 9980 dB i omfång), men i gengäld har IEEE-754 15.95 värdesiffor gentemot hp42s 12 värdesiffror.

Dessutom kan man få avvikelse i vissa gränsvärden och avrundningar då IEEE använder basen 2 i sina beräkningar medans hp42s använder basen 10 (BCD) i sina beräkningar (inte ovanligt i gamla datorer) vilket kan ge lite oväntade avrundning vid basomvandlingar och annat med '9.9999999999'istället för '10'.

Jag har inte forskat ut hur kompatibel den är ännu då jag precis har hitta denna, men bara sådan enkel sak som att arcus sinus av 2 (ASIN(2)) gav '1.5708 -i1.3170' eller i polär visning gav '2.0498 |_ -39.9765' grader (samma som äkta varan hp42s) visar att den klarar något som

99.9% av alla världen miniräknare och miniräknarprogram _inte_ klarar och detta utan att ställa in i någon speciell 'complex mode'.

kollar ytterligare genom att prova 'arcus cosinus hyperbolic' av 0.5 som _skall_ ge ett komplex svar - här av free42 '1.0472 |_ 90.00 grader' eller i cartetisk mode '0.000 i1.0472 ' vilket också är identiskt med med den fysiska exemplaret - imponerande, äntligen!!!

Försök med detta på en hp33s som anses, vara en 'scientific' kalkylator... - för att klara detta så måste man gå upp till hp48G++ eller TI89 i kalkylatorväg om man skall köpa något så kapabelt idag.

i programvara för PC så handlar det om matematica/mathcad

I programeringsspråk får man gå till LISP, möjligen FORTRAN och C++ för att hitta motsvarande kapabilitet matematiskt sett.

---

någon kanske minns att hyperboliska funktioner användes när man skall räkna ut resistiva dämpare av signaler eller matching mot olika impedanser som 50 till 75 Ohm etc. i elektriska nät - där var min kommentar att så länge man hade resistiva laster så kunde man räkna ut på förenklat sätt med förenklade ekvationer med vanlig räknare (i reell plan) men om man jobbar i komplexa laster så är en komplexkapabel räknare även på hyperboliska funktioner mer eller mindre nödvändig om man inte är en fena i matematik - vilket utesluter hp33s då stacken inte räcker till för att hålla alla talparen när man måste operera med y^x i komplex mode i långa rader för att simulera hyperboliska funktioner med komplexa argument (ok, man kan säkert programera sekvenserna, men...).

---

Med följande operation:

'0' 'enter' '2nd complex' 'sto' '+' och sedan markera 'regs' i displayen (eller knappen under på fysisk räknare)

- så har man gjort alla default 00-25 snabblagringsregister (dvs 'sto 00'... 'sto 25') så att dessa kan lagra komplexa tal - dessvärre inte default vid leverans och därmed har 90% av alla hp42s-användare missat hela miniräknaren styrka när det gäller hantering av komplexa tal mer eller mindre sömlöst.

vad kan den här miniräknare då - mycket, men dolt bakom menyer och ansågs 'besvärlig', vilket torde inte vara någon bekymmer idag med dagens nalleknappande publik.

Förutom de vanliga matematiska funktioner som trigometri, logaritmer och och exponenter och hyperbolic - givetvis med full komplex stöd på samtliga funktioner så har den solver, numerisk intergrering, matriser, då förstås också komplexa matriser, vektorer och linjära ekvationssystem med komplexa koefficienter, vilket passar för som som håller på med elektriska nät med ingående L och C och inte bara resistanser (dvs arbetar med impedanser).

dessvärre klarar inte solvern komplex artmetik, men det kanske har sina förklaringar...

sedan fins det förståss lite tråkig statistik med vägda medelvärde och standardavvikelse med kurvanpassning och prognoser etc.

ja, givetvis är den också programerbar....

jo, förresten, en användbar pryl som jag använder ganska ofta är 'base' för att räkna om mellan binär, hexadecimal, oktalt, och förståss decimalt - vilket betyder att räknaren är användbar för programerare också - och kan räkna heltal med +-/* i vald visningform plus lite logiska operationer som and,or,exor etc.

---

Observera att detta är inte någon superduper räknare med inbyggd matematica/mathcad med färdiga besselfunktioner och fouriertransform eller kan räkna symboliskt etc. men som 'vanlig' räknare så är den mycket kompetent och skriker inte error hela tiden - gör man roten av '-1' så svara denne förståss med '0 i1' eller '1 |_ 90 grader' precis som en riktig räknare skall göra och inte med 'error' som tyvärr allt för många gör.

---

(PS: jag har den svenska manulen på papper, om intresset är stort och regnig semester så kanske jag kan tänka mig att skanna in den, annars så finns den på Nätet i engelsk form, men kan vara lite svårfångad.

Manualen är fakiskt riktig bra och lärorik gentemot vad som skickas med idagens moderna räknare numera)

/TE

Reply to
torbjorn.ekstrom
Loading thread data ...

+torbjorn.ekstrom wrote [jätteklipp ]

[jätteklipp]

Alltid trevligt när man hittar ett program som löser just det man vill :)

Men nu hoppas jag att du har berättat det för programmeraren också, jag har som vana att alltid göra detta med program jag gillar, speciellt på "smala" program kan detta göra oerhört mycket för programmerarens lust att fortsätta på programmet, feedback från användare är oändligt mycket viktigare än man tror på fri mjukvara.

Jag vet inte hur många gånger man har mailat och berömt ett program och man får ett svar tillbaka från en glad upphovsman som ibland till och med får den där extra gnistan att fortsätta utveckla pga detta.

Reply to
Glenn

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.