Sida 1 av 2
Matematikmjukvara i Ubuntu/Linux
Postat: 04 okt 2007, 22:35
av DeepThought
christer skrev:
Deriverar och integrerar med BC.
Skriver böcker och romaner med Openoffice. Klarar krånglig matematik med Calc
Vad är BC? Jag tänkte nämligen lära mig lite vettiga alternativ till MatLab och Mathematica, eftersom jag knappast kommer att ha råd/lust att köpa dem när jag slutar studera. Just nu sitter jag med GNU Octave (+GNUPlot), och tänkte testa Maxima framöver.
SV: M$ nya slogan ”köp en dator betala för två”
Postat: 04 okt 2007, 23:29
av gasol
DeepThought skrev:
christer skrev:
Deriverar och integrerar med BC.
Skriver böcker och romaner med Openoffice. Klarar krånglig matematik med Calc
Vad är BC? Jag tänkte nämligen lära mig lite vettiga alternativ till MatLab och Mathematica, eftersom jag knappast kommer att ha råd/lust att köpa dem när jag slutar studera. Just nu sitter jag med GNU Octave (+GNUPlot), och tänkte testa Maxima framöver.
Yo jag brukar också använda Octave fungerar ganska bra, dock inte helt kompatibel med Matlab =/ , jag saknar några funktioner, bland annat sparse samt svds. För glesa matriser, vet du några sånna implementationer till Octave?
SV: M$ nya slogan ”köp en dator betala för två”
Postat: 05 okt 2007, 15:35
av DeepThought
gasol skrev:
DeepThought skrev:
christer skrev:
Deriverar och integrerar med BC.
Skriver böcker och romaner med Openoffice. Klarar krånglig matematik med Calc
Vad är BC? Jag tänkte nämligen lära mig lite vettiga alternativ till MatLab och Mathematica, eftersom jag knappast kommer att ha råd/lust att köpa dem när jag slutar studera. Just nu sitter jag med GNU Octave (+GNUPlot), och tänkte testa Maxima framöver.
Yo jag brukar också använda Octave fungerar ganska bra, dock inte helt kompatibel med Matlab =/ , jag saknar några funktioner, bland annat sparse samt svds. För glesa matriser, vet du några sånna implementationer till Octave?
Jag vet att det i versioner från och med 2.9 av Octave finns implementerat iallafall grundläggande verktyg för glesa matriser
1. Tyvärr verkar inte svds och eigs vara ordentligt implementerade än. Sedan är det väl kört med MatLabs toolbox:ar (t.ex. wavelet-toolbox).
Det står en del om sparse här:
http://www.sce.carleton.ca/faculty/adler/publications/2006/bateman-adler-octave2006-sparse-matrix.pdf
Lite mer info om funktionalitet (sparse, svds etc.) här:
http://sedumi.mcmaster.ca/component/option,com_joomlaboard/Itemid,77/func,view/id,435/catid,14/limit,6/limitstart,6/
Här listas nya funktioner i version 2.9.N och 3.0.N:
http://www.gnu.org/software/octave/FAQ.html
(Jag flyttar ut denna diskussion ur tråden, då den är lite OT)
SV: Matematikmjukvara i Ubuntu/Linux
Postat: 05 okt 2007, 15:47
av Hylas
DeepThought skrev:
christer skrev:
Deriverar och integrerar med BC.
Skriver böcker och romaner med Openoffice. Klarar krånglig matematik med Calc
Vad är BC? Jag tänkte nämligen lära mig lite vettiga alternativ till MatLab och Mathematica, eftersom jag knappast kommer att ha råd/lust att köpa dem när jag slutar studera. Just nu sitter jag med GNU Octave (+GNUPlot), och tänkte testa Maxima framöver.
Jag undrar också vad BC är.
/Hylas
SV: Matematikmjukvara i Ubuntu/Linux
Postat: 05 okt 2007, 16:29
av TicToc
bc is an arbitrary precision numeric processing language. Syntax is similar to C, but differs in many substantial areas. It supports interactive execution of statements. bc is a utility included in the POSIX P1003.2/D11 draft standard.
Since the POSIX document does not specify how bc must be implemented, this version does not use the historical method of having bc be a compiler for the dc calculator. This version has a single executable that both compiles the language and runs the resulting `byte code'. The byte code is not the dc language.
SV: Matematikmjukvara i Ubuntu/Linux
Postat: 05 okt 2007, 17:13
av fuze
Nån som har testat SCILAB? Den skall vara ett liknande program som Matlab.
SCILAB:
<a class="postlink" href="http://www.scilab.org">http://www.scilab.org</a>
ps3forums:
http://www.ps3forums.com/archive/index.php/t-50696.html
SV: Matematikmjukvara i Ubuntu/Linux
Postat: 19 jan 2008, 13:06
av christer
Om man i terminalen skriver man bc får man en manual för bc.
Flytta omkring med scroll knappen och avsluta med att trycka på q.
Skriv bc -l och du är inne i bc skriv quit och du är ute ur bc.
skriv 2*4 enter och du får 8
skriv 1/7 och du får 0 om du öppnat bc med endast bc och med 20 decimaler
öppnat med bc -l
skriv scale=300 du ställer in antalet decimaler till exempelvis 300
skriv sedan 1/7 och du får svaret mycket noggrannt.
Läs exemplen i man bc. Jag tror det är datorspråket c eller c++ som är gångbart.
Skriv 4*a(1) och du får pi eller 4 gånger arcustangenten för 1 radian
öppna med bc -l
skriv
x=0;
dx=0.000001;
y=sqrt(1-x*x);
a=y*dx;
while (x<1){x=x+dx; a=a + dx * sqrt(1-x*x);}
print 4 *a
svaret skall bli 3,1415 eller pi.
Svaret och genomräkningen kan dröja länge. Det skall ju räknas igenom en million gånger 1/0.000001.
Vi har integrerat en kvart cirkel mer radien 1.
ekvationen kvadratroten ur (1 - x2 ) är mycket svår att integrera,
men den kan ju skrivas sqrt((1 - x*x)
Hittar inget, som kan plotta kurvor och vara lika behändigt som urgammalt Mathcad.
bc är däremot oslagbart beträffande nogrannhet, men kan vara krångligt,
då man måste förstå en liten del av C språket. Krångliga definitioner av variabler behövs
däremot inte inte heller main, include define och liknande som tillhör c++
SV: Matematikmjukvara i Ubuntu/Linux
Postat: 19 jan 2008, 20:43
av per9000
En kollega (som är python-fantast) pratar sig varm om SciPy
http://scipy.org/
Jag har läst i några forum att många av scipy's inbyggda operationer är mycket snabbare än de i t.ex. Matlab.
Octave 3 kom nyss ut tror jag och jag är ganska säker på att Octave från 2.9 hade glesa matriser i alla fall delvis implementerat - jag har till och med för mig att jag tittar på källkoden.
/Per
SV: Matematikmjukvara i Ubuntu/Linux
Postat: 19 jan 2008, 21:16
av christer
bc behöver inte hämtas. Det är ett terminalprogram, som finns med i alla Linux och Unix versioner.
Det är ju helt gratis och varje Ubuntuanvändare har det redan.
Det borde också finnas kurs på internet om bc.
Har för mig att nästan allt kan göras med bc.
SV: Matematikmjukvara i Ubuntu/Linux
Postat: 21 feb 2008, 15:36
av christer
Kmplot är ett program, som ritar och beräknar.
Kunde inte integrera x^2 mellan 1 och 3. Integralen ritas och integrerar denna mellan 1 och 3
Octave verkar likna bc. Skall försöka lära mig något för att se på vilket sätt det är bättre än bc.
Kan Octave rita kurvor ?
SV: Matematikmjukvara i Ubuntu/Linux
Postat: 21 feb 2008, 17:11
av Konservburk
christer skrev:
Kan Octave rita kurvor ?
ja
SV: Matematikmjukvara i Ubuntu/Linux
Postat: 21 feb 2008, 20:18
av Lars
christer skrev:
Octave verkar likna bc. Skall försöka lära mig något för att se på vilket sätt det är bättre än bc.
Kan Octave rita kurvor ?
Octave är en halvdan klon av Matlab, och alltså betydligt kraftfullare än bc. Testa t.ex. plot(0:.1:2*pi, sin(0:.1:2*pi)). Om du vill lära dig mer så kan du googla efter både Octave och Matlab, det mesta fungerar på samma sätt.
SciPy kan kanske vara intressant också, i alla fall om man gillar Python.
SV: Matematikmjukvara i Ubuntu/Linux
Postat: 21 feb 2008, 22:13
av christer
Fick felmeddelande: gnuplot not found.
Octave verkar vara bättre och enklare än bc. Ett mera högtstående språk.
bc är också kraftfullt om man övergår till det arbetssamma c/c++.
Läser på
http://www.gnu.org/software/octave/doc/interpreter/
men det är den svårlästa formen. Finns handboken som nedladdningsbar
i pdf-format ? Det eviga hoppandet från rubrik till rubrik tillhör inte min lästeknik.
Installerade gnuplot och fick felmeddelande:
christer-desktop:~$ plot(0:.1:2*pi, sin(0:.1:2*pi))
bash: syntax error near unexpected token `0:.1:2*pi,'
SV: Matematikmjukvara i Ubuntu/Linux
Postat: 21 feb 2008, 22:26
av Lars
plot(0:.1:2*pi, sin(0:.1:2*pi)) är ett kommando som fungerar i Octave/Matlab.
SV: Matematikmjukvara i Ubuntu/Linux
Postat: 21 feb 2008, 23:33
av christer
Fick nu en prydlig sinuskurva.
( copy paste hade i något skede blandat på 0 och O )
SV: Matematikmjukvara i Ubuntu/Linux
Postat: 21 feb 2008, 23:34
av jogu
Vill man använda matematiken för statistik beräkning och grafik kan jag rekommendera R,
http://www.r-project.org/ (paketen r-base och r-base-core i förrådet)
SV: Matematikmjukvara i Ubuntu/Linux
Postat: 22 feb 2008, 12:36
av christer
Skepparn påstod att Octave är värdelöst. Det behövs minst 9 decimaler noggrannhet helst 10. Med Octaves 4 decimaler kan man bara navigera med 10 km noggrannhet. Lantmätarens råsten kommer också att bli placerad 1 km när.
bc , som har koll på decimalerna är däremot helt oslagbart.
Hur får man ökat antal decimaler i Octave ?
SV: Matematikmjukvara i Ubuntu/Linux
Postat: 22 feb 2008, 13:02
av Konservburk
christer skrev:
Hur får man ökat antal decimaler i Octave ?
Men octave håller koll på fler decimaler än 4 även med format short.
SV: Matematikmjukvara i Ubuntu/Linux
Postat: 22 feb 2008, 13:06
av Lars
Jag tänkte inte på att bc stödjer godtycklig precision. Octave räknar med den noggrannhet som hårdvaran stödjer (normalt double, 64-bitars flyttal, IEEE 754). Kommandot "format long" gör att fler decimaler visas ("help format" om du vill veta mer).
SV: Matematikmjukvara i Ubuntu/Linux
Postat: 22 feb 2008, 13:22
av christer
Tack för hjälpen.
Octave blir tydligen mera användbart vartefter man blir mera påläst.
Nu bör det också duga för kaptenens koordinater.
octave:2> 2.000000012 * 4
ans = 8.0000
octave:3> format long
octave:4> 2.000000012 * 4
ans = 8.00000004800000
octave:5>