The Command Line. Palaižot programmu, lietotājam ir redzama komandas rinda.
Izmantojot šo logu var ierakstīt komandas. Ar taustiņa F2 palīdzību kursors nonāk "Komandas rindā".
The O-Matrix Menu Bar. Kā parasti Windows vidē ir vairākas izvēlnes:
File - tā var tikt izvēlēta, lai:
nodzēstu patreizējo darba lauku,
izveidotu jaunu vidi,
strādātu ar jau eksistējošām programmām,
izdrukātu rezultātu,
Izietu no programmas;
Edit - ir tādas komandas, kā Cut, Copy, Paste, Undo, Sellect all, Find;
Command - šī izvēlne var tik lietota, lai izmantotu jau esošu failu, lai formatētu izvadi;
Debug - tiek lietota, lai iegūtu komandas, kuras meklē kļūdas;
Graphics - var iegūt plaši pazīstamas grafiku komandas, veidot jaunus logus, kā arī mainīt diagrammas, koordinātes un teksta laukus;
Options - tiek lietots, lai saglabātu noteiktu konfigurāciju - skaitļu izvadīšanas formātam, loga izkārtojumam un fontiem;
Window - tiek izmantots, lai veidotu loga izkārtojumu;
Tools,
Help - programmai ir ļoti labs Help fails.
The O-Matrix Toolbar - dotajai programmai ir tādas pogas, kā izveidot jaunu programmas vidi, atvērt esošu programmu, saglabāt programmu, meklēt kļūdas, kā arī palaist programmu. Ar šo pogu var pārslēgties no komandu rakstīšanas uz kļudu meklēšanu un otrādi.
The Command Window - tiek rakstītas ievadkomandas un izvaddati. Attēlā redzams Komandu logs.
The Debugger Window - tur neuzrādās tikai kļūdas, bet arī komandas izpilde pa solītim un rezultāti.
Graphics Windows - logs, kurā tiek veidoti grafiki.
Editor Windows - tā ir vide, kas ir līdzīga NotePade, kurā tiek rakstītas programmas.
Programma strādā ar mainīgajiem, kuru vērtības var būt skaitlis (vērtību piešķir - x = a, kur a ir skaitlis), rindas vektors (x = [1 , 2, 3]), kolonas vektors (x = {2, 3, .2}), matrica (x = {[1, 2], [0, 1]}). Tāpat kā programmāēšanas valodās arī dotajā programmā var definēt konstantes ar komandu - const. (Programma strādā arī ar kompleksajiem skaitļiem.) Kā mainīgos var definēt arī vārdus un simbolus, tikai jāņem vērā, ka, ja lietotājs vēlas definēt vārdu - simbolu virkni, tad tā ir jāliek pēdiņās, ir arī mainīgie true, false (patiess, aplams). Šī programma ir domāta netikai uzdevumu risināšanai, bet dažādu matemātisku problēmu, uzdevumu programmu rakstīšanai.
Šajā programmā var uzzīmēt dažādus grafikus, pimēram, līknes var zīmēt ar komandām: gplot(y), gplot(x,y), gplot(x,y,z) - zīmē dažādas līnijas, turklāt var izvēlēties kāda veida līniju lietotājs vēlas, punktotu, ar trīstūrīšiem, zvaigsnītēm utt. (Attēlā redzami visi iespējamie līniju veidi.)
Piemērs Grafiks funkcijām y=cos(x) un y=x ar zvaigznītēm, un x vērtības no 0
līdz 6.
ginit
x = 0. : .2 : 6
y = [x, cos(x)]
gplot(x, y, "star")
Attēlā redzams rezultāts.
Grafikiem dotajā programmā var mainīt krāsu (komanda - gcolor), var zīmēt gan divās, gan trijās dimensijās. O-Matrix var zīmēt gan Dekarta koordināšu sistēmā, gan polārajās koordinātēs.
Šī programma var veikt dažādas operācijas ar matricām. Ar komandu size(x) var noteikt matricas rindu un kolonu skaitu, t.i., size(x)=[m,n], kur m ir matricas x rindu skaits, bet n - kolonu skaits, bet ar komandu rowdim(x) nosaka matricas x rindu skaitu, bet ar komandu coldim(x) nosaka matricas x kolonu skaitu. Šajā programmā ir arī iespēja mainīt matricu dimensiju, piemēram, matricu 3*4 var pārveidot par matricu 2*6, to var veikt ar komandu dim y(m,n), kur y ir mainīgais, m - rindu skaits, n - kolonu skaits. Elementus vektorā var noteikt, ievadot x(n), kur n ir vektora x n-tais elements, ar šo komandu var arī izmainīt šo elementu, piešķirt citu vērtību. Līdzīga komanda ir arī matricām x(m,n), kur m ir matricas x rindiņa un n - kolona. Var norādīt arī matricas kolonu vai rindiņu ar komandām x.row(m), x.col(n). Programmā ir iespējams veidot apakšvektorus un matricas.
Dotajā piemērā programma izdos sekojošu rezultātu:
{
[ 1, 2 , 3 ]
[ 7 , 8 , 9 ]
}
Vektoru var izveidot ar komandu indices = {}, kur iekavās norāda, kurus elementus. Tāpat var norādīt kolonas, tikai ar komandām cols = {} un x(:, cols), kā arī var norādīt gan rindas, gan kolonas ar gala komandu x(rows, cols). Doto piemēru turpinot.
cols = {1, 3}
x(:, cols)
Rezultāts:
{
[ 1 , 3 ]
[ 4 , 6 ]
[ 7 , 9 ]
[ 10 , 12 ]
}
Turpinot piemēru, ievadot:
x(rows, cols)
Rezultāts:
{
[ 1 , 3 ]
[ 7 , 9 ]
}
Programmā var izveidot dažādu veidu matricas:
identity(x) - izveido n*n vienības matricu;
zeros() - izveido matricu, kas sastāv no nullēm, ja iekavās norāda vienu skaitli, tad izveido kvadrātveida matricu, ja divus - tad pirmais skaitlis norāda rindiņu, otrais kolonu skaitu;
ones() - izveido matricu,kas sastāv no nullēm, ja iekavās norāda vienu skaitli, tad izveido kvadrātveida matricu, ja divus - tad pirmais skaitlis norāda rindiņu, otrais kolonu skaitu;
fill - izveido matricu, kas sastāv no matricām;
fillcols(x,n) - izveido matricu , kas sastāv no kolonas vektora x, kurš ir ņemts n reizes;
fillrows - izveido matricu , kas sastāv no rindas vektora x, kurš ir ņemts n reizes;
seq(n) - izveido kolonas vektoru, kuram ir n elementi un i-tais elements ir vienāds ar i, t.i., sākas ar 1, tad ir 2 utt.;
toeplitz - šīs funkcijas argumenti ir divi vektori, no kuriem funkcija izveido sekojošu matricu:
vander(x) - izveido matricu v no argumenta x, kurš ir vektors pēc sekojošas formulas jaunās matricas v[i,j]=x[i]^(n-j) (n ir vektora x garums);
hankel - izveido Hankela matricu;
hilb - izveido Hilberta matricu;
invhilb - izveido inverso matricu Hilberta matricai;
tril - izveido apakšējo trijstūra matricu;
triu - izveido augšējā trijstūra matricu;
u.c.
Programma var veikt dažādas operācijas ar matricu rindām un kolonām, piemēram:
sort - sakārto matricas rindas augošā secībā;
sort3 - sakārto noteiktas rindas augošā secībā;
psort - funkcijas rezultāts ir kolonas vektors, kura elementi ir matricas rindu numuri, kuri ir sakāroti tā, ka matricai būtu sakārtotas rindas augošā secībā;
reverse - apgriež matricas rindas otrādi;
flipud - apgriež matricas rindas otrādi;
fliplr - apgriež matricas kolonas otrādi;
rot90 - pagriež matricu pa 90 grādiem;
nonzeros - izveido vektoru, kuram ir tie paši elementi,kas dotajam, tikai ir izņemtas nulles;
ir arī dažādas meklēšanas funkcijas.
Protams, O-Matrix var veikt parastās aritmētiskās darbības - saskaitīšanu, atņemšanu, reizināšanu, dalīšanu - gan ar skaitļiem, gan ar vektoriem, gan ar matricām. Kā arī ir loģiskās operācijas gan ar skaitļiem (== - vienāds, <> - nav vienāds, > - lielāks, < - mazāks, >= - lielāks vienāds, <= - mazāks vienāds), gan loģikām izteiksmēm (and, or, not). Programma kā atbildi loģiskām operācijām dod - T (patiess), F (aplams).
Matricas inverso matricu var iegūt ar komandu inv(x).
Dotā programma vēl piedāvā sekojošas komandas ar matricām:
kron(a,b). Dotā komanda izveido jaunu maticu, kura izskatās sekojoši:
a(1, 1) b a(1, 2) b ... a(1, n) b
a(2, 1) b a(2, 2) b ... a(2, n) b
: : : :
a(m, 1) b a(m, 2) b ... a(m, n) b
m ir rindu dimensija, bet n - kolonu.
trace(x) izrēķina matricas x elementu summu, kuri atrodas uz diognāles.
det(x) izrēķina kvadrātveida matricai x determinantu.
rank(x) nosaka matricas x rangu.
y = pinv (x) - rezultāts ir tāda veida matrica, ka x * y * x = x un y * x * y = y.
[L, U] = lu(X) - veic matricas X LU faktorizāciju.
x' matricas x transponentā matrica (matrica, kurai rindas ir samainītas ar kolonām).
sākums : solis : beigas veido kolonas vektoru, kura pirmais elements ir sākums un pēdējais beigas, katrs nākošais tiek iegūts iepriekšējam pieskaitot soli (soli var arī nerakstīt, tad tas automātiski tiek pieņemts par vieninieku.
kā arī ir citas funkcijas un komandas saistītas ar lineāro algebru un matricām.
Aplūkotajā programmā ir sekojošaas algebriskās funkcijas:
abs - absolūtā vērtība;
sqrt - kvadrātsakne;
max - maksimums;
pmax - vērtība ir [m,n], kur m ir rinda un n - kolona, kurā atrodas maksimālais elements;
maxs - vērtība ir matricas maksimālais parametrs;
mins - vērtība ir matricas minimālais parametrs;
conj - aprēķina kompleksā skaitļa saistīto;
imag - arēķina kompleksā skaitļa imagināro daļu;
sign - zīmju funkcija;
floor - daļveida daļa no apakšas, ar šo funkciju var aprēķināt arī daļveida daļu no apakšas uzreiz visiem matricas elementiem;
ceil - daļveida daļa no augšas, ar šo funkciju var aprēķināt arī daļveida daļu no augšas uzreiz visiem matricas elementiem;
round - noapaļošana;
roundoff - noapaļošana matricām;
mod - moduļa funkcija;
rem - atlikuma funkcija;
factorl - rēķina faktoriāļus;
primes(x) - vērtība ir pirmskaitļu virkne, kuras pēdējais loceklis ir mazāks vienāds par x;
u.c.
Programmā ieklāutās trancedentās funkcijas:
acos - arkkosinuss;
asin - arksinuss;
atan - arktangenss;
cos - kosinuss;
cosh - hiperboliskais kosinuss;
exp - eksponenciālā funkcija;
log - naturāllogaritms;
log10 - logaritms pie bāzes desmit;
sin - sinuss funkcija;
sinh - hiperboliskais sinuss;
tan - tangenss;
tanh - hiperboliskais tangens;
log2 - logaritms pie bāzes divi;
pow2(x) - divi x-tajā pakāpē;
atan2(x,y) - inversā funkcija tangensam x/y;
angle(x) - aprēķina leņķi starp Re(x) un Im(x) (reālo un imagināro daļu);
asinh - inversā funkcija hiperboliskajam sinusam;
acosh - inversā funkcija hiperboliskajam kosinusam;
atanh - inversā funkcija hiperboliskajam tangensam.
Programmā ir definēti šādi programmēšanas operātori:
if ... then ...
begin ... end
for ...=... to ...
while ...
break
label...
goto...
halt.
Dotajai programmai ir vēl dažādas iespējas, kuras šeit nav pieminētas, ir ar statistiku saistītas funkcijas un citām nozarēm. Programmai ir ļoti labs help fails, programmas lietošanai ar piemēriem angļu valodā. Šī bezmaksas programmmas versijai ir daudz iespēju un ar šo versiju varētu pilnībā pietikt nelieliem darbiņiem. Atšķirībā no pilnās versijas šeit ir limitēti elementi līdz 6000, programma nevar sastāvēt no vairāk kā 125 simboliem.