Sunteți pe pagina 1din 276

1

CUPRINS
1 Produsul MathCAD; Prezentare general___ 9
1.1 Nouti aduse de Mathcad 2001__________________________________10
1.1 Cerine hard i soft pentru instalare ______________________________11
1.2 Fiiere MathCAD _____________________________________________12
1.3 Mediul de lucru MathCAD; Ecranul MathCAD, ferestre, documente __12
1.4 Structura unui document MathCAD; Noiunea de regiune ___________13
1.5 Tehnici de lucru ______________________________________________14
2 Lansarea comenzilor n MathCAD________ 17
2.1 Bare de unelte (toolbars). _______________________________________18
2.2 Agende electronice (electronic books)_____________________________19
3 Documente MathCAD __________________ 23
3.1 Crearea de regiuni de tip expresie, text sau grafic___________________24
3.2 Constante, variabile, operatori, funcii ____________________________27
3.2.1 Operatori _______________________________________________________28
3.2.2 Constante_______________________________________________________28
3.2.3 Utilizarea de baze de numeraie, altele dect cea zecimal ________________28
3.2.4 Variabile _______________________________________________________29
3.2.4.1 Variabile de tip scalar ___________________________________________30
3.2.4.2 Variabile de tip ir (variabile indexate) ______________________________30
3.2.4.3 Variabile de tip ir de caractere____________________________________32
3.2.4.4 Variabile globale _______________________________________________33
3.2.5 Funcii _________________________________________________________33
3.3 Controlul regiunilor ntr-un document MathCAD__________________34
2
3.4 Editarea i formatarea regiunilor de tip expresie i de tip text ntr-un
document MathCAD________________________________________________ 37
3.4.1 Editarea de expresii_______________________________________________37
3.4.2 Inserarea i tergerea de paranteze; Aplicarea unei funcii _________________38
3.5 Fonturi n expresii matematice. Etichete (tag-uri) __________________ 39
3.5.1 Aplicarea i crearea de etichete _____________________________________42
3.6 Editarea i formatarea regiunilor de tip text. Stiluri ________________ 42
3.6.1 Stiluri _________________________________________________________43
3.6.2 Controlul dimensiunilor unei regiuni de tip text _________________________44
3.7 Formatarea rezultatelor ntr-un document MathCAD______________ 46
3.8 Evaluare documentelor MathCAD_______________________________ 52
3.8.1 Dezactivarea unei ecuaii __________________________________________53
3.8.2 Optimizarea evalurilor ___________________________________________54
3.9 Definirea de hyperlink-uri______________________________________ 55
4 Calcul matriceal numeric ________________ 57
4.1 Crearea unui vector sau a unei matrice ___________________________ 58
4.1.1 Variabile de tip vector sau matrice __________________________________60
4.1.2 Referirea elementelor vectorilor sau matricelor _________________________60
4.1.3 Originea indicilor ________________________________________________62
4.1.4 Limitri asupra dimensiunilor matricelor ______________________________63
4.2 Operatori pentru calcul matriceal _______________________________ 64
4.3 Funcii pentru calcul matricial __________________________________ 66
4.3.1 Descompunerea L U______________________________________________73
4.3.2 Descompunerea Cholesky__________________________________________74
4.3.3 Descompunerea QR ______________________________________________74
4.3.4 Descompunerea SVD (Singular value Decomposition) ___________________74
4.3.5 Exemple de utilizarea a funciilor de cutare n tablouri __________________77
4.3.6 Vectorizri i atribuiri simultane_____________________________________80

4.3.7 Crearea de matrice structurate_______________________________________81
4.3.7.1 Funcia CreateMesh_____________________________________________81
4.3.7.2 Funcia CreateSpace ____________________________________________85
5 Reprezentri grafice ____________________ 87
5.1 Grafice 2D ___________________________________________________88
5.1.1 Grafice de tip X-Y________________________________________________88
5.1.2 Formatarea graficelor de tip X-Y ____________________________________90
5.1.3 Grafice n coordonate polare________________________________________93
5.1.4 Formatarea graficelor n coordonate polare ____________________________94
5.1.5 Controlul vizualizrii graficelor 2D __________________________________94
5.1.5.1 Facilitatea de tip Trace (urmrire a valorilor de pe grafic) _______________94
5.1.5.2 Facilitatea de tip Zoom (controlul factorului de mrire) _________________97
5.2 Grafice 3D ___________________________________________________99
5.2.1 Grafice de tip suprafa ____________________________________________99
5.2.2 Grafice de tip curbe de nivel (Contour Plot) ___________________________104
5.2.3 Grafice de tip puncte distribuite n spaiu (3D Scatter Plots) ______________105
5.2.4 Grafice de tip 3D Bar ____________________________________________107
5.2.5 Formatarea graficelor 3D _________________________________________109
5.3 Grafice de tip Vector Plot______________________________________115
5.3.1 Formatarea graficelor de tip Vector _________________________________116
6 Rezolvarea numeric a ecuaiilor i a sistemelor
de ecuaii ______________________________ 117
6.1 Rezolvarea ecuaiilor algebrice _________________________________118
6.2 Rezolvarea ecuaiilor transcendente _____________________________118
6.3 Rezolvarea sistemelor algebrice liniare __________________________120
6.4 Rezolvarea sistemelor neliniare_________________________________121
4
6.5 Rezolvarea aproximativ a sistemelor neliniare ___________________ 124
7 Derivare i integrare numeric. Calcul de sume
i produse ______________________________ 125
7.1 Derivarea numeric __________________________________________ 125
7.2 Integrarea numeric _________________________________________ 127
7.3 Calcul de sume i produse _____________________________________ 128
8 Utilizarea unitilor de msur n documentele
Mathcad________________________________ 131
8.1 Mod de lucru _______________________________________________ 132
8.2 Definirea de uniti de msur _________________________________ 133
8.3 Modificarea unitilor de msur n care este exprimat un rezultat __ 134
8.4 Alegerea sistemului de uniti de msur utilizat i controlul formatului
de afiare a rezultatelor cu uniti de msur __________________________ 136
8.5 Utilizarea UM n calculul integral sau diferenial__________________ 139
9 Schimb de informaie ntre Mathcad i alte
aplicaii. ________________________________ 141
9.1 Inserarea unei componente Excel _______________________________ 142
9.2 Inserarea unei componente MATLAB___________________________ 147
9.3 Inserarea unei componente de tip baz de date ___________________ 151
9.4 Inserarea unei componente de tip Input Table ____________________ 159
9.5 Inserarea unei componente de tip control MathSoft _______________ 160

9.6 Inserarea unei componente de tip citire (Read), scriere (Write) din/n
fiiere 163
9.7 Funcii predefinite pentru citirea/scrierea din/n fiiere de date ASCII 166
10 Programare n Mathcad________________ 169
10.1 Prezentare general_________________________________________170
10.2 Instruciunea de test (if) _____________________________________173
10.2.1 Definirea de funcii pe intervale. ____________________________________174
10.3 Instruciuni de ciclare _______________________________________175
10.3.1 Instruciunea for ________________________________________________175
10.3.1.1 Calculul sumei primelor n numere naturale _______________________175
10.3.1.2 Calculul lui n! ______________________________________________175
10.3.1.3 Bucl FOR cu incrementare nentreag___________________________175
10.3.1.4 Instruciunea while __________________________________________176
10.3.1.5 Calculul lui n! ______________________________________________177
10.3.1.6 Gsirea primului element al unui vector mai mare dect o anumit valoare
177
10.4 Controlul execuiei programelor ______________________________178
10.4.1 Secvena break _________________________________________________178
10.4.2 Secvena continue _______________________________________________178
10.4.3 Secvena return _________________________________________________180
10.4.4 Secvena on error________________________________________________180
10.5 Subrutine (program n program)______________________________182
10.6 Recursivitate ______________________________________________183
11 Calcul simbolic _______________________ 185
11.1 Prezentare general_________________________________________186
11.2 Modaliti de evaluare simbolic______________________________188
11.2.1 Evaluarea cu ajutorul operatorului de evaluare simbolic_________________188
6
11.2.2 Evaluarea cu ajutorul operatorului de evaluare simbolic i a cuvintelor cheie 189
11.2.3 Modificatori de cuvinte cheie ______________________________________198
11.2.4 Utilizarea succesiv sau simultan a mai multor cuvinte cheie ____________198
11.2.4.1 Utilizarea succesiv a mai multor cuvinte cheie ____________________199
11.2.4.2 Utilizarea simultan a mai multor cuvinte cheie____________________199
11.2.5 Evaluarea cu ajutorul meniului Symbolics ____________________________200
11.2.6 Controlul formatului rezultatelor simbolice ___________________________205
12 Animaie n MathCAD _________________ 207
12.1 Crearea i rularea unei animaii ______________________________ 208
12.2 Salvarea unei animaii ______________________________________ 211
12.3 Rularea unei aplicaii salvate anterior _________________________ 212
13 Operatori personalizai _________________ 215
13.1 Introducere _______________________________________________ 216
13.2 Definirea i utilizarea operatorilor personalizai ________________ 217
14 Fiiere ablon (template) ________________ 219
14.1 Introducere _______________________________________________ 220
14.2 Crearea unui [fiier] ablon__________________________________ 222
14.3 Modificarea unui ablon ____________________________________ 224
15 Formatarea de pagin i tiprirea n Mathcad
225
15.1 Formatarea de pagin ______________________________________ 226
15.2 Tiprirea _________________________________________________ 228

16 Interpolarea i extrapolarea datelor. Metode de
regresie. _______________________________ 231
16.1 Interpolarea datelor n 2 dimensiuni ___________________________232
16.1.1 Funcia linterp __________________________________________________233
16.1.2 Funcia interp __________________________________________________234
16.1.3 Funciile scpline, pspline i lspline __________________________________234
16.2 Interpolarea datelor n 3 dimensiuni ___________________________236
16.3 Extrapolarea datelor________________________________________240
16.4 Regresie liniar i neliniar __________________________________242
16.4.1 Regresia liniar _________________________________________________242
16.4.2 Regresia polinomial (neliniar) ____________________________________243
16.4.3 Regresie polinomial 3D (neliniar) _________________________________248
16.4.4 Aproximarea datelor prin utilizarea unor combinaii liniare de funcii _______249
16.4.5 Aproximarea datelor prin utilizarea unor funcii arbitrare ________________251
17 Prelucrarea semnalelor - Analiza Fourier _ 255
17.1 Calculul integralei Fourier ___________________________________256
17.2 Calculul Transformrii Fourier Discrete _______________________259
18 Probleme de valori i vectori proprii _____ 267
18.1 Baza teoretic _____________________________________________268
18.2 Valori i vectori proprii generalizai ___________________________269
18.3 Valori i vectori proprii neliniari ______________________________270
Bibliografie_____________________________ 275

8


9
1 Produsul MathCAD; Prezentare
general

Obiective


Familiarizarea cititorului cu facilitile oferite de Mathcad
Introducerea unor noiuni primare despre fiierele i structura
documentelor Mathcad
Prezentarea mediului de lucru Mathcad i a unor tehnici de
lucru


1 Produsul MathCAD; Prezentare general___ 9
1.1 Introducere ..................................................................................................10
1.2 Nouti aduse de Mathcad 2001.................................................................10
1.1 Cerine hard i soft pentru instalare .........................................................11
1.3 Fiiere MathCAD........................................................................................12
1.4 Mediul de lucru MathCAD; Ecranul MathCAD, ferestre, documente..12
1.5 Structura unui document MathCAD; Noiunea de regiune....................13
1.6 Tehnici de lucru...........................................................................................14

Numr de pagini 7
Capitolul 1
10

MathCAD este un produs soft destinat rezolvrii problemelor ce implic efectuarea de
calcule matematice, de la simple formule pn la rezolvarea de ecuaii, sisteme de
ecuaii, ecuaii difereniale, calcul integral, calcul matricial, att la nivel numeric ct i
la nivel simbolic. Mathcad permite trasarea de grafice (2D i 3D), prelucrarea de
imagini, interaciunea cu fiiere de date, precum i cu alte aplicaii rspndite (Excel,
Axum, Smartsketch).
Produsul este destinat studenilor, specialitilor din industrie i cercetare, cadrelor
didactice din nvmntul mediu i superior.
Marea for a MathCAD este interfaa de lucru (desktop-ul MathCAD), deosebit de
prietenoas i care utilizeaz tehnica WYSIWYG (What You See Is What You Get),
astfel nct att aspectul documentelor MathCAD, dar mai ales modul de completare
(generare) sunt identice cu cele care s-ar obine/utiliza n cazul folosirii hrtiei i
creionului (de subliniat c documentele MathCAD pot conine i seciuni de comentarii,
deci de text, ceea ce le va face mult mai uor de neles). Mai mult dect att,
documentele MathCAD pot fi evaluate integral n mod automat ori de cte ori se
produce o modificare n structura lor, astfel c ntotdeauna rezultatele afiate vor
reflecta starea curent (instantanee) a documentului.

Versiunea 2001 a produsului pune la dispoziia utilizatorului o serie de noi faciliti,
succint descrise n paragrafele urmtoare:
Accesare de componente SGBD. Este posibil conectarea la baze de date.
Componenta de accesare [a bazelor de date] permite efectuarea de operaii de
interogare a oricrei baze de date compatibile SQL.
Achiziie de date. Este posibil att achiziia ct i trimiterea de date n timp
real de la/ctre dispozitive acceptate de Mathcad.
1.1 Introducere
1.2 Nouti aduse de Mathcad 2001
Produsul MathCAD; Prezentare general
11
Faciliti de generare de elemente (casete de dialog) de control. Mathcad 2001
permite crearea de butoane sau casete de text cu ajutorul crora se poate
mbuntii interactivitatea documentelor de lucru.
Modulul de dezvoltare (SDK). Permite crearea rapid de componente Mathcad,
inclusiv documentaie sau exemple la nivel de cod.
Compatibilitate fiiere wav. Mathcad citete, scrie i poate extrage informaie
pentru fiiere n format pulse cod modulated (PCM) Microsoft Wav, cu
ajutorul noilor funcii wav.
Faciliti WEB. Mathcad ofer posibilitatea salvrii documentelor n format
HTML, cu elemente MathML (Mathematical Markup Language) incluse i implicit
citirea lor cu oricare din browser-ele curente.
Crearea de documentaii electronice (Electronic Books). Astfel de documente
pot conine legturi de tip hyperlink i regiuni de tip index. Este disponibil i un
mecanism de detectare a erorilor documentaiilor electronice (HBK debugging).
Import de fiiere imagine. Versiunea 2001 permite importul de imagini ntr-o
gam larg de formate (JPEG, GIF i PCX), n afar de formatul BMP, disponibil
i la versiunile mai vechi. O imagine odat importat, exist posibilitatea
procesrii acesteia (faciliti de zoom, decupare, control strlucire, contrast,
culoare, orientare).
Noi funcii. Au fost introduse, pe lng numeroasele funcii Mathcad cunoscute
de la versiunile mai vechi, funcii pentru transformarea de coordonate, sau
funcii pentru cutarea de valori n tablouri de mari dimensiuni.

Structura minim necesar instalrii i utilizrii versiunii Mathcad 2001 este
urmtoarea:
Pentium 133MHz sau compatibil;
CD-ROM drive;
Windows 95 sau superior, Windows NT 4.0 sau superior;
Cel puin 32 MB RAM (64 MB este o valoare recomandat);
1.3 Cerine hard i soft pentru instalare
Capitolul 1
12
Pentru utilizarea comod a Help-ului, este recomandat instalarea Internet
Explorer 4.0, Service Pack 2, sau mai nou.

Dei MathCAD va genera la instalare un mare numr de fiiere de tipuri (i deci cu
extensii) foarte diverse, utilizatorul obinuit, trebuie s rein n aceast faz c
executabilul principal este mcad.exe, fiierul help principal este mcad.hlp, dar mai ales
c extensia implicit a fiierelor de lucru MathCAD este *.mcd. Fiierele ablon
(template), despre care se va vorbi ntr-unul din capitolele viitoare, au extensia *.mct.
De interes sunt i fiierele readme.mcd, sau readme.txt, care conin informaii de ultim
or despre MathCAD (ulterioare editrii manualelor de utilizare). Ambele conin acelai
lucru, doar c readme.mcd poate fi citit ca document MathCAD. Este recomandabil ca
dup instalare, s se creeze cel puin un director de lucru, care s conin fiierele
*.mcd generate de utilizator. Aceasta deoarece nu este bine ca fiierele create de
utilizator s se amestece cu cele ce fac parte din pachetul iniial de fiiere MathCAD.

Ca orice fereastr Windows, i cea n care va opera MathCAD, are o bar de titlu, o
zon de meniuri pull-down, precum i mai multe bare de instrumente (toolbars)
dintre care unele sunt asemntoare ca aspect i funcionalitate cu cele ce apar la
multe aplicaii Windows. Exist i o zon de stare (n partea inferioar a ferestrei
MathCAD), cursoare vertical i orizontal, precum i butoanele pentru controlul strii
ferestrei (n partea din dreapta sus).
MathCAD creeaz documente, sau foi de calcul, similare, aa cum s-a mai spus, ca
aspect i mod de completare cu foile de hrtie pe care s-ar scrie cu creionul. MathCAD
permite deschiderea simultan a mai multor documente, dintre care doar unul este
activ la un moment dat. Dac nu este strict necesar nu se va abuza de aceast
facilitate, deoarece orice document deschis (chiar dac nu este activ), consum resurse
1.4 Fiiere MathCAD
1.5 Mediul de lucru MathCAD; Ecranul MathCAD, ferestre,
documente
Produsul MathCAD; Prezentare general
13
ale sistemului, ceea ce, n cazul unor documente de mari dimensiuni poate duce la
reducerea vitezei de lucru n mod inutil.
Fiecare document MathCAD fiineaz tot ntr-o fereastr (ce poate fi controlat ca orice
fereastr n mediul Windows), cu observaia c ferestrele n care se gsesc
documentele MathCAD nu pot s se gseasc dect n spaiul de lucru al ferestrei
aplicaiei MathCAD. Ferestrele document pot fi aranjate n sistem dale (tile) sau
cascad ca orice ferestre n mediul Windows. Controlul ferestrelor document se face
din meniul Window.
n figura 1.1 este prezentat fereastra MathCAD cu dou documente deschise i
aranjate n sistem dale pe vertical. Documentul activ este cel din dreapta.


Fig. 1-1 - Fereastra MathCAD




1.6 Structura unui document MathCAD; Noiunea de regiune
Capitolul 1
14

Pe spaiul de lucru al unui document MathCAD se pot insera trei mari tipuri de obiecte
: expresie, text, grafic. Zona ocupat de un astfel de obiect, se va numi regiune. Tot n
figura 1.1 sunt prezentate cele trei tipuri de obiecte.
Zonele ncadrate cu dreptunghiuri desenate cu linie ntrerupt delimiteaz regiunea
ocupat de un obiect. Prin utilizarea tehnicii drag and drop, regiunile pot fi mutate
oriunde pe document (regiunile se pot chiar suprapune, ceea ce n general nu este de
dorit), iar unele regiuni de exemplu cele de tip grafic pot fi scalate dup un
mecanism asemntor cu cel folosit la controlul dimensiunilor unei ferestre n mediul
Windows (deci prin aducerea pointerului de mouse fie n colul din dreapta jos al
regiunii selectate, fie pe laturile vertical dreapta sau orizontal jos). Selectarea unei
regiuni (care va avea ca efect apariia dreptunghiului desenat cu linie ntrerupt n jurul
regiunii) se face prin plasarea pointerului de mouse n vecintatea obiectului i
deplasarea lui nspre obiect cu butonul din stnga apsat. De subliniat c n aceast
manier pot fi selectate mai multe regiuni simultan.
O regiune selectat poate fi deplasat prin plasarea pointerului de mouse n interiorul
ei pn cnd acesta se transform n +. Din acest moment, cu butonul din stnga
apasat se va trage regiunea (sau regiunile) pn la noua poziie. ntr-un document
MathCAD, se pot folosi dou cursoare. Unul se va utiliza pentru inserarea de obiecte de
tip expresie sau grafic, iar cellalt pentru inserarea obiectelor de tip text. Cele dou
cursoare sunt un semn plus de culoare roie, respectiv o bar verical de culoare roie.
Deplasarea cursorului +, se face fie prin utilizarea grupului de sgei , , , , fie
prin utilizarea mouse-ului (la un simplu clic n poziia curent a pointerului de mouse
(care este identic cu cel implicit al mediului Windows) deci sgeata pe direcia SE-NV
- se va insera cursorul +.



Aa dup cum s-a menionat, MathCAD folosete tehnica WYSIWYG, ceea ce presupune
ca una din consecine, inserarea n document a unor simboluri care nu se regsesc pe
1.7 Tehnici de lucru
Produsul MathCAD; Prezentare general
15
tastatur (semnul pentru radical, integral, sum, produs etc). Inserarea lor se poate
face fie prin utilizarea unor combinaii de taste (short-cuts), fie prin utilizarea grupului
de butoane corespunztor ales dintre cele aparinnd paletei de butoane Math:



n ceea ce privete combinaiile de taste care pot fi folosite pentru inserarea
simbolurilor nedisponibile la tastatur, se recomand consultarea seciunii Help
Operators.
Este posibil i inserare n documentele MathCAD a caracterelor greceti (fie utilizarea
grupului de butoane , fie mai simplu, prin tastarea literei corespunztoare din
alfabetul latin, urmat de combinaia de taste CTRL + G).
O alt particularitate a modului de operare a MathCAD, este utilizarea poziiilor de
scriere premarcate, aa numitele place-holdere. Astfel n cazul n care se dorete
inserarea ntr-un document a unei expresii de forma

3
1
2
) sin( dx x , se va insera la
poziia curent a cursorului (prin utilizarea paletei de butoane ) operatorul
integral definit, care n prima faz va arta ca mai jos :



Cele patru dreptunghiuri de culoare neagr, se numesc n MathCAD place-holdere.
Rolul lor este de indica utilizatorului unde (i deci cte) s fie elementele expresiei ce
trebuie completate. Pn cnd toate aceste poziii de scriere premarcate nu sunt
completate, expresia nu poate fi utilizat. Trecerea de la un place-holder la altul se face
fie prin utilizarea grupului de sgei , , , , sau a tastei TAB, sau nc, prin
utilizarea mouse-ului.
Place-holder
Capitolul 1
16
Orice tip de regiune dintr-un document Mathcad, poate suporta operaiile de copiere
(Copy, Paste), mutare (Cut, Paste), sau tergere (Delete). Pentru aceste operaii,
se va utiliza meniul Edit, combinaii de taste (regsite tot n meniul Edit), sau tehnica
meniului pop-up (care se poate deschide printr-un simplu clic dreapta pe zona de lucru
a unui document Mathcad).

17
2 Lansarea comenzilor n MathCAD

Obiective


Prezentarea structurii de meniuri Mathcad
Prezentarea barelor de unelte Mathcad
Prezentarea agendelor electronice standard


2 Lansarea comenzilor n MathCAD________ 17
2.1 Meniuri MathCAD; Prezentare general.................................................18
2.2 Bare de unelte (toolbars). ...........................................................................18
2.3 Agende electronice (electronic books) .......................................................19

Numr de pagini 2
Capitolul 2
18


Aa dup cum s-a menionat deja, aplicaia MathCAD dispune de propriul sistem de
meniuri pull-down. Utilizarea lor nu prezint nici un fel de particulariti care s le
diferenieze de orice meniu pull-down. Chiar n timpul lucrului n MathCAD, se pot
obine informaii despre funciile fiecrui cmp al fiecrui meniu, prin apsarea
simultan a tastelor SHIFT+F1. Pointerul MathCAD se va transforma prin ataarea
unui semn de ntrebare. Orice clic pe un cmp al unui meniu pull-down, va avea ca
efect nu lansarea unei comenzi, ci deschiderea unei ferestre de tip help care va
conine informaii succinte despre efectul activrii cmpului respectiv. Apsarea tastei
ESC, va determina transformarea pointerului modificat n cel obinuit.

n cazul butoanelor, simpla zbovire a pointerului de mouse deasupra unui buton va
determina apariia unei mini ferestre n care sunt date explicaii (la nivel de unu dou
cuvinte) despre funcia butonului n cauz. n afar de cele dou bare de unelte cu
structur cel puin parial asemntoare cu cea a barelor de unelte compatibile
Microsoft (n figura 2.1 barele de pe rndurile doi i trei de pe bara de meniuri),
MathCAD mai dispune i de apte palete de butoane organizate n bara de unelte
Math, vizibil i ea n figura 2.1.


Fig. 2-1 - Barele de unelte MathCAD

Apsarea unuia dintre butoanele barei de unelte Math, va avea ca efect apariia
propriu-zis a paletei [cu butoanele] aferente. Cele nou palete de butoane au
urmtoarele funcii :
2.1 Meniuri MathCAD; Prezentare general
2.2 Bare de unelte (toolbars).
Lansarea comenzilor n MathCAD
19
Paleta aritmetic. Ea conine butoane pentru inserarea n documente a
cifrelor precum i a operatorilor de calcule matematice (*, +, -, radical etc);
Paleta operatorilor booleeni. Conine operatori de tipul <, >, diferit,
egal, evaluare, atribuire etc;
Paleta pentru reprezentri grafice. Conine butoanele pentru inserarea
n documente a diferitelor tipuri de grafice;
Paleta de calcul matriceal. Conine butoane dedicate calculelor cu
vectori i matrice;
Paleta pentru calculul de sume, produse, limite, derivate i integrale;
Paleta pentru inserarea n documentele MathCAD a structurilor de
programare (bucle FOR, WHILE, blocul decizional IF etc);
Paleta caracterelor greceti. Conine butoane pentru inserarea n
documente a caracterelor alfabetului grecesc;
Paleta operatorilor de evaluare. Conine butoanele ce insereaz n
documente operatorii de evaluarea numeric i simbolic;
Paleta ce conine cuvintele cheie pentru evalurile simbolice.
Poziia oricrei palete pe spaiul de lucru MathCAD se poate modifica prin utilizarea
tehnologiei drag and drop.

Agendele electronice MathCAD sunt colecii de formule i relaii matematice i
inginereti, constante fizice, proprieti de material, precum i alte informaii utile.
n principiu o agend electronic (handbook) este o colecie de documente Mathcad
integrate ntr-un fiier cu extensie *.hbk.
2.3 Agende electronice (electronic books)
Capitolul 2
20
Deschiderea unei agende se poate face cu ajutorul cmpului Help Open Book.
Unul din subdirectoarele create la instalarea Mathcad-ului se numete chiar HANDBOOK
i conine o agend numit solve.hbk.
Cmpul Help Handbooks Solving and Optimization Extension Pack
determin i el deschiderea unei agende electronice (de aceast dat chiar cea
anunat prin titlu).
O agend odat deschis, ofer utilizatorului posibilitatea de a naviga cu ajutorul unei
bare de instrumente specializat, ale crei butoane au funcii uor de bnuit (sau de
aflat prin meninerea pointerului de mouse deasupra fiecruia din ele).
Un alt exemplu de agend electronic, este chiar aa numitul Resource Center.
n figura 2.2 este prezentat fereastra Resource Center. Accesul la oricare din cele
trei mari componente, Overview and Tutorials, QuickSheets and Reference
Tables, respectiv Extending Mathcad, se poate face printr-un simplu clic cu mouse-
ul pe butonul respectiv.


Fig. 2-2 - Resource Center

De un interes aparte este componenta QuickSheets and Reference Tables, care
este de fapt o colecie de documente Mathcad exemplu, deosebit de interesante i care
trebuie cercetate cu atenie chiar de utilizatorul cu oarecare experien.
Lansarea comenzilor n MathCAD
21
De subliniat c una din facilitile de mare utilitate ale agendelor electronice, sau a
documentelor coninute n seciunea QuickSheets and Reference Tables, este
posibilitatea de a realiza transfer de informaii prin copiere (din agend ntr-un
document MathCAD). Copierea propriu zis se face n maniera clasic, adic printr-o
secven de tip Copy Paste.
De interes sunt i cmpurile Help Developers Reference i respectiv Help
Authors Reference.
n principiu, ambele sunt destinate utilizatorilor avansai de Mathcad. Primul furnizeaz
indicaii pentru generarea de biblioteci dinamice (*.dll) cu ajutorul crora se pot defini
noi funcii Mathcad. Aceast operaie necesit cunotine de programare n C++, Java,
sau Visual Basic.


23
3 Documente MathCAD

Obiective


nsuirea tehnicilor de creare a diferitelor tipuri de regiuni
Prezentarea metodelor de control, formatare i editare a
regiunilor
Prezentarea metodelor de evaluare a documentelor
Mathcad

3 Documente MathCAD __________________ 23
3.1 Crearea de regiuni de tip expresie, text sau grafic...................................24
3.2 Constante, variabile, operatori, funcii .....................................................27
3.3 Controlul regiunilor ntr-un document MathCAD.................................34
3.4 Editarea i formatarea regiunilor de tip expresie i de tip text ntr-un
document MathCAD ................................................................................................37
3.5 Fonturi n expresii matematice. Etichete (tag-uri)...................................39
3.6 Editarea i formatarea regiunilor de tip text. Stiluri...............................42
3.7 Formatarea rezultatelor ntr-un document MathCAD..........................46
3.8 Evaluare documentelor MathCAD............................................................52
3.9 Definirea de hyperlink-uri .........................................................................55

Numr de pagini 28
Capitolul 3
24

Aa dup cum s-a artat deja n 1.5, ntr-un document MathCAD pot exista trei tipuri
de regiuni : expresii, comentarii (regiuni de tip text) sau grafice.
Se reamintete c la cursorul + se insereaz fie expresii, fie grafice, iar la cursorul | ,
regiuni de tip text. La versiunea 2001, se poate insera text i fr precizarea explicit a
acestui lucru. Pur i simplu se scrie, iar la tastarea primul [caracter de tip] spaiu,
Mathcad nelege c este vorba de text i nu de numele unei variabile sau unei funcii.
Se impune totui pruden, penru c scrierea unui singur cuvnt poate produce
confuzii, cci Mathcad va interpreta acel cuvnt ca pe numele unei variabile sau funcii.
Acest lucru este de evitat, pentru c n Mathcad, numele unei variabile trebuie s apar
ntr-o expresie (cum se va vedea mai trziu), sau trebuie urmat de operatorul de
atribuire (:=, ), sau de evaluare (=, =).
Pentru crearea n mod explicit a unei regiuni de tip text, se va utiliza cmpul Insert
Text Region (cu prescurtarea ).
n cazul regiunilor de tip grafic, se va utiliza pentru inserare unul din cmpurile
submeniului Insert Graph.
Spre exemplificare se va crea un document MathCAD cu o structur simpl i care
realizeaz definirea unei variabile de tip ir de valori, a unei funcii pentru care se
obine i reprezentarea grafic. Documentul va conine i comentarii sub forma a dou
regiuni de tip text.
Etapele n crearea documentului sunt :

1. Din meniul File se puncteaz pe cmpul New (sau se folosete direct
shortcut-ul CTRL + N, sau nc, se folosete butonul )
2. La poziia curent a cursorului MathCAD se tasteaz urmtoarea secven:



x : 0 ; 20 a : 3
3.1 Crearea de regiuni de tip expresie, text sau grafic
Documente MathCAD
25
f(x) : (x^3-a)/(x^2+1)


Pe documentul MathCAD va apare scris :

Acest comportament este consecina modului de lucru WYSIWYG, pe care
MathCAD-ul l folosete. n exemplul de mai sus, apsarea lui : a produs operatorul
de atribuire MathCAD (acelai cu cel folosit de Pascal de exemplu), apsarea lui ; a
produs inserarea simbolului ce indic intervalul de variaie a unei variabile (aici x ia
valori ntregi ntre 0 i 20), iar apsarea lui / a produs o linie de fracie n adevratul
neles al cuvntului.
Din punct de vedere logic cele dou rnduri ale documentului MathCAD prezentate mai
sus, definesc o variabil cu numele x i care ia valori ntregi ntre 0 i 20, o variabil
numit a, creia i se atribuie valoare 3 i respectiv o funcie pentru care variabila x
definit mai sus este chiar argument (variabila a intervine ca parametru n expresia
funciei).
Ordinea n care regiunile de tip expresie incluse n document sunt poziionate este
extrem de important. Se va reine ca o regul de baz, c MathCAD citete
documentele de la stnga la dreapta i de sus n jos, astfel c orice variabil ce
intervine ntr-o expresie trebuie definit naintea (deci la stnga sau deasupra)
expresiei propriu-zise, dup cum orice funcie folosit pentru trasarea unui grafic se va
defini la stnga sau deasupra graficului.
Pentru a continua exemplificarea, se va insera n document i graficul n coordonate xy
al funciei definite. Pentru aceasta se va poziiona cursorul la dreapta i sub definiia
funciei i se va activa cmpul Insert Graph X-Y Plot. La poziia curent a
cursorului va apare o regiune de tip grafic la care se vor completa numai marcatorii de
la jumtile axelor ox i oy, ca n figura 3.1.a. Un simplu clic n interiorul graficului, sau

Spaiile lsate au doar rolul de a face expresia mai lizibil i nu sunt permise ntr-un
document MathCAD
Capitolul 3
26
apsarea tastei F9 va produce desenarea [graficului], aa cum se poate vedea n figura
3.1.b.

Acest comportament este consecina modului de lucru WYSIWYG, pe care
MathCAD-ul l folosete. n exemplul de mai sus, apsarea lui : a produs operatorul
de atribuire MathCAD (acelai cu cel folosit de Pascal de exemplu), apsarea lui ; a
produs inserarea simbolului ce indic intervalul de variaie a unei variabile (aici x ia
valori ntregi ntre 0 i 20), iar apsarea lui / a produs o linie de fracie n adevratul
neles al cuvntului.
Din punct de vedere logic cele dou rnduri ale documentului MathCAD prezentate mai
sus, definesc o variabil cu numele x i care ia valori ntregi ntre 0 i 20, o variabil
numit a, creia i se atribuie valoare 3 i respectiv o funcie pentru care variabila x
definit mai sus este chiar argument (variabila a intervine ca parametru n expresia
funciei).
Ordinea n care regiunile de tip expresie incluse n document sunt poziionate este
extrem de important. Se va reine ca o regul de baz, c MathCAD citete
documentele de la stnga la dreapta i de sus n jos, astfel c orice variabil ce
intervine ntr-o expresie trebuie definit naintea (deci la stnga sau deasupra)
expresiei propriu-zise, dup cum orice funcie folosit pentru trasarea unui grafic se va
defini la stnga sau deasupra graficului.
Pentru a continua exemplificarea, se va insera n document i graficul n coordonate xy
al funciei definite. Pentru aceasta se va poziiona cursorul la dreapta i sub definiia
funciei i se va activa cmpul Insert Graph X-Y Plot. La poziia curent a
cursorului va apare o regiune de tip grafic la care se vor completa numai marcatorii de
la jumtile axelor ox i oy, ca n figura 3.1.a. Un simplu clic n interiorul graficului, sau
apsarea tastei F9 va produce desenarea [graficului], aa cum se poate vedea n figura
3.1.b.
Documente MathCAD
27


a. b.
Fig. 3-1 - Inserarea unui grafic ntr-un document MathCAD

Pentru a-l face mai uor de neles, se vor insera n document i dou regiuni de tip
text. Una deasupra graficului i una la sfritul documentului. Pentru aceasta se va
utiliza cmpurl Insert Text Region.
n final micul document MathCAD, va arta ca n figura 3.2.


Fig. 3-2 - Documentul MathCAD rezultat

3.2 Constante, variabile, operatori, funcii
Capitolul 3
28

Orice expresie MathCAD, este format din operanzi i operatori. Operanzii sunt nume
de variabile, de funcii, valori numerice sau constante predefinite. Pentru operatori, se
poate porni de la simplii operatori aritmetici (+, -, /, *) i se poate ajunge la operatori
specializai pentru calcul matriceal de exemplu.
Operatorii cei mai folosii sunt cei aritmetici : +, -, *, ^ (ridicarea la putere), /, la care
se adaug o gam larg de operatori scalari sau vectoriali specifici diferitelor tipuri de
operaii matematice.
n MathCAD exist 6 constante matematice predefinite : (cu shortcut-ul CTRL + z),
(cu shortcut-ul p + CTRL + g), e (se va tasta pur i simplu e), i (se va tasta 1i i NU
1*i), j (se va tasta 1j) i % (se va tasta pur i simplu %). n afara celor 6 constante
matematice predefinite, mai exist i un numr de 4 constante sistem, despre care se
va face vorbire ntr-un paragraf urmtor. Constantele i %, au respectiv valorile
10
307
i 0.01.
n Mathcad este posibil lucrul n bazele de numeraie, 10, 2, 8 i 16. Pentru a opera cu
valori scrise n bazele 2, 8 i 16, se vor insera literele b (de la binar), o (de la octal),
respectiv h (de la hexa), dup valoarea propriu zis, asa cum se poate vedea n
exemplul de mai jos:

Fig. 3-3 Utilizarea bazelor de numeraie
3.2.1 Operatori
3.2.2 Constante
3.2.3 Utilizarea de baze de numeraie, altele dect cea zecimal
Documente MathCAD
29

Se remarc faptul c n cazul scrierii n baza 16, dac valoarea ncepe cu una din
literele a, b, c, d, e sau f, este obligatorie inserarea unui 0 iniial (pentru a se evita
confuzia cu o variabil de tip ir de caractere).
n MathCAD numele unei variabile (regul valabil i pentru numele de funcii), poate
conine oricare din urmtoarele caractere :
Caracterele alfabetului latin, a..z, A..Z;
Cifrele de la 0 la 9;
Caracterul _, simbolul
Caracterul %
Caracterele alfabetului grec
Simbolul infinit
Un nume de variabil nu poate ncepe cu o cifr sau cu unul din caracterele _, ,
sau %.
Toate caracterele dintr-un nume de variabil trebuie s fie de acelai tip, n sensul c
trebuie s aparin aceluiai font, s aib aceeai dimensiune i acelai stil (bold, italic,
underlined etc). Deci nu pot fi folosite caractere latine i greceti n acelai nume de
variabil. MathCAD face diferena ntre majuscule i minuscule, astfel c variabila
timp este diferit de variabila TIMP.
n figura 3.4 sunt prezentate cteva exemple de variabile MathCAD.

Fig. 3-4 - Variabile MathCAD

Se atrage atenia c n cazul variabilei a
min
, indicele min este pur descriptiv i nu
indic n nici un fel poziia variabilei ntr-un ir de valori. n MathCAD este posibil s se
scrie a[1 (se va vedea a
1
) unde indicele 1 spune c este vorba de prima valoare
dintr-un ir (sau primul element al unui vector), dar se poate scrie i a.1 (se va vedea
3.2.4 Variabile
Capitolul 3
30
tot a
1
), unde indicele 1 este pur descriptiv, n sensul c putea fi nlocuit cu indicele
unu. Primul tip de indice (asupra cruia se va reveni) se obine cu secvena a[1, iar
al doilea cu secvena a.1. Se atrage nc odat atenia asupra modului cum se
realizeaz atribuirea de valori variabilelor. Este vorba de operatorul de atribuire :=,
care se obine cel mai uor prin apsarea tastei ;.
n afara variabilelor de tipul celor de mai sus, n MathCAD pot fi definite variabile de tip
scalar, variabile de tip ir, sau de tip ir de caractere
3.2.4.1 Variabile de tip scalar
O secven de tipul :
t:0.3,0.5;2
va produce pe documentul MathCAD efectul :
t:= 0.3, 0.5 .. 2
Acest tip de variabil (e drept o form ceva mai simpl), a fost utilizat n exemplul
prezentat n figura 3.2. Acolo variabila x lua valori ntregi ntre 0 i 20. Era vorba deci
de o progresie aritmetic cu raia 1. n cazul de mai sus este vorba tot de o progresie
aritmetic, de aceast dat cu raia diferit de 1. Semnificaiile notaiei sunt:
Prima cifr indic prima valoare pe care o va lua variabila
A doua valoare definete mpreun cu prima raia progresiei, care este egal cu
valoarea a doua minus prima
A treia valoare indic ultima valoare pe care o va lua variabila.
Deci variabila t va lua valorile : 0.3, 0.5, 0.7, 0.9.1.9.
3.2.4.2 Variabile de tip ir (variabile indexate)
Pot fi definite variabile indexate ca n exemplul de mai jos :
s-a scris :
i:1,5
x[i:i^2+4*i
Produce n documentul
Mathcad:

Indicele i este complet diferit de cel din figura 3.3. Aici i indic poziia ntr-un ir i
trebuie neles exact ca un indice ataat unui vector.
Variabilele de tip ir mai pot fi definite i ca n exemplul de mai jos :
i:1,5
Documente MathCAD
31
y[i:12,23,12,34,22
cea ce va produce n documentul MathCAD :

Orice variabil, indiferent de tip, poate fi evaluat.
Operatorul de evaluare este =, pentru care evident nu este necesar utilizarea nici
unui shortcut.
Astfel pentru evaluarea oricrei variabile, se tasteaz numele variabilei urmat de
operatorul = (evident fr ghilimele) i de apsarea tastei ENTER (CR). n cazul
variabilelor scalare sau de tip ir, se vor obine rezultate ca n figura 3.5. n cazul
variabilei x, se pot face evaluri n dou moduri. Dac se scrie x=, se obine irul de
valori sub forma unui vector, iar dac se scrie x[i=, se obine un format de afiare
asemntor cu cel de la variabilele de tip scalar. De menionat c n cazul unor variabile
cu numr mare de valori, MathCAD nu afieaz dect prime 50 [de valori] din ir.
Capitolul 3
32

Fig. 3-5 - Evaluri de variabile scalare sau de tip ir

3.2.4.3 Variabile de tip ir de caractere
Mathcad 2001 permite definirea de variabile de tip ir de caractere. Definirea este
extrem de simpl i se face ca i n cazul celorlalte tipuri de variabile. Singura diferen
este c valoarea variabilei, va fi nchis ntre ghilimele duble (double quote).
n exemplul din figura 3.6 sunt definite dou variabile, care apoi sunt concatenate
(scrierea fcndu-se tot ntr-o variabil de tip ir de caractere) i n final se realizeaz
evaluarea variabilei sum.


Fig. 3-6 Definire de variabile de tip ir de caractere

Se atrage atenia c valoarea variabilei nume, conine i un spaiu, necesar separrii
prenumelui de nume n cazul irului sum.
Documente MathCAD
33
Asupra funciilor specifice lucrului cu iruri de caractere se va reveni ntr-unul din
capitolele urmtoare.
3.2.4.4 Variabile globale
n 3.1 s-a enunat regula de baz utilizat de MathCAD pentru citirea documentelor.
Exist totui o excepie de la ea. Astfel, se pot defini aa numitele variabile globale,
care pot fi folosite i n expresii situate deasupra sau la stnga definiiei [de variabil].
Aceste variabile sunt citite de MathCAD la nceputul parcurgerii unui document (de
fapt MathCAD parcurge un document de dou ori, prima dat citete atribuirile
globale, iar la a doua citire ia n considerare atribuirile obinuite), deci cu eludarea
regulii enunat 3.1. Pentru definirea unei variabile globale se va folosi [pentru
atribuire] operatorul , care se obine prin apsarea tastei ~. Dac ntr-un
document se gsesc mai multe variabile globale, citirea acestora se face tot dup
regula enunat. Nu se recomand excesul de atribuiri globale n documente MathCAD.
Cum se definete o funcie s-a vzut n exemplele precedente. Se va mai preciza doar
c regulile enunate pentru numele variabilelor i menin valabilitatea i n cazul
numelor de funcii. Pot fi definite i funcii de mai multe variabile. n definirea
funciilor, se folosete tot operatorul de atribuire (: =). Ca i variabilele, funciile pot fi
evaluate. Acest lucru se va realiza tot prin utilizarea operatorului de evaluare, ca n
figura 3.7. Se observ c evaluarea se poate face pentru toate valorile pe care le poate
lua argumentul funciei (se va scrie f(x)=), sau se poate realiza pentru o anume
valoare a argumentului (se va scrie f(1.5)=).

3.2.5 Funcii
Capitolul 3
34













Asupra regiunilor dintr-un document MathCAD pot fi executate mai multe tipuri de
aciuni. Acestea sunt :
Selecia unei regiuni, sau a unui grup de regiuni;
tergerea unei regiuni (sau grup de regiuni);
Copierea unei regiuni (sau grup de regiuni);
Mutarea (deplasarea) unei regiuni (sau grup de regiuni);
Redimensionarea unei regiuni;
Alinierea a dou regiuni;
Separarea regiunilor;
Evidenierea regiunilor dintr-un document;
Inserarea/tergerea de linii goale ntre dou regiuni;
Blocarea regiunilor ntr-un document MathCAD.
Pentru realizarea acestor aciuni, se va folosi meniul Edit. n paragrafele urmtoare vor
fi prezentate comenzile necesare executrii aciunilor enunate mai sus. n ceea ce
privete selecia unei regiuni sau a unui grup de regiuni, trebuie precizat c ea
trebuie s precead ntotdeauna celelalte aciuni ce se pot exercita asupra regiunilor
ntr-un document MathCAD. Pentru selecie se va folosi tehnica drag and drop, specific

Fig. 3-7 - Evaluri de funcii
3.3 Controlul regiunilor ntr-un document MathCAD
Documente MathCAD
35
de altfel i altor aplicaii Windows. Semnul c o regiune sau un grup de regiuni au fost
selectate, este ncadrarea lor n chenare dreptunghiulare, desenate cu linie ntrerupt,
ca n figura 3.8.
Dup selectarea unei regiuni (sau grup de regiuni), tergerea se realizeaz fie prin
utilizarea cmpurilor Cut sau Clear din meniul Edit, fie prin utilizarea butonului
de pe bara de unelte, fie prin utilizarea tastei DEL. Aceste variante NU sunt complet
echivalente. Astfel, cmpul Cut, butonul i tasta DEL, sunt echivalente i dup
tergerea regiunii (sau regiunilor) din documentul MathCAD, plaseaz informaia n
Clipboard, astfel nct ea poate fi restaurat, fie prin utilizarea cmpului Paste din
meniul Edit (restaurarea se va face la poziia curent a cursorului), fie prin utilizarea
cmpului Undo Last Edit, sau a butonului .


Fig. 3-8 - Regiuni selectate

Capitolul 3
36
n acest din urm caz, restaurarea se va face exact pe vechea poziie a regiunii (sau
regiunilor). n cazul ns al cmpului Clear din acelai meniu Edit, informaia tears
nu mai este depus n Clipboard, astfel c tergerea este definitiv.
Copierea sau mutarea unei regiuni (sau grup de regiuni) se realizeaz prin
secvene Copy Paste, respectiv Cut Paste, ca n orice aplicaie compatibil
Windows, aa c nu vor mai fi furnizate detalii suplimentare asupra acestor aciuni. n
cazul deplasrilor unei regiuni (sau grup de regiuni), mai este posibil utilizarea
tehnicii drag and drop, aa cum s-a precizat deja n 1.6.
Redimensionarea unei regiuni presupune ca dup faza de selecie (absolut
obligatorie), deci dup ce regiunea (una singur) este ncadrat de un dreptunghi
desenat cu linie ntrerupt, s se poziioneze pointerul fie pe colul din dreapta jos al
dreptunghiului de ncadrare, fie pe latura vertical dreapta sau orizontal jos, astfel c
pointerul se va transforma fie ntr-o sgeat dubl nclinat, fie ntr-o sgeat dubl
vertical respectiv orizontal, aa cum se poate vedea n figura 3.9. Din acest moment,
cu butonul din stnga al mouse-ului apsat, se trage pn la obinerea noii
dimensiuni a regiunii. Trebuie precizat c nu orice regiune poate suporta
redimensionri. Regiunile de tip expresie nu pot fi redimensionate, dar regiunile de tip
grafic pot.


Fig. 3-9 Redimensionare a unei zone de tip grafic

Ct privete alinierea regiunilor, aceasta se poate realiza pe orizontal sau pe
vertical. Pentru acest scop se pot folosi fie cmpul Align Regions din meniul
Documente MathCAD
37
Format, fie butoanele . Alinierea pe orizontal va produce alinierea regiunilor
selectate, dup o linie imaginar aflat la mijlocul distanei dintre extremitatea
superioar a celei mai nalte regiuni i extremitatea inferioar a celei mai joase regiuni.
Alinierea pe vertical va produce alinierea regiunilor selectate, dup o linie imaginar
aflat la mijlocul distanei dintre extremitatea din stnga a regiunii celei mai din stnga
i extremitatea din dreapta a celei mai din dreapta regiuni. Uneori alinierile pot
produceri suprapuneri ale regiunilor, fapt pentru care se recomand pruden n
utilizarea acestor comenzi.
i n asemenea situaii este posibil separarea regiunilor care se suprapun (total sau
doar parial). Pentru aceasta se va utiliza cmpul Separate Regions din meniul
Format. De menionat c n acest caz nu este necesar selecia de regiuni naintea
separrii.
Trebuie subliniat c separarea regiunilor realizat aa (deci automat), poate produce
efecte nedorite n sensul c poate strica ordinea logic a regiunilor astfel ca regiuni care
nainte de suprapunere se gseau naintea altora, pot ajunge acum dup acestea din
urm. Separri de regiuni se pot face i manual prin deplasarea regiunilor folosind
tehnica drag and drop.
Cmpul View Regions, evideniaz toate regiunile dintr-un document MathCAD.
Efectul va fi colorarea difereniat a regiunilor i respectiv a zonelor libere din
document. n acest fel se poate stabili apartenena fiecrui obiect dintr-un document la
o anumit regiune. Selecia tuturor regiunilor din document se poate realiza cu ajutorul
cmpului Edit Select All.

Construirea unei expresii MathCAD se realizeaz natural prin tastarea cifrelor, literelor i
operatorilor expresiei, n ordinea n care s-ar face acelai lucru pe o foaie de hrtie. S-a
precizat deja n 1.7, c datorit tehnicii WYSIWYG, nu ntotdeauna ceea ce se
tasteaz va apare i n document.
3.4 Editarea i formatarea regiunilor de tip expresie i de tip
text ntr-un document MathCAD
3.4.1 Editarea de expresii
Capitolul 3
38
Editarea unei expresii deja construite presupune n prima etap selectarea sa. Acest
lucru se realizeaz prin punctarea cu mouse-ul n zona expresiei respective.
n funcie de tipul regiunii selectate, n interiorul acesteia va apare fie un cursor
vertical de culoare roie (la regiunile de tip text), fie un cursor de forma __| sau |__,
sau nc _|_, aa cum se poate vedea n figurile 3.11, respectiv 3.10.


Fig. 3-10 Editarea expresiilor


Fig. 3-11 Editarea regiunilor de tip text

Deplasarea cursorului n interiorul regiunii selectate se face cu ajutorul sgeilor
, sau prin simpla punctare ntr-o anumit zon a regiunii. Pentru cazul regiunilor de tip
expresie, deplasarea dintr-o zon ntr-alta se mai poate face prin apsarea tastei
SPACE.
tergerile se fac cu ajutorul tastelor BkSp sau Delete, sau prin selecie a unei poriuni
din expresie sau text urmat de comanda Cut (executat din meniul pull-down, din
bara de instrumente sau din meniul de tip pop-up)
Inserarea unei perechi de paranteze (este preferabil inserrii separate a celor dou),
se face astfel:
Se ncadreaz zona de nchis ntre paranteze ntr-un cursor de tip |___ - vezi
figura 3.12;
Se tasteaz caracterul (virgula).
3.4.2 Inserarea i tergerea de paranteze; Aplicarea unei funcii
Documente MathCAD
39

a.
b.
Fig. 3-12 Inserarea de paranteze

tergerea unei perechi de paranteze se face astfel:
Se amplaseaz cursorul la dreapta caracterului ( (parantez deschis)
Se apas tasta BkSp
Aplicarea unei funcii se face prin parcurgerea etapelor urmtoare:
Se ncadreaz ntre paranteze zona de expresie creia i se va aplica funcia
(care va deveni deci argument pentru funcie). Pentru aceasta se procedeaz
ca mai sus;
Se apas tasta Space, astfel ca s fie selectate i parantezele; Se apas tasta
Ins; Bara vertical a cursorului se va poziiona la stnga parantezei ( (vezi
figura 3.13);
Se scrie numele funciei.

a. b.
Fig. 3-13 Aplicarea unei funcii

3.5 Fonturi n expresii matematice. Etichete (tag-uri)
Capitolul 3
40
Ori de cte ori se tasteaz numele unei variabile (inclusiv ntr-o expresie), MathCAD
aplic irului de caractere care formeaz numele variabilei, eticheta (tag-ul)
Variables. n mod similar, ori de cte ori se tasteaz o valoare numeric (o constant
deci), irului respectiv de caractere i se aplic eticheta (tag-ul) Constants. Etichetele
(tag-urile) sunt deci un fel de tampile care se pun pe numele variabilelor sau
constantelor i care vor avea un rol n identificarea acestora.
Efectul acestui mod de lucru este c n momentul n care se schimb tipul de font
pentru o constant sau variabil, modificarea va afecta toate constantele sau variabilele
cu aceeai etichet, indiferent unde ar fi poziionate in document.
Pentru a ti care sunt caracteristicile etichetei (tag-ul) asociat unei variabile, unei
constante sau unei alte zone dintr-o expresie, se puncteaz pe expresia respectiv,
dup care se activeaz cmpul Format Equation. Pe ecran va apare fereastra
Equation Format, prezentat n figura 3.14. Se apas pe butonul Modify i se
deschide o fereastr de control al atributelor de formatare la nivel de font (din care
rezult care este fontul ataat zonei respective din expresie).


Fig. 3-14 Tag-uri ataate variabilelor sau constantelor

Implicit toate numele de variabile au asignat tag-ul Variables i toate constantele pe
cel numit Constants.
n afara celor dou etichete (tag-uri) despre care s-a fcut deja vorbire, utilizatorul mai
are la dispoziie nc apte etichete, cu numele User1..User7, pe care le poate
aplica unei zone dintr-o expresie care a fost n prealabil selectat - astfel c n afara
Documente MathCAD
41
zonelor care au ataate etichetele Variables sau Constants, pot s mai apar zone
(de fapt tot nume de variabile sau constante) crora li se aplic alte etichete.
Numele User1User7 pot fi modificate n caseta de editare New Style Name din
fereastra Equation Format vezi figura 3-15.


Fig. 3-15 Definirea unei noi etichete

n exemplul de mai jos, expresia conine trei tipuri de zone crora li s-au ataat trei
etichete, cele standard (Variables i Constants), precum i una numit variabila_2.
Din analiza figurii rezult i de ce ar putea fi necesar o asemenea abordare.






ntr-adevr, n expresie apar dou variabile cu acelai nume b, numai c ele nu sunt
scrise cu acelai tip de font, astfel c MathCAD le va trata ca pe dou variabile complet
distincte. Aceasta deoarece numele de variabile sau de funcii sunt, nu numai, ceea ce
n limba englez se numete case sensitive adic dependente de scrierea cu
variables
constants
variabila_2
Capitolul 3
42
minuscul sau cu majuscul, ci se individualizeaz i prin caracteristicile fontului folosit
pentru scrierea lor. Deci b i b, sunt distincte. Aceasta deoarece n individualizarea
unei variabile sau funcii, MathCAD verific n primul rnd eticheta asociat variabilei
sau numelui de funcie i abia apoi citete efectiv numele variabilei.
Pentru definirea de noi etichete, se va proceda astfel :
Se activeaz cmpul Format Equation;
n caseta de editare de sub numele ferestrei, se puncteaz pe cmpul User1;
Textul User1 va apare n caseta de editare New Style Name. Acest text se
nlocuiete cu noul nume al etichetei (ceea ce nu este obligatoriu, dar este
indicat);
Prin utilizarea butonului Modify, se stabilesc caracteristicile de formatare la
nivel de font.
Pentru ataarea unui tag deja creat unei zone dintr-un document MathCAD se va
proceda astfel :
Se selecteaz expresia creia i se va aplica noua etichet;
Se poziioneaz cursorul |__ pe numele de variabil creia i se va aplica
eticheta (care deci se aplic unui nume de variabil sau constant i nu ntregii
expresii);
n meniul Format se puncteaz pe cmpul Equation i din fereastra ce se va
deschide se va selecta numele etichetei pe care dorim s o atam zonei de
expresie selectat.



n cazul regiunilor de tip text, formatarea se poate face, la nivel de caracter, prin
simpla selectare a regiunii de text, urmat de punctarea pe cmpul Format Text.
Cu ajutorul ferestrei Text Format, se vor putea modifica toate caracteristicile de
formatare la nivel de font, ca ntr-un editor de text obinuit.
3.5.1 Aplicarea i crearea de etichete
3.6 Editarea i formatarea regiunilor de tip text. Stiluri
Documente MathCAD
43
Pentru formatarea la nivel de paragraf, se va utiliza cmpul Format Paragraph. El
permite modificarea caracteristicilor de formatare la nivel de paragraf. Este vorba de
opiunile de aliniere, de cele de indentare sau indentare a primei linii, respectiv de
definire de stopuri de tabulare.


Fig. 3-16 Formatare la nivel de paragraf

Mathcad dispune de facilitatea de a utiliza stiluri predefinite, de a le modifica pe
acestea, sau de a crea altele noi. Toate acestea se pot face cu ajutorul cmpului
Format Style , ceea ce va conduce la caseta de dialog prezentat n figura 3.17.




3.6.1 Stiluri
Capitolul 3
44

Fig. 3-17 Stiluri de paragrafe

Modul de lucru cu stiluri este principial identic cu cel folosit de exemplu la editorul de
text MSWORD.
Un stil se poate aplica unui paragraf printr-un procedeu simplu:
- Se selecteaz paragraful cruia i se va aplica stilul;
- Se selecteaz un stil din lista Styles (vezi figura 3-17);
- Se apas butonul Apply.
Dimensiunea zonei ocupat de o regiune de tip text se poate controla manual, cu
ajutorul mouse-ului. Pentru aceasta se vor folosi marcatorii amplasai n zona din
dreapta a regiunii de tip text vezi figura 3-18.


Fig. 3-18 Modificarea dimensiunii zonei ocupat de o regiune de tip text

Dac se dorete ca textul s se extind pn la marginea din dreapta a documentului
(marcat de o linie vertical de culoare gri), se va utiliza cmpul Occupy Page
3.6.2 Controlul dimensiunilor unei regiuni de tip text
Documente MathCAD
45
Width, din caseta Properties. La ea se poate ajunge utiliznd cmpul Format
Properties vezi figura 3-19.


Fig. 3-19 - Controlul dimensiunilor unei regiuni de tip text

Controlul Push Regions Down As You Type, va controla modul cum se va comporta
o regiune de tip text cnd ntlnete o alt regiune. n mod implicit, textul se va
suprapune peste regiunea pe care o ntlnete (aa cum se vede n figura 3-20). Dac
se dorete mpingerea regiunii ntlnite spre n jos, se va bifa controlul Push
Regions Down As You Type vezi figura 3-19.


Fig. 3-20 Comportarea textului la ntlnirea unei alte regiuni

Seciunea Display a casetei Properties (vezi figura 3.21), permite evidenierea
regiunii selectate (Highlight Region), afiarea unui chenar n jurul regiunii (Show
Border), sau ataarea unei etichete de regiunea selectat (Tag), etichet ce va fi
Capitolul 3
46
ulterior folosit la definirea unui hyperlink (de la o alt regiune spre cea pentru care s-a
definit hyperlink-ul).


Fig. 3-21 Seciunea Display a casetei de dialog Properties


Formatarea rezultatelor (obinute n urma evalurii unor expresii sau funcii) n mediul
MathCAD, se poate realiza global sau local. n primul caz, caracteristicile de formatare
se vor aplica tuturor rezultatelor din documentul curent, n cel de-al doilea caz, ele se
vor aplica numai regiunii de tip rezultat selectat anterior operaiei de formatare.
Pentru formatarea global se procedeaz astfel :
Se puncteaz cu mouse-ul oriunde n document, pe o zon liber;
Din meniul Format se activeaz cmpul Result
Pe ecran va apare fereastra Result Format, prezentat n figura 3-22. Pentru
formatare local se procedeaz ca n cazul celei globale, cu diferena c naintea
formatrii propriu-zise se puncteaz pe regiunea (rezultatul) de formatat.

3.7 Formatarea rezultatelor ntr-un document MathCAD
Documente MathCAD
47

Fig. 3-22 Formatare rezultate

Cnd se face formatare local, apare i butonul Set as Default (inexistent n cazul
formatrii globale). Apsarea sa transform formatarea local ntr-una global.
Semnificaiile controalelor ferestrei Result Format sunt n marea lor majoritate foarte
uor de intuit, astfel c nu se va insista dect asupra celor a cror nelegere nu este
imediat.
- Seciunea Number Format (vezi figura 3-22)
Exponential Threshold
n caseta de editare corespunztoare se va introduce o valoarea cuprins ntre 0 i 15.
Fie aceasta n. Rezultatele mai mici dect 10
-n
i mai mari dect 10
n
, vor fi afiate in
notaie tiinific (exponenial).
Show trailing Zeros
n cazul n care caseta de selecie are n interior o bif (un simplu clic pe caset sau
textul din dreapta activeaz sau dezactiveaz bifa), zerourile din coada unui numr
care apar n conformitate cu setarea din seciunea Number of decimal places, sunt
afiate, dei prezena lor nu spune nimic n plus. Dac bifa lipsete, aceste zerouri
inutile nu mai sunt afiate. Astfel dac la Number of decimal places s-a precizat 4,
un rezultat de forma 12/5, va fi afiat ca 2.4, dac exist bif n caseta Show trailing
zeros, respectiv 2.400, dac nu exist.
Number of decimal places
Capitolul 3
48
Stabilete cum e uor de bnuit numrul de zecimale cu care se vor afia rezultatele.
Evident la ultima cifr se va produce o trunchiere a rezultatului. Se poate afia totui un
rezultat cu precizia maxim, se poate proceda astfel:
- Se selecteaz rezultatul;
- Se tasteaz CTRL+SHIFT+N.
- Seciunea Display Options (vezi figura 3-23)


Fig. 3-23 Display Options

Matrix display style
Controleaz modul n care sunt afiate matricile. Stilul Table, introduce (atunci cnd
dimensiunea matricii este suficient de mare) dou cursoare cu ajutorul crora se poate
defila pe spaiul matricii vezi figura 3-24.a.
Stilul Matrix afieaz matricile n forma clasic de scriere vezi figura 3-24.b
Documente MathCAD
49

a.

b.
Fig. 3-24 Afiare de matrice
Capitolul 3
50
Expand nested arrays
n Mathcad este posibil definirea de tablouri (matrice) ale cror elemente sunt vectori
sau matrice. Un astfel de exemplu este prezentat n figura 3-25.a. Se poate observa c
evaluarea unui astfel de tablou, va furniza doar informaia legat de dimensiunile
sub matricelor incluse (A i B n exemplu). Dac se opteaz pentru activarea
controlului Expand nested arrays, atunci rezultatul va fi cel din figura 3-25.b.


a. b.
Fig. 3-25 Vizualizarea tablourilor

Imaginary value
Prin deschiderea listei derulabile se pot alege caracterele folosite (i sau j) pentru
reprezentarea numrului complex i.
Radix
Permite stabilirea bazei de numeraie n care rezultatele vor fi afiate. n cazul n care
se opteaz pentru baza 8 sau 16, rezultatul n zecimal nentreg va fi trunchiat la
valoarea de ntreg, dup care are loc transformarea rezultatului. Acesta va fi urmat de
un h sau un o, dup cum s-a folosit baza 16 sau 8. MathCAD asigur rezultate
corecte pentru valori mai mici dect 2
31
(sau aproximativ 2*10
9
).




Documente MathCAD
51
- Seciunea Tolerance vezi figura 3-26


Fig. 3-26 Seciunea Tolerance

Complex Tolerance
Setarea se refer la modul n care vor fi afiate numerele complexe. Valoarea introdus
n caseta de dialog corespunztoare trebuie s fie un ntreg ntre 0 i 63. Fie acest
numr n i fie numrul complex a+bi. Dac
n
) b , a max(
) b , a min(

< 10
atunci rezultatul complex se va scrie sub forma :
a sau bi
dup cum min(|a|,|b|)=b, respectiv min(|a|,|b|)=a. Sau altfel spus nu se mai afieaz
coeficientul mai mic n valoare absolut, dac raportul dintre valorile absolute ale
coeficientului mai mic, respectiv mai mare, este mai mic dect 10
-n
.
MathCAD lucreaz n continuare cu forma corect (deci complet) a rezultatului, ca
atare precizia rezultatelor nu va fi afectat de aceast setare.



Capitolul 3
52
Zero Threshold
n caseta de editare se va introduce un ntreg ntre 0 i 307. Fie el n. Toate rezultatele
mai mici dect 10
-n
vor fi afiate ca zero, dei n continuare MathCAD va opera cu
valoarea exact.
- Seciunea Unit Display
Controleaz modul n care se vor afia rezultatele ce conin i uniti de msur. n
figura 3-27 sunt prezentate exemple ce ilustreaz efectul activrii sau inhibrii celor
dou controale Format units i Simplify units when possible.





Fig. 3-27 Controlul afirii rezultatelor cu uniti de msur


Prin evaluarea unei variabile sau funcii se nelege calculul valorii variabilei sau funciei
respective. Acest lucru se face principial n dou moduri: automat i manual.
Evaluri automate se realizeaz ori de cte ori se modific ceva n expresia unei
variabile sau funcii. Toate variabilele sau funciile care urmeaz n document sunt
evaluate, realizndu-se automat reactualizarea acestora.
Evalurile manuale se realizeaz la cererea expres a utilizatorului, care se exprim prin
apsarea tastei F9 sau prin utilizarea cmpului Calculate din meniul Math. De
subliniat c n acest caz se va realiza doar o evaluare a expresiilor vizibile pe ecran n
3.8 Evaluare documentelor MathCAD
Documente MathCAD
53
momentul respectiv. Dac se dorete evaluarea ntregului document (deci inclusiv a
zonelor ce nu sunt vizibile pe ecran la un moment dat), se va utiliza cmpul Calculate
Worksheet din acelai meniu Math.
Comutarea ntre evaluarea automat i cea manual se face prin punctarea pe cmpul
Automatic Calculation din meniul Math. Prezena unei bife n stnga cmpului
Automatic Calculation semnaleaz c modul de evaluare automat este activ.
Dei este din multe puncte de vedere mai comod s se fac evaluare automat, dac
documentul MathCAD este de mari dimensiuni i cuprinde calcule laborioase, evaluarea
automat poate deveni stnjenitoare, deoarece de exemplu la orice defilare prin
document (deci fr s se fi fcut vreo modificare), MathCAD evalueaz expresiile din
zona vizibil, ceea ce ncetinete uneori suprtor viteza de lucru. Pentru a ntrerupe un
calcul - o evaluare- (n colul din dreapta jos al ecranului MathCAD, pe linia de stare
este afiat mesajul WAIT atta timp ct se efectueaz efectiv calculul), se apas tasta
ESC. Va apare pe ecran fereastra MathCAD din figura 3-28. Apsarea butonului OK
va ntrerupe evaluarea, ceea ce evident ar putea lsa anumite calcule neterminate (sau
ne actualizate).


Fig. 3-28 ntrerupere forat evaluare

MathCAD evalueaz automat toate expresiile care folosesc variabile asupra crora s-au
efectuat modificri, actualiznd rezultatele (evident dac setarea Automatic
Calculation este activ). Acest lucru poate deveni stnjenitor din motive expuse n
paragraful precedent. Una din modalitile de evitare a acestui gen de neplceri este
dezactivarea lui Automatic Calculation. Nu este ns singurul. Cea de a doua metod
3.8.1 Dezactivarea unei ecuaii
Capitolul 3
54
este dezactivarea selectiv a expresiilor matematice, astfel ca modificarea ulterioar a
acestora s nu aib influen asupra celorlalte expresii din document. Dezactivarea unei
expresii presupune parcurgerea etapelor urmtoare :
Punctare cu mouse-ul pe ecuaia pe care dorim s o dezactivm
Punctarea n meniul Format pe cmpul Properties vezi figura 3-29.


Fig. 3-29 Dezactivarea evalurii

MathCAD va afia dup ecuaia dezactivat un dreptunghi de mic dimensiuni, ca n
exemplul de mai jos:

Reactivarea unei ecuaii dezactivat anterior se va realiza prin acelai procedeu parcurs
n ordine invers.
Cmpul Math Optimization permite activarea sau dezactivarea optimizrii
expresiilor. Dac o expresie este optimizat, nainte de evaluarea numeric se verific
(cu ajutorul procesorului simbolic) dac se mai poate face vreo simplificare. Dac da,
nti se realizeaz simplificarea i abia apoi se efectueaz evaluarea numeric.
n figura 3-30 se prezint un exemplu de optimizare a unei expresii.
3.8.2 Optimizarea evalurilor
Documente MathCAD
55
Optimizarea presupune n prima faz selectarea expresiei. Va urma utilizarea cmpului
Math Optimization. Pentru c expresia este simplificabil, a aprut asteriscul din
partea dreapt (vezi figura 3-30).
Efectuarea unui dublu clic pe expresie va conduce la deschiderea casetei Optimized
Result, n care apare rezultatul evalurii numerice.

Fig. 3-30 - Optimizarea expresiilor

n cazul expresiei din exemplu, se realizeaz simplificarea, deci se ajunge la forma
simplificat a+b i abia apoi se face calculul 5+4=9. Marele avantaj l constituie faptul
c reducndu-se numrul de evaluri (calcule) numerice, se reduce eroarea implicat
de acestea.

Presupune parcurgerea urmtoarelor etape:
Selectarea unei regiuni (int) i ataarea unei etichete (tag) de aceasta vezi
3.5
Selectarea unei regiuni (surs) de care se va lega hyperlink-ul. Pentru aceasta
se folosete cmpul Insert Hyperlink; n caseta de dialog Edit Hyperlink
(vezi figura 3-31) se precizeaz numele fiierului (cu calea de cutare inclus)
care conine regiunea care a primit etichet (chiar dac aceasta se gsete n
3.9 Definirea de hyperlink-uri
Capitolul 3
56
acelai document cu regiunea surs). Dup numele fiierului se insereaz
caracterul #, urmat de eticheta (tag-ul) definit.
Un simplu dublu clic pe regiunea surs (de care s-a legat hyperlink-ul) va produce
accesarea regiunii int (ceea ce poate presupune deschiderea documentului care o
conine dac este altul dect cel care conine regiunea surs).


Fig. 3-31 Definirea de hyperlink-uri

Evident se pot defini i hyperlink-uri la adrese de Internet (legtura se va face la un
URL Uniform Resource Locator).

57
4 Calcul matriceal numeric

Obiective


Familiarizarea cititorului cu facilitile oferite de Mathcad
Introducerea unor noiuni primare despre fiierele i
structura documentelor Mathcad
Prezentarea mediului de lucru Mathcad i a unor tehnici de
lucru


4 Calcul matriceal numeric________________ 57
4.2 Operatori pentru calcul matriceal.............................................................64
4.3 Funcii pentru calcul matricial ..................................................................66

Numr de pagini 26
Capitolul 4
58


MathCAD pune la dispoziia utilizatorilor faciliti de lucru cu vectori i matrice. Acestea
pot fi folosite direct n expresii matematice sau prin intermediul variabilelor de tip
vector sau matrice, aa cum se poate observa i n figura 4.1



Fig. 4-1- Variabile tip vector i matrice

Pentru a crea un vector sau o matrice se parcurg urmtorii pai:
se poziioneaz cursorul n zona dorit n documentul MathCAD;
se activeaz opiunea Matrices din meniul Insert sau se tasteaz Ctrl+M.
Efectul acestei aciuni const n deschiderea unei ferestre de dialog ca cea din
figura 4-2, n care se poate completa numrul de linii i coloane ale matricei,
respectiv vectorului (vectorul este un caz particular de matrice cu o singur
linie sau o singur coloan);

4.1 Crearea unui vector sau a unei matrice
Calcul matriceal numeric
59




Fig. 4-2 Inserarea unei matrice

se completeaz, n casetele corespunztoare, numrul de linii i de coloane
dorit. Se observ c matricea este afiat la poziia indicat i avnd n poziiile
corespunztoare elementelor cte un placeholder (un dreptunghi de culoare
neagr);
se completeaz vectorul sau matricea cu valorile dorite. Pentru aceasta se
puncteaz cu mouse-ul pe placeholder-ul dorit i se tasteaz valoarea
corespunztoare. Se mai poate folosi i tasta Tab, sau grupul de sgei
care permit trecerea de la un placeholder la altul.
Odat definit, unei matrice sau unui vector i se pot modifica dimensiunile prin
tergerea sau adugarea de linii sau coloane. Pentru aceasta se vor parcurge etapele:
se plaseaz cursorul pe un element situat pe linia sau coloana fa de care se
vor face inserri sau tergeri;
se activeaz caseta de dialog de mai sus prin selecia opiunii Matrices din
meniul Insert sau tastnd Ctrl+M (se va observa c n acest moment sunt
active opiunile Insert i Delete);
se tasteaz n casetele corespunztoare numrul de linii i coloane care se
insereaz sau se terg;
se activeaz opiunea dorit (Insert sau Delete) punctnd cu mouse-ul sau
prin combinaiile de taste Alt+I, respectiv Alt+D.
Mecanismul dup care se realizeaz inserrile sau tergerile de elemente ntr-un vector
sau ntr-o matrice este urmtorul (vezi figura 4-3) :
Capitolul 4
60
dac se insereaz linii noi acestea vor fi create sub linia pe care se afl
elementul selectat;
dac se insereaz coloane noi acestea vor fi create la dreapta coloanei pe care
se afl elementul selectat;
pentru a insera o linie nou deasupra primei linii a matricei se marcheaz
ntreaga matrice prin folosirea tastei Space de cte ori este necesar i apoi se
procedeaz ca la o inserare obinuit;
pentru a insera coloane noi la stnga primei coloane se ncadreaz toat
matricea, la fel ca mai sus, i se procedeaz n maniera deja precizat;
tergerea de linii sau coloane se face ncepnd cu linia sau coloana pe care se
afl poziionat elementul selectat.

Fig. 4-3- Inserarea unei linii sau a unei coloane ntr-o matrice

Dup cum s-a vzut n paragraful anterior, cu vectori i matrice se poate lucra n mod
direct, n expresii matematice sau prin intermediul unor variabile de tip corespunztor.
Pentru a defini variabile de tip vector sau matrice se procedeaz la fel ca la atribuirea
unei singure valori numerice. Att doar c, dup tastarea numelui variabilei i a
operatorului de atribuire, se insereaz (cu Ctrl+M) vectorul sau matricea dorit,
conform procedurii specificate mai sus. Din acest moment vectorul sau matricea sunt
legate de variabila definit, aceasta din urm fiind folosit n probleme de calcul
matriceal.
n afar de relaiile de calcul matriceal exist numeroase situaii cnd este necesar
referirea unui anumit element dintr-un vector sau dintr-o matrice. Acest lucru se
realizeaz prin folosirea unor variabile indice de tip ntreg, care indic poziia
elementului n vector, respectiv n matrice.
4.1.1 Variabile de tip vector sau matrice
4.1.2 Referirea elementelor vectorilor sau matricelor
Calcul matriceal numeric
61
Pentru a crea o referin la un anumit element al unui vector se tasteaz numele
vectorului, caracterul [ i valoarea indicelui corespunztor. n cazul matricelor vor fi
folosii doi indici cu precizarea c se va utiliza o secven de taste ca n exemplul
urmtor: A[i,j: valoare. Aceasta are ca efect atribuirea unei valori elementului situat pe
linia i i coloana j a matricei A.
n figura 4.4 sunt prezentate cteva exemple privind referirea elementelor unui vector
i unei matrice. Se poate observa c prin acest procedeu se pot atribui valori anumitor
elemente ale unui vector sau ale unei matrice ori se pot vizualiza aceste elemente.



Fig. 4-4 - Referirea elementelor unui vector sau ale unei matrice

Mecanismul prezentat mai sus este valabil pentru referirea individual a elementelor. Pe
lng acest mecanism, MathCAD permite referirea unei ntregi coloane a unei matrice.
Pentru aceasta se va folosi combinaia de taste Ctrl + ^ sau simbolul corespunztor
din paleta de simboluri Vector and Matrix Toolbar.
Pentru a referi o anumit coloan a matricei M se va tasta numele matricei urmat de
combinaia de taste precizat mai sus. Matricea va primi un indice superior situat ntre
caracterele < >, a crui valoare specific de fapt coloana care se va referi. n figura 4.5
sunt prezentate exemple de referire a coloanelor unei matrice.

Capitolul 4
62

Fig. 4-5 - Referirea ntregii coloane a unei matrice

Referirea elementelor vectorilor sau matricelor presupune utilizarea indicilor.
Valoarea minim a indicelui/indicilor este dat de variabila predefinit numit ORIGIN.
Aceasta este o variabil MathCAD care este implicit setat pe valoarea 0.
Va exista astfel elementul V
0
sau A
0,0
, funcie de caz.
Deoarece acest mod de lucru nu este totdeauna cel mai indicat, valoarea variabilei
ORIGIN poate fi modificat astfel:
se folosete cmpul Math Options. Se va deschide o fereastr de dialog ca
n figura 4-6 i se modific valoarea variabilei ORIGIN.
se atribuie explicit valoarea dorit variabilei ORIGIN, aa cum se atribuie o
valoare oricrei variabile.
Numele variabilei ORIGIN trebuie scris cu majuscule i pot fi definii i indici negativi.

4.1.3 Originea indicilor
Calcul matriceal numeric
63

Fig. 4-6 Modificarea originii indicilor

Cnd se creeaz o matrice sau un vector cu ajutorul cmpului Insert Matrix,
vectorul sau matricea nu pot avea mai mult de 100 de elemente. Pot fi create matrice
sau vectori de dimensiuni mai mari, prin utilizarea uneia din urmtoarele metode:
citirea (vectorului sau matricei) dintr-un fiier de date;
concatenarea vectorilor sau matricelor;
utilizarea variabilelor cu indice (A
i,j
);
crearea aa numitelor input table.
n cazul evalurii unei matrice n sistem Matrix (vezi 3.7), se vor reprezenta maxim
200 de rnduri i coloane.
Exist totui o limit a numrului de elemente pe care le poate avea o matrice sau un
vector i acest numr depinde de memoria intern a sistemului de calcul. Un milion de
elemente este o valoare n general acceptat, dar limita impus de Mathcad este de 8
milioane de elemente.
4.1.4 Limitri asupra dimensiunilor matricelor
Capitolul 4
64

Pentru folosirea vectorilor i a matricelor, MathCAD ofer o serie de operatori specifici.
n continuare sunt prezentai aceti operatori i operaiile pe care le efectueaz:

Operaia Aspect Tasta Descriere

Produs scalar
A z
*
nmulete fiecare element al
matricei A cu scalarul z
Produs de vectori v u *
ntoarce un scalar egal cu


i i
v u
, unde u i v sunt vectori
cu acelai numr de elemente
Produs matricial
B A
*
Efectueaz produsul matricelor A
i B
nmulire
vector/matrice
v A *
Efectueaz produsul dintre
matricea A i vectorul v
mprire de tip scalar A/z /
mparte toate elementele matricei
A la scalarul z
Adunare de vectori
(matrice)
A+B + Adun matricele A i B
Adunare cu un scalar A+z +
Adun scalarul z la toate
elementele matricei A
Diferen de matrice A-B - Scade matricea B din matricea A
Diferen de tip scalar A-z -
Scade scalarul z din toate
elementele matricei A
Negativarea unei
matrice
-A -
Schimb semnul tuturor
elementelor matricei A
4.2 Operatori pentru calcul matriceal
Calcul matriceal numeric
65
Operaia Aspect Tasta Descriere
Ridicare la putere A
n
^
Ridicarea unei matrice la o putere
oarecare. Dac aceasta este 1
atunci se realizeaz de fapt
inversarea matricei
Norma unui vector
|v|

| Calculeaz norma unui vector v
Determinant |A| |
Calculeaz determinantul matricei
ptrate A
Transpusa
A
T

Ctrl + ! Determin transpusa matricei A
Produs vectorial uxv Ctrl + 8
Calculeaz produsul vectorial al
vectorilor coloan u i v cu cte 3
elemente
Extragere de coloan M
<n>
Ctrl+6
Extrage coloana n a unei
matrice
Suma termenilor unui
vector

v Ctrl + 4
nsumeaz elementele vectorului
v
Vectorizare

Ctrl+-
Operatorii i funciile matriciale
sub acest operator se aplic
fiecrui element al matricei (vezi
4.3.6)

n figura 4-7 sunt prezentate cteva exemple simple de aplicare a acestor operatori.
Capitolul 4
66

Fig. 4-7 - Operatori pentru calcul matricial

n afar de operatorii matematici prezentai n paragraful anterior, MathCAD ofer
utilizatorului o serie de funcii care pot fi aplicate vectorilor sau matricelor. Aceste
funcii i rezultatul aplicrii lor sunt prezentate mai jos.


Numele funciei

Rezultatul obinut n urma aplicrii funciei
Dimensiunea/dimensiunile unui tablou
rows(A) Numrul de linii al matricei A
cols(A) Numrul de coloane al matricei A
length(v) Numrul de elemente al vectorului v
last(v) Indicele ultimului element al vectorului v
identity(n) Matricea identitate de ordinul n
Extremele unui tablou
max(A,B,C,..) Elementul de valoare maxim din tablourile A, B, C,
min(A,B,C,)
Elementul de valoare minim din matricea A, B, C,
4.3 Funcii pentru calcul matricial
Calcul matriceal numeric
67

Numele funciei

Rezultatul obinut n urma aplicrii funciei
Crearea de tablouri
matrix(m,n,f) O matrice cu dimensiunea m x n, pentru care
elementul de poziie i,j are valoarea f(i,j), unde f este
o funcie de dou variabile.
CreateMesh(F, .) O matrice format din trei submatrice, x, y i z, ce
reprezint coordonatele unei suprafee parametrice
definit de o funcie sau un set de funcii. Pentru
clarificri privind argumentele, vezi exemplele ce vor
urma.
CreateSpace(F,.) O matrice format din trei submatrice, x, y i z, ce
reprezint coordonatele unei curbe parametrice
strmb n spaiu, definit de o funcie sau un set de
funcii. Pentru clarificri privind argumentele, vezi
exemplele ce vor urma.
Concatenarea de tablouri
stack(A,BC,) O matrice obinut prin alipirea matricelor A, B, C,
una peste alta
augment(A,B,C,) O matrice obinut prin alipirea matricelor A, B, C,
una dup alta
Valori i vectori proprii
eigenvals(A) Un vector format din valorile proprii ale matricei
ptrate A.
eigenvec(A,z) Vectorul propriu al matricei A, asociat valorii proprii z.
Vectorul este normalizat (suma ptratelor elementelor
este 1).
Capitolul 4
68

Numele funciei

Rezultatul obinut n urma aplicrii funciei
eigenvecs(A) O matrice coninnd pe coloane vectorii proprii ai
matricei A.
genvals(M,N) Un vector coninnd valorile proprii pentru o problema
general de vectori i valori proprii
genvecs(M,N) O matrice coninnd vectorii proprii pentru o problema
general de vectori i valori proprii
Extragerea de submatrice
submatrix(A,ir,jr,ic,jc)
O submatrice a matricei A, obinut prin extragerea
[din A] a unei zone delimitat de indicii ir, jr (linia cu
indice minim, respectiv maxim) i ic, jc (coloana cu
indice minim, respectiv maxim).
Tipuri speciale de matrice
diag(v) O matrice diagonal, ale crei elemente [de pe
diagonala principal] sunt chiar elementele vectorului
v.
geninv(A) Matricea invers la stnga a lui A, fie ea L, astfel ca L
* A = I (matricea A trebuie s fie real)
rref(A) Ealonul redus al matricei sau vectorului A. Matricea
sau vectorul A trebuie s fie reale.
Caracteristici speciale ale matricelor
tr(A) Urma matricei ptratice A (suma elementelor situate
pe diagonala principal)
rank(A) Rangul matricei A
norm1(M) Norma L1 a matricei ptrate M
norm2(M) Norma L2 a matricei ptrate M
norme(M) Norma Euclidian a matricei M
Calcul matriceal numeric
69

Numele funciei

Rezultatul obinut n urma aplicrii funciei
normi(M) Norma infinit a matricei M.
cond1(M) Numrul de condiionarea a matricei ptrate M, bazat
pe norma L1
cond2(M) Numrul de condiionarea a matricei ptrate M, bazat
pe norma L2
conde(M) Numrul de condiionarea a matricei ptrate M, bazat
pe norma Euclidian
condi(M) Numrul de condiionarea a matricei ptrate M, bazat
pe norma infinit
cholesky(M) O matrice inferior triunghiular, fie ea L, astfel nct L
* L
T
=M. Matricea M trebuie s fie simetric.
Re(A) O matrice ale crei elemente sunt prile reale ale
elementelor matricei A
Im(A) O matrice ale crei elemente sunt prile imaginare ale
elementelor matricei A
Descompuneri de matrice
gr(A) O matrice ale crei prime n coloane conin matricea
ortonormal Q, restul coninnd matricea superior
triunghiular R, astfel ca A=Q * R. Pentru extragerea
lui Q i R se va utiliza funcia submatrix.
lu(M) O matrice care conine trei sub matrice ptrate, fie ele
P, L i U, toate avnd dimensiunea lui M, concatenate
una dup alta n aceast ordine (pentru extragerea lor
se va utiliza funcia submatrix). Matricele satisfac
relaia :
P * M = L * U. M trebuie s fie ptrat.
Capitolul 4
70

Numele funciei

Rezultatul obinut n urma aplicrii funciei
svd(A) O matrice coninnd una peste alta, dou matrice.
Fie ele U i V. Aceste matrice satisfac relaia : A=U *
diag(s) * V, unde s este vectorul ntors de funcia
svds(A). Matricea A trebuie s aib dimensiunea m,n
cu mn i trebuie s fie real
svds(A) Un vector coninnd valorile singulare ale matricei A,
care trebuie s aib dimensiunea m,n cu mn i
trebuie s fie real
Funcii de cutare n tablouri
lookup(z,A, B) O valoare sau un vector ce reprezint
elementul/elementele din matricea B care ocup
aceeai poziie [n B] cu cea ocupat de valoarea z n
A.
hlookup(z, A, r) Un element sau un vector ce reprezint
elementul/elementele din matricea A ce se gsesc pe
rndul r (din A), situate pe aceeai/aceleai
coloan/coloane cu elementele de pe primul rnd
avnd valoarea z.
vlookup(z, A, c) Un element sau un vector ce reprezint
elementul/elementele din matricea A ce se gsesc pe
coloana c (din A), situate pe acelai/aceleai
rnd/rnduri cu elementele de pe prima coloan avnd
valoarea z.
match(z, A) Indicii (sub form de tablouri incluse) poziiilor n care
apare valoarea z n matricea A.

nainte de a se prezenta cteva exemple de utilizare a unor funcii aplicabile vectorilor
i matricelor, vor fi reamintite cteva relaii matematice importante :
Calcul matriceal numeric
71
Norma L1 returneaz cea mai mare sum a elementelor de pe coloane, adic :

=

=
N
k
kj
N j
m L
1
1
1
( max
Norma L2 returneaz cea mai mare valoare singular, adic :
) ( , max ) (
2
M M L = = .
unde cu ) (M s-a notat mulimea valorilor proprii ale matricei M (numit i spectrul
acesteia), iar cu ) (M s-a notat raza spectral a matricei. Cu s-au notat valorile
proprii ale lui M.
Se reamintete c pentru o matrice M, se pot gsi trei matrice U, S, i V, astfel nct
M=U.S.V
T
, unde det(U)=det(V)=1, iar matricea S are elemente nenule numai pe
diagonala principal. Aceste valori se numesc valori singulare ale matricei M.
Norma Euclidian ntoarce valoarea :

=
N
k j
jk
F
m M
,
2

Norma infinit returneaz suma cea mai mare sum a elementelor de pe linii, adic :

=
N
j
kj
N k
m L
1
1
( max
Cteva exemple privind utilizarea acestor funcii sunt prezentate n figurile urmtoare.


Fig. 4-8 Funciile rows, cols, max, min, length, tr, last, augment, identity

Capitolul 4
72

Fig. 4-9 - Funciile stack, diag, submatrix, norm1, normi, norme, norm2

n legtur cu normele i numerele de condiionare ale matricelor, sunt prezentate mai
jos cteva consideraii teoretice.
Sunt valabile urmtoarele relaii ntre norme i numerele de condiionare:
) x( ) x( ) x(
1
M cond M norm M norm =

, unde x poate fi oricare din
caracterele i, e, 1 sau 2.
numrul de condiionare 2 (cond2) este egal cu raportul dintre cea mai mare
i cea mai mic valoare singular a unei matrice. Valorile singulare sunt
ntoarse de funcie svds (vezi mai jos).
Numrul de condiionare ntors de funcia condi este util pentru cuantificarea gradului
de stabilitate a sistemelor de ecuaii de forma A x = b, la variaii ale elementelor
matricei coeficienilor. Astfel, valori mari ale numrului de condiionare indic matrice
(sisteme) ru condiionate. Dac numrul de condiionare este infinit, matricea
[sistemului] este singular.
Rezolvarea unor astfel de sisteme se poate face i prin utilizarea funciei svd (vezi
paragrafele urmtoare).
Aceste consideraii sunt ilustrate de exemplele din figura 4-10.

Calcul matriceal numeric
73

Fig. 4-10 Norme i numere de condiionare

n ceea ce privete descompunerile de matrice ce se pot realiza n MathCAD, sunt
reamintite mai jos cteva consideraii teoretice minimale, necesare unei bune nelegeri
a acestui subiect, precum i a utilizrilor care se pot da funciilor de descompunere a
matricelor.
Fie sistemul Ax=b (scriere matricial).
Dac se poate scrie A=L . U, unde L este inferior triunghiular i U superior
triunghiular, sistemul se va [re]scrie :
(L
.
U) x=b sau L (U
.
x)=b, i se rezolv astfel :
L
.
y =b, prin substituie nainte
U
.
x=y prin substituie napoi.
n cazul Mathcad, funcia lu(M) ntoarce trei matrice ptrate P, L si U, astfel nct :
4.3.1 Descompunerea L U
Capitolul 4
74
P
.
M=L
.
U,
deci un sistem Ax=b revine la a rezolva sistemul P
.
A
.
x=P
.
b i mai apoi :
L
.
(U
.
x)=P
.
b
Dac n sistemul Ax=b, matricea A este simetric i pozitiv definit (v.A.v>0, oricare
ar fi vectorul v), se poate gsi o matrice L, astfel nct L.L
T
=A (deci L
T
=U din
descompunerea LU).
Obs : O matrice este pozitiv definit dac are toate valorile proprii pozitive
Exemplu :
(
(
(
(

=
9 1 1 0
1 9 0 1
1 0 9 1
0 1 1 9
A
Dac o matrice A se poate scrie ca :
A=Q
.
R,
unde Q este o matrice ortogonal (Q
T
.
Q=I), iar R este superior triunghiular, atunci
sistemul :
A.x=b se poate la rndul su scrie:
Q
.
R
.
x=b i apoi R
.
x=Q
T
.
b, i se rezolv prin substituie napoi.
Se folosete pentru sistemele singulare sau foarte aproape de sistemele singulare.
Pentru o matrice A, se poate gsi descompunerea :
A=U
.
diag(S)
.
V
T

unde U i V sunt ortogonale.
Funcia svd ntoarce o matrice ce conine concatenate prin suprapunere matricele U i
V.
Soluia unui sistem de forma A
.
x=b este:
x=V
.
diag(1/S
j
)(U
T
.
b)
n cazul Mathcad, S este vectorul ntors de funcia svds(A)
n figura 4-11 sunt este prezentat descompunerea SVD pentru o matrice.
4.3.2 Descompunerea Cholesky
4.3.3 Descompunerea QR
4.3.4 Descompunerea SVD (Singular value Decomposition)
Calcul matriceal numeric
75


Fig. 4-11 - Descompunerea SVD
Descompunerea SVD este extrem de util n rezolvarea sistemelor pentru care matricea
coeficienilor este singular sau foarte aproape de aceast stare. Se reamintete c
determinantul unei matrice singulare este 0, ceea ce constituie un impediment de
netrecut pentru orice algoritm de rezolvare a sistemelor algebrice liniare care face apel
la inversarea matricei A.
Pentru o bun nelegere, n figura 4-12 este prezentat cazul unui sistem algebric liniar,
a crui matrice a coeficienilor M, este aproape singular.

Capitolul 4
76

Fig. 4-12 Rezolvarea sistemelor qvasi singulare cu ajutorul descompunerii svd

Se poate observa din analiza figurii 4-12 c soluiile obinute prin utilizarea funciilor
svd, respectiv lsolve (care rezolv sistemul prin aplicarea relaiei x=M
-1
.b) nu sunt
identice, ba mai mult, cea oferit de lsolve este mai corect. Se recomand cititorului
s recreeze secven Mathcad din figura 4-12 i s mai adauge un 9 la valoarea
elementului M
0,2
, apropiind i mai mult matricea M de singularitate. Se va constata c
lsolve nu mai ntoarce soluie, n vreme ce metoda care face uz de funcia svd, nc
mai produce o soluie. Aceast situaie este prezentat n figura 4-13.
Calcul matriceal numeric
77

Fig. 4-13 Rezolvarea unui sistem singular cu ajutorul funciei svd

- lookup
Fie doua tablouri, ce conin date despre 5 persoane. Primul tablou, M, conine numele,
anul naterii i locul naterii. Al doilea, N, conine localitatea de domiciliu, numrul de
telefon i pe ultima coloan, numrul de fax.

4.3.5 Exemple de utilizarea a funciilor de cutare n tablouri
Capitolul 4
78
Observaie: A se nota ca toate datele au fost introduse ca iruri de caractere.
Utiliznd funcia lookup, se vor extrage, n prima etap, anul naterii celor nscui n
Ploieti. n a doua etap, se vor extrage numerele de telefon ale tuturor celor nscui n
Ploieti.
Dup cum s-a putut observa, n prima etap informaia se gsete ntr-un singur
tablou, n vreme ce n cel de-al doilea, vor fi necesare ambele [tablouri].
n figura 4-14 este reprodus secvena de document Mathcad care extrage anii de
natere, precum i evaluarea variabilei n care acetia au fost extrai.


Fig. 4-14 Funcia lookup opernd asupra unui singur tablou

Semnificaia scrierii de mai sus este urmtoarea: se caut n coloana cu indicele 2
(atenie, originea indicilor este 0), valoarea "Ploieti" i sunt ntoarse valorile de pe
coloana cu indicele 1 (a doua deci), din dreptul valorilor gsite pe coloana a treia.
Pentru extragerea numerelor de telefon, se va utiliza secvena de document Mathcad
din figura 4-15.


Fig. 4-15 Funcia lookup opernd asupra a dou tablouri

Calcul matriceal numeric
79
Semnificaia scrierii de mai sus este, acum, uor de dedus: se vor ntoarce valorile pe
coloana a doua (cu indicele 1) din tabloul N, din dreptul (cu poziiile) celor cu valoarea
Ploieti, de pe coloana a treia din tabloul M.
- hlookup, vlookup
Tabloul M, din exemplele precedente a fost transpus i din el se va extrage cu ajutorul
funciei hlookup, locul naterii persoanei cu numele Pripici. Se va urmri figura
4-16.

Fig. 4-16 Funcia hlookup

Utiliznd tabloul N de la exemplele precedente i funcia vlookup, se vor extrage
numerele de telefon ale celor domiciliai n Ploieti. Se va urmri figura 4-17.

Fig. 4-17 Funcia vlookup

- match
Capitolul 4
80
n exemplul din figura 4-18, s-a realizat extragerea indicilor poziiilor din tabelul M,
care au valoarea Ploiesti. Pentru ca rezultatul s arate ca n figura amintit, trebuie s
se seteze ON opiunea de afiare a tablourilor incluse (Format Result
Display Options Expand nested arrays).

Fig. 4-18 Funcia match

Operatorii prezentai n paragraful 6.5. permit efectuarea de operaii de calcul
matriceal. Exist ns i situaii cnd asupra elementelor unei matrice trebuie efectuat
aceeai operaie scalar.
n acest caz se poate folosi operatorul de vectorizare care determin aplicarea
operatorilor i funciilor element cu element vectorilor sau matricelor.
Astfel, dac pentru o matrice M aplicarea funciei sin(M) este incorect, prin
vectorizare se aplic funcia sin( ) fiecrui element al matricei M.
Vectorizarea se realizeaz prin tastarea combinaiei Ctrl + - (sau selectnd simbolul
respectiv din toolbar-ul Operators) dup ce s-a selectat membrul unei relaii de
atribuire. Se observ din exemplul de mai jos c deasupra acestuia va apare o sgeat,
ca simbol al operaiei de vectorizare.

4.3.6 Vectorizri i atribuiri simultane
Calcul matriceal numeric
81

Fig. 4-19 - Vectorizare

Folosirea vectorilor permite realizarea de atribuiri simultane. Acesta nseamn c, n
cursul unei singure secvene de atribuire pot primi valori mai multe variabile.
Un exemplu de atribuire simultan este prezentat mai jos

.

Fig. 4-20 - Atribuire simultan

4.3.7.1 Funcia CreateMesh
Funcia creeaz o matrice format din trei submatrice (dispuse n sistem stack) ce
reprezint coordonatele x, y, z ale unei suprafee parametrice definit prin intermediul
unei funcii vector, unei funcii de dou variabile, sau unui set de 3 funcii.
Sintaxa de apelare a funciei este una din urmtoarele:

CreateMesh (F, [s0], [s1], [t0], [t1], [sgrid], [tgrid], [fmap])
CreateMesh (G, [s0], [s1], [t0], [t1], [sgrid], [tgrid], [fmap])
CreateMesh (f1, f2, f3, [s0], [s1], [t0], [t1], [sgrid], [tgrid], [fmap])
4.3.7 Crearea de matrice structurate
Capitolul 4
82

Parametrii din parantezele drepte sunt opionali. Semnificaiile tuturor parametrilor
sunt:
F este un vector funcie cu 3 elemente, fiecare o funcie de dou variabile u i
v;
G este o funcie de dou variabile u i v;
f1 este o funcie de dou variabile u i v;
f2 este o funcie de dou variabile u i v;
f3 este o funcie de dou variabile u i v;
s0 este limita inferioar a variabilei u. Valoarea implicit este -5;
s1 este limita superioar a variabilei u. Valoarea implicit este 5;
t0 este limita inferioar a variabilei v. Valoarea implicit este -5;
t1 este limita superioar a variabilei v. Valoarea implicit este 5;
sgrid este numrul de intervale n care este mprit domeniul de variaie al
parametrului u. Valoarea implicit este 20 i sgrid>0
tgrid este numrul de intervale n care este mprit domeniul de variaie al
parametrului v. Valoarea implicit este 20 i tgrid>0
fmap este o funcie vector cu trei elemente, de trei variabile care definete
maparea (proiectarea) din orice sistem de coordonate n cel cartezian. n
Mathcad exist dou funcii de tip fmap, specializate n maparea din
coordonate cilindrice, respectiv sferice n coordonate carteziene (cyl2xyz,
respectiv sph2xyz).
Exemplu de funcie de tip fmap:

Calcul matriceal numeric
83
Exemple:
1. Utilizarea unei funcii vector


Fig. 4-21 Utilizarea unei funcii vector i reprezentarea grafic corespunztoare

2. Utilizarea unei funcii de dou variabile
Capitolul 4
84

Fig. 4-22 Utilizarea unei funcii de dou variabile i reprezentarea grafic
corespunztoare

3. Utilizarea a trei funcii de dou variabile

Fig. 4-23 Utilizarea a trei funcii de dou variabile
Calcul matriceal numeric
85
4.3.7.2 Funcia CreateSpace
Funcia CreateSpace creeaz o matrice format din trei submatrice-vector (aranjate
n sistem stack). Cei trei vectori conin coordonatele x, y, respectiv z ale unei curbe
strmbe n spaiu.
Sintaxa de apelare a funciei este una din urmtoarele:

CreateSpace(F, [t0], [t1], [tgrid], [fmap])
CreateSpace(f1, f2, f3, [t0], [t1], [tgrid], [fmap])

Semnificaiile notaiilor sunt uor de dedus prin analogie cu cele prezentate n cazul
funcie CreateMesh, cu observaia c funcia F, ca i funciile f1, f2, i f3 depind de o
singur variabil.


Exemplu:
1. Utilizarea unei funcii vector

Fig. 4-24 Utilizarea unei funcii vector

87
5 Reprezentri grafice
Mathcad permite obinerea unui numr mare de tipuri de reprezentri grafice 2D i 3D,
punnd la dispoziia utilizatorilor multiple faciliti de formatare a acestor reprezentri.

Obiective


Prezentarea tipurilor de reprezentri grafice ce se pot
realiza cu ajutorul Mathcad
Prezentarea facilitilor de formatare a graficelor



5 Reprezentri grafice ____________________ 87
5.1 Grafice 2D....................................................................................................88
5.2 Grafice 3D....................................................................................................99
5.3 Grafice de tip Vector Plot.........................................................................115

Numr de pagini 26
Capitolul 5
88


Inserarea unui grafic de tip X-Y presupune parcurgerea urmtoarelor etape:
1. Alegerea cmpului Insert Graph X-Y Plot sau a butonului corespunztor
de pe bara de instrumente Graph (vezi figura 5-1)
2. Completarea marcatorilor cu elementele corespunztoare (nume variabil de
reprezentare, limite, nume funcie sau expresie de reprezentat etc.). Vezi figura 5-1)

Fig. 5-1 Completarea marcatorilor pentru graficele de tip X-Y

n legtur cu modul de completare a marcatorilor se fac urmtoarele precizri:
limitele superioar i respectiv inferioar de variaie a variabilei de reprezentare
pot s nu fie precizate n mod explicit, caz n care se vor considera egale cu 10
i respectiv -10;
limitele superioar i respectiv inferioar pentru domeniul de reprezentat pot s
nu fie precizate, caz n care vor fi folosite valoarea maxim, respectiv minim a
5.1 Grafice 2D
5.1.1 Grafice de tip X-Y

Reprezentri grafice
89
expresiei/funciei de reprezentat, nregistrate pe domeniul de lucru;
pot fi trasate mai multe curbe pe acelai grafic, curbe ce pot depinde de una
sau mai multe variabile;
dac se folosesc mai multe variabile, acestea trebuie separate prin virgul;
n figura 5-2, sunt prezentate mai multe grafice de tip X-Y.
i 1 20 .. :=
x
i
.5 i := y
i
x
i
( )
2
5 x
i
:=
0 5 10
20
0
20
40
60
y
i
x
i

a. Reprezentarea unui vector funcie
de alt vector
x 0 0.1 , 5 .. :=
0 2 4 6
1
0
1
sin x
2
( )
x

b. Reprezentarea unei expresii funcie de o
variabil de tip scalar
x 0 .1 , 20 .. :=
f x ( ) e
sin x ( ) cos x ( ) +
e
sin x ( ) cos x ( )
:=
0 5 10 15 20
5
0
5
f x ( )
x



c. Reprezentarea unei funcii
x 0 .1 , 20 .. :=
f x ( ) e
sin x ( ) cos x ( ) +
e
sin x ( ) cos x ( )
:=
g x ( ) e
sin x ( ) cos x ( ) +
e
sin x ( ) cos x ( )
+ :=
0 5 10 15 20
5
0
5
10
f x ( )
g x ( )
x

d. Reprezentarea mai multor funcii
dependente de o singur variabil

Capitolul 5
90

e. Reprezentarea mai multor funcii dependente de mai multe variabile
Fig. 5-2 Reprezentri grafice de tip X-Y

Mathcad ofer multiple faciliti de control al aspectului (formatului) graficelor. Pentru a
declana procesul de formatare, dup ce se selecteaz graficul asupra cruia se
intervine, se poate folosi una din metodele enumerate mai jos:
Format Graph X-Y Plot
Clic dreapta pe zona graficului urmat de acionarea cmpului Format
Dublu clic pe o anumit zon a graficului (axe, legend, trasee etc.)
Dac se folosete una din primele dou metode, se ajunge la caseta de dialog
prezentat pe parcursul figurilor 5-3, 5-4, 5-5 i 5-6.
5.1.2 Formatarea graficelor de tip X-Y
Reprezentri grafice
91

a.
Se pot controla la nivel de ax
urmtoarele:
- utilizarea unei scri logaritmice;
- prezena liniilor de caroiaj;
- prezena valorilor numerice pe axe;
- amplasarea automat a acestora;
- prezena unui numr de maxim 2
marcatori pe fiecare ax;
- controlul desimii caroiajului;
- autoscalarea valorilor graficului;
- utilizarea de scri egale pe cele dou
axe.
b.
Fig. 5-3 Seciunea X-Y Axes


n figura 5-3.b se poate vedea un grafic
pentru care setrile sunt cele din figura
5-3.a.
Marcatorii nu apar dect pe axa X n
dreptul valorilor 2,5 i respectiv 4.


Capitolul 5
92


a.
Seciunea Traces permite controlul
caracteristicilor traseelor graficelor:
- denumire traseu: Legend Label;
- modul de marcarea a punctelor
traseelor: Symbol;
- tipul de linie cu care sunt unite
punctele traseelor: Line;
- culoarea traseelor: Color;
- tipul de unire a punctelor traseelor:
Type;
- grosimea liniilor de reprezentare a
traseelor: Weight;
- ascunderea sau nu a legendei sau
argumentelor: Hide Legend, respectiv
Hide Arguments;

n figura 5-4.a se poate vedea un grafic pe care sunt reprezentate dou trasee.
Setrile sunt cele din figura 5-4.b.

b.
Fig. 5-4 Seciunea Traces


Reprezentri grafice
93
Seciunea Labels permite definirea unui titlu al graficului (Title), a poziie acestuia,
sau a unor legende la nivel de axe (Axis labels).
Seciunea Defaults permite fie revenirea la setrile de formatare a graficelor implicite
pentru document (Change to Defaults), fie dimpotriv, transformarea setrilor
curente n setri implicite pentru ntregul document.
Inserarea unui grafic n coordonate polare presupune parcurgerea urmtoarelor etape:
1. Alegerea cmpului Insert Graph Polar Plot sau a butonului corespunztor
de pe bara de instrumente Graph (vezi figura 5-6)
2. Completarea marcatorilor cu elementele corespunztoare (nume variabil de
reprezentare, respectiv nume funcie sau expresie de reprezentat etc.). A se consulta
figura 5-5)


Fig. 5-5 Marcatori pentru grafice n coordonate polare

5.1.3 Grafice n coordonate polare

Capitolul 5
94
n figura 5-6 este reprezentat un grafic n coordonate polare.


Fig. 5-6 Grafic n coordonate polare

Pentru formatare se va proceda ca n cazul graficelor n coordonate XY. Particularitile
specifice graficelor n coordonate polare vor fi uor de neles. Declanarea formatrii se
face, dup selectarea unui grafic, prin acionarea cmpului Format Graph Polar
Plot .
5.1.5.1 Facilitatea de tip Trace (urmrire a valorilor de pe grafic)
Facilitatea Trace permite citirea valorilor de pe un grafic i eventual copierea lor n
afara graficului (firete n documentul Mathcad ce conine graficul). Modul Trace se
activeaz prin intermediul cmpului Format Graph Trace n figura 5-7 este
surprins procesul de citire a unei valori de pe grafic (se citesc cele dou coordonate).
Este suficient un clic stnga pe curba reprezentat i valoarea din dreptul pointerului
este citit. Eliminarea bifei din dreptul cmpului Track Data Points, va permite i
5.1.4 Formatarea graficelor n coordonate polare
5.1.5 Controlul vizualizrii graficelor 2D
Reprezentri grafice
95
citirea unor valori din exteriorul curbei sau a punctelor de pe curb ce nu corespund
valorilor discrete ale variabilei abscis.


Fig. 5-7 Citirea de valori de pe un grafic

n figura 5-8 se este surprins utilizarea facilitii Trace n condiiile eliminrii Track
Data Points.
Capitolul 5
96

Fig. 5-8 Citirea de valori cu Track Data Points dezactivat

n cazul graficelor n coordonate polare citirea de valori decurge ca n figura 5-9.
Reprezentri grafice
97

Fig. 5-9 - Citirea de valori de pe un grafic n coordonate polare
5.1.5.2 Facilitatea de tip Zoom (controlul factorului de mrire)
Pentru realizarea de focalizri care s pun n eviden detalii ale reprezentrilor
grafice, se poate folosi modul zoom. Acest lucru este posibil prin utilizarea cmpului
Format Graph Zoom .
Executarea de focalizri (zoom) se poate repeta (pentru obinerea de detalii tot mai
clare), dar se poate i anula, pas cu pas (Unzoom), sau complet (Full View).
n figura 5-10.a se poate vedea modul cum se realizeaz o focalizare, pentru ca n
figura 5-10.b s se poat vedea rezultatul operaiei.
Modul zoom poate fi folosit (printre altele) i pentru aprecierea soluiilor reale ale unor
ecuaii. Un rezultat mai bun se poate obine prin utilizarea combinat a facilitilor
zoom i trace.
Dup realizarea unui zoom, n caseta de dialog X-Y Zoom se pot citi limitele zonei
mrite.
Capitolul 5
98

a.

b.
Fig. 5-10 Facilitatea zoom

Reprezentri grafice
99
n figura 5-11 este surprins modul de operare zoom n cazul unui grafic n coordonate
polare.

Fig. 5-11 Zoom n cazul graficelor polare


Pentru includerea ntr-un document Mathcad a unui grafic de tip suprafa (Surface
Plot), se poate utiliza cmpul Insert Graph Surface Plot sau butonul
corespunztor de pe bara de unelte Graph (vezi figura 5-12).
5.2 Grafice 3D
5.2.1 Grafice de tip suprafa
Capitolul 5
100

Fig. 5-12 Crearea unui grafic de tip suprafa

Pentru obinerea graficului, se completeaz marcatorul cu:
numele unei variabile de tip matrice;
sau
numele separate prin virgul - a trei variabile de tip matrice (totul se
nchide n paranteze rotunde) ;
sau
numele separate prin virgul a trei variabile de tip vector (totul se
nchide n paranteze rotunde);
sau
numele unei funcii sau unui set de funcii de dou variabile (dac e vorba
de un set de funcii, numele se vor separa prin virgul).
Este posibil reprezentarea pe acelai grafic a mai multor suprafee. Pentru aceasta, se
vor separa prin virgul argumentele fiecrei suprafee. Pentru exemplificare se
recomand urmrirea atent a figurilor 5-13..5-19 . Mai trebuie precizat c n
exemplele ce urmeaz pentru a obine aspectul reprezentrilor au fost realizate i
anumite operaii de formatare.

Reprezentri grafice
101

Fig. 5-13 Grafic de tip suprafa obinut pornind de la o matrice


Fig. 5-14 Grafic de tip suprafa obinut pornind de la trei matrice

Capitolul 5
102
Pentru acest tip de grafic sunt necesare urmtoarele precizri:
Toate cele 3 matrice trebuie s aib acelai numr de linii i coloane;
Acest tip suprafa se numete parametric i nu poate fi ulterior (prin
formatare) transformat n celelalte tipuri de grafice 3D.

Fig. 5-15 Grafic de tip suprafa obinut pornind de la trei vectori


Fig. 5-16 - Grafic de tip suprafa obinut pornind de la ecuaia unei funcii vector
Reprezentri grafice
103

Fig. 5-17 Grafic de tip suprafa obinut pornind de la ecuaia unei funcii de dou
variabile


Fig. 5-18 - Grafic de tip suprafa obinut pornind de la ecuaia a trei funcii de dou
variabile
Capitolul 5
104

Fig. 5-19 - Reprezentarea pe acelai grafic a dou suprafee

Pentru includerea ntr-un document Mathcad a unui grafic de tip curbe de nivel
(Contour Plot), se poate utiliza cmpul Insert Graph Contour Plot sau
butonul corespunztor de pe bara de unelte Graph (vezi figura 5-20).


Fig. 5-20 Inserarea unui grafic de tip curbe de nivel

Graficele de tip curbe de nivel se obin de fapt din suprafee secionate de plane
paralele cu planul XOY (sau YOZ sau XOZ). Curbele de intersecie se proiecteaz pe
5.2.2 Grafice de tip curbe de nivel (Contour Plot)
Reprezentri grafice
105
planul XOY (sau YOZ sau XOZ) i se reprezint. Cum la baza graficelor de tip contur
stau de fapt nite suprafee, vor fi aceleai i metodele de generare a unor astfel de
reprezentri: se va porni deci tot de la o matrice, trei matrice, trei vectori, sau expresia
unei funcii (vector sau simpl de trei variabile) sau unui numr de trei funcii de dou
variabile.


Fig. 5-21 Grafic de tip Contour Plot obinut pornind de la trei vectori

Graficele de acest tip permit vizualizarea de puncte n spaiu, iar dac se opteaz
pentru unirea acestora cu segment de dreapt, se pot folosi pentru reprezentarea de
curbe parametrice n spaiu. Un grafic de tip scatter poate fi transformat n oricare din
celelalte grafice 3D.
5.2.3 Grafice de tip puncte distribuite n spaiu (3D Scatter Plots)
Capitolul 5
106
Pentru inserarea unei astfel de reprezentri, se vor folosi cmpul Insert Graph
3D Scatter Plot, sau butonul corespunztor de pe bara de instrumente Graph (vezi
figurile 5-225-24 ).


Fig. 5-22 Inserarea de grafice de tip Scatter Plot


Fig. 5-23 Grafic de tip scatter obinut pornind de la expresia unei funcii vector de
dou variabile
Reprezentri grafice
107

Fig. 5-24 Grafic de tip scatter obinut pornind de la trei vectori

Se pot obine prin acionarea cmpului Insert Graph 3D Bar Plot, sau a
butonului indicat i n figura 5-25 de pe bara de instrumente Graph.

5.2.4 Grafice de tip 3D Bar
Capitolul 5
108

Fig. 5-25 Inserarea de grafice de tip 3D Bar

Argument pentru astfel de grafice pot fi numele unei variabile de tip matrice, numele
a trei variabile de tip vector (nchise ntre paranteze), sau numele unei funcii vector cu
3 elemente i de dou variabile, al unei funcii de dou variabile, sau a unui set de 3
funcii de dou variabile (ntocmai ca la graficele de tip suprafa de exemplu). Se va
obine o reprezentare ca cea din figura 5-26, n care nlimea fiecrei coloane este
chiar valoarea elementului de matrice corespunztor (n cazul n care argument este un
nume de funcie/funcii corespondena este indirect, cci nainte de reprezentare tot la
o matrice se ajunge).


Fig. 5-26 Grafic de tip 3D Bar obinut pornind de la o matrice
Reprezentri grafice
109
Trebuie precizat (i se va reveni n cadrul explicaiilor legate de formatarea graficelor
3D), c este posibil aproape oricnd transformarea unui tip de grafic 3D n alt tip de
grafic 3D.
Facilitile de formatare a graficelor 3D oferite de Mathcad sunt extrem de complexe i
cuprind pe lng simpla modificare a vectorului de vizualizare, o serie de alte setri ce
in de aspectul general al graficului, modul de conectare a punctelor, condiiile de
iluminare, controlul axelor, al factorilor de scalare etc.
Declanarea procesului de formatare presupune, firete, selecia unui grafic existent.
n figurile urmtoare sunt furnizate informaii despre semnificaiile seciunilor, zonelor
i cmpurilor casetei de dialog 3-D Plot Format.
Declanarea procesului de formatare se face prin acionarea cmpului Format
Graph 3D Plot (dup ce n prealabil s-a selectat un grafic).

Fig. 5-27 Seciunea General
5.2.5 Formatarea graficelor 3D
Capitolul 5
110

Fig. 5-28 Seciunea Axes

Fig. 5-29 Seciunea Appearance
Reprezentri grafice
111

Ct privete zona Fill Options, se fac urmtoarele precizri:
Fill Surface Umple o suprafa cu o hart de culoare, conform specificaiilor din
seciunea Color Options.
Fill Contours Umple suprafaa cu culoare, n conformitate cu tipul de contur
(curb de nivel) folosit (x, y sau z). Implicit se folosesc contururi obinute prin
secionarea suprafeei cu plane paralele cu planul XOY.
No Fill Suprafaa nu este colorat.
Alternate Mesh Umple cu culoare numai o jumtate de faet dreptunghiular.
Smooth Shading Realizeaz o interpolare a culorilor, astfel c aspectul acestora
variaz i n interiorul faetelor.
Color Options :
Colormap Colorarea se face cu o hart de culori ale crei caracteristici sunt
specificate n seciunea Advanced.
Solid Color Coloreaz monocrom suprafaa.

Fig. 5-30 Seciunea Lighting
Capitolul 5
112
Directed light (Lumina direct)
Lumina direct este produs de o surs punctual i este emis ntr-o direcie nume.
Lumina direct are dou componente: lumina difus i lumina specular.
Lumina difuz
Lumina de acest tip vine dintr-o direcie anume, dar este reflectat de suprafa
uniform (n toate direciile). Lumina difuz face un obiect s strluceasc (de exemplu
lumina fluorescent).
Lumina ambiental i cea difuz au un mare efect asupra culorii unui grafic.
Lumina Specular
Lumina specular vine dintr-o direcie anume i este reflectat ntr-o anume direcie. O
lumin specular creeaz o pat de lumin pe obiectul iluminat.
Lumina specular nu are un efect important asupra aspectului graficului. Efectul poate
fi amplificat de controlul Shininess din seciunea Advanced.


Fig. 5-31 Seciunea Backplanes

Fereastra de dialog controleaz modul de afiare a planelor sistemului de axe (planele
XOY, XOZ i YOZ). Sunt posibile reglaje ale caroiajelor majore (Grids), dar i minore
(Sub-Grids).
Reprezentri grafice
113


Fig. 5-32 Seciunea Special

Capitolul 5
114

Fig. 5-33 Seciunea Advanced

Seciunea Advanced servete la controlul unor caracteristici de vizualizare, precum i a
unor setri de printare a graficului.


Fig. 5-34 Seciunea QuickPlot Data
Reprezentri grafice
115
Caseta de dialog servete la controlul desimii caroiajului de pe suprafa (# of Grids),
a intervalului de variaie a variabilelor independente corespunztoare axelor OX i OY,
precum i la schimbarea sistemului de coordonate folosit pentru reprezentare.


Acest tip de reprezentare permite vizualizarea cmpurilor de vectori. Argumentul unui
astfel de grafic este o matrice cu elemente complexe, sau dou matrice (cu acelai
numr de linii i de coloane). Inserarea unui grafic de tip Vector Plot se face
acionnd cmpul Insert Graph Vector Field Plot, sau a butonului
corespunztor de pe bara de instrumente Graph (vezi figura 5-35).


Fig. 5-35 Inserare a unui grafic de tip Vector Plot

n figura 5-36 este prezentat un grafic de tip Vector, obinut pornind de la o matrice cu
elemente complexe. Vectorii orizontali corespund unor elemente pur reale ale matricei,
cei verticali unor elemente pur complexe. Fiecare vector este de fapt definit prin
componenta orizontal (real) i cea vertical (coeficientul prii imaginare), ce se
compun (n sensul cunoscut de la calculul vectorial). Se va mai remarca i faptul c
prima coloan de vectori corespunde primei linii a matricei (ultimul element de pe
coloan corespunde primului vector din colul din stnga sus al reprezentrii).
5.3 Grafice de tip Vector Plot
Capitolul 5
116

Fig. 5-36 - Grafic de tip Vector

Se va face utiliznd cmpul Format Graph 2D Plot , cu precizarea c multe
din cmpurile casetei de dialog nu vor fi active.
5.3.1 Formatarea graficelor de tip Vector

117
6 Rezolvarea numeric a ecuaiilor i a
sistemelor de ecuaii

Obiective


nsuirea tehnicilor de rezolvare a numeric a ecuaiilor
nsuirea tehnicilor de rezolvare a numeric a sistemelor de
ecuaii
nsuirea tehnicilor de rezolvare a numeric aproximativ a
sistemelor de ecuaii


6 Rezolvarea numeric a ecuaiilor i a sistemelor
de ecuaii ______________________________ 117
6.1 Rezolvarea ecuaiilor transcendente .......................................................118
6.2 Rezolvarea sistemelor algebrice liniare...................................................120
6.3 Rezolvarea sistemelor neliniare ...............................................................121
6.4 Rezolvarea aproximativ a sistemelor neliniare ....................................124



Numr de pagini 7
Capitolul 6
118

Pentru rezolvarea ecuaiilor de forma:
0 ) ( = x P , unde
n
n
x a x a x a a x P + + + = .... ) (
2
2 1 0

se poate folosi funcia polyroots, cu sintaxa:
polyroots(v),
unde v este vectorul coeficienilor polinomiali, n ordinea cresctoare a puterilor
necunoscutei. n figura 6-1 este prezentat un exemplu de utilizare a funciei
polyroots.
Exemplul prezentat determin toate soluiile
ecuaiei:
0 2 2 5 . 0
2
= x x
Pot fi obinute i soluii complexe.
Funcia folosete metoda LaGuerre sau pe cea a
companionului matriceal. Forarea uneia sau
alteia dintre metode se face executnd clic
dreapta pe numele funciei i alegerea variantei
de lucru (vezi figura 6-2).




Pentru ecuaiile de forma: 0 ) ( = x f , sau ) ( ) ( x g x f = , unde funciile f i g pot avea
orice form, se va utiliza funcia root, cu una din sintaxele:
root(f(x),x)
root(f(x)-g(x),x)
root(f(x),x,a,b)
6.1 Rezolvarea ecuaiilor algebrice
6.2 Rezolvarea ecuaiilor transcendente

Fig. 6-1 funcia polyroots
Rezolvarea numeric a ecuaiilor i a sistemelor de ecuaii
119
root(f(x)-g(x),x,a,b)
Semnificaiile notaiilor sunt urmtoarele:
- x este numele variabilei necunoscut
- a i b sunt limitele intre care se va cuta o soluie.


Fig. 6-2 Alegerea algoritmului

Dac argumentele a i b lipsesc, este obligatorie furnizarea unei valori estimative
pentru soluie. Funcia root va cuta soluia cea mai aproape de aceast valoare.
n legtur cu funcie root, se fac precizrile:
funcia ntoarce o singur soluie, cea mai apropiat de estimarea furnizat;
funcia ntoarce i soluii complexe;
pentru furnizarea unei estimri ct mai apropiate de o soluie se recomand
trasarea graficului funciei f(x) sau f(x)-g(x) pe intervalul de interes;
funcia root nu produce o soluie ntr-una din urmtoarele situaii:
- o astfel de rdcin nu exist;
- rdcinile sunt prea departe de estimarea iniial;
- expresia f(x) sau f(x)-g(x) are un extrem local ntre estimarea iniial a
soluiei i rdcin;
- expresia are discontinuiti ntre estimarea iniial i rdcin;
- estimarea iniial este real i rdcinile sunt complexe (sau invers).
funcia root apelat cu sintaxa root(f(x),x), sau root(f(x)-g(x),x) folosete
metoda secantei n determinarea soluiei, n vreme ce n cazul n care se
Capitolul 6
120
utilizeaz sintaxa root(f(x),x,a,b), sau root(f(x)-g(x),x,a,b), algoritmul folosit
este Ridder/Brent;
n cazul utilizrii metodei secantei, precizia rezultatului depinde de valoarea
variabile predefinite TOL. Modificarea acesteia se face cu ajutorul cmpului
Math Options, seciunea Buil-In Variables. Mecanismul este urmtorul:
dac |f(x)|<TOL, unde x este o estimare a soluiei, atunci x este considerat
soluie.
funcia root poate fi folosit i pentru rezolvarea ecuaiilor algebrice de tip
polinomial.
n figura 6-3 se exemplific utilizarea funciei root.


Fig. 6-3 Funcia root


Pentru un sistem algebric liniar de forma: b x A = , unde A este o matrice ptrat
nesingular iar b vectorul termenilor liberi, se poate folosi una din urmtoarele metode
de rezolvare:
- funcia lsolve;
- descompunerile de matrice prezentate n 4.3 .
Funcia lsolve care se apeleaz cu sintaxa lsolve(A,b), rezolv sistemul prin
inversarea matricei A, adic b A x =
1
, ceea ce impune pruden n cazul sistemelor
(matricelor) de mari dimensiuni - ceea ce pentru Mathcad poate nsemna ce depete
20-30 de necunoscute. n astfel de cazuri, sau pentru sistemele instabile (vezi 4.3) se
recomand utilizarea descompunerilor de matrici.
6.3 Rezolvarea sistemelor algebrice liniare
Rezolvarea numeric a ecuaiilor i a sistemelor de ecuaii
121
n figura 6-4 este prezentat un exemplu de rezolvare sistemului:

= + + +
= + +
= +
= + +
5 . 4
5 . 2 5 . 1 5 . 0
0 3 2
75 . 2 5 . 0 2
u z y x
u z y x
u y x
u z y x
cu ajutorul funciei lsolve.


Fig. 6-4 Funcia lsolve


Pentru sistemele algebrice neliniare, sau pentru cele transcendente, se va folosi funcia
Find, apelabil cu sintaxa: Find(x
1
, x
2
, x
3
,x
n
), unde x
1
, x
2
, x
3
,x
n
sunt necunoscutele
cutate. Funcia Find se utilizeaz n cadrul unei secvene de forma:

x
1
:= a
1
x
2
:=a
2
x
n
:=a
n
estimare iniial a soluiei (ca n cazul funciei
root)
Given
Ecuaii.
6.4 Rezolvarea sistemelor neliniare
Capitolul 6
122
[Constrngeri] opionale
Find(x
1
, x
2
, x
3
,x
n
)

n figura 6-5 se pot vedea dou exemple de ntrebuinare a funciei Find, cu i fr
utilizarea de constrngeri.




Fig. 6-5 Funcia Find
Atenie: Pentru inserarea egalului ce intervine n ecuaii, se va utiliza combinaia
de taste CTRL i = , sau butonul indicat n figura 6-6. Cuvntul cheie Given este
obligatoriu i se va scrie ca n exemple.


Fig. 6-6 Operatorul =

Rezolvarea numeric a ecuaiilor i a sistemelor de ecuaii
123
Funcia Find poate utiliza diferii algoritmi pentru rezolvarea de sisteme de ecuaii.
Alegerea se poate face automat (AutoSelect, sau manual - vezi figura 6-7).








Fig. 6-7 Alegerea algoritmului utilizat de funcia Find

Procesul de cutare a soluiei de ctre funcia Find este influenat de variabile
predefinite TOL i CTOL.
Variabila TOL controleaz procesul de rezolvare n sensul precizat n 6-2.
Variabila CTOL controleaz nivelul de precizie cu care o constrngere dintr-un bloc
Given este satisfcut. Astfel condiia x>0 din figura 6-5 va fi considerat satisfcut i
dac x>0,001 dac valoarea CTOL este 0,001. Este evident c i variabila CTOL
determin nemijlocit precizia soluiei ntoars de funcia Find.
Funcia Find poate fi utilizat i pentru rezolvarea de sisteme algebrice liniare, sau a
ecuaiilor (algebrice sau transcendente), care pot fi privite ca sisteme cu o singur
ecuaie i o singur necunoscut.
Constrngerile dintr-un bloc Given se pot defini cu ajutorul operatorilor booleeni (vezi
figura 6-6), mai puin operatorul .
Funcia Find impune limitarea numrului de ecuaii i constrngeri la 200.

Capitolul 6
124

Dac funcia Find nu ntoarce o soluie (ceea ce se poate ntmpla fie pentru c ea nu
exist, fie pentru c este prea departe de estimarea iniial), se poate recurge le
funcia Minerr. Aceasta va ntoarce ntotdeauna un rspuns care trebuie privit ca o
soluie aproximativ (ce poate fi eventual folosit ca o nou estimare pentru soluie n
cazul reutilizrii funciei Find).
Modul de utilizare e lui Minerr, este identic cu cel prezentat n cazul lui Find (inclusiv
precizarea unei estimri iniiale pentru soluie).
n figura 6-8 este prezentat un exemplu de utilizare a funciei Minerr.


Fig. 6-8 Utilizarea funciei Minerr

Se recomand nlocuirea lui Minerr cu Find n secvena din figura 6-8.
6.5 Rezolvarea aproximativ a sistemelor neliniare

125
7 Derivare i integrare numeric. Calcul
de sume i produse

Obiective


Prezentarea tehnicilor de integrare i derivare numerice
Calculul de sume i produse n Mathcad



7 Derivare i integrare numeric. Calcul de sume
i produse ______________________________ 125
7.1 Derivarea numeric ..................................................................................125
7.2 Integrarea numeric .................................................................................127
7.3 Calcul de sume i produse ........................................................................128

7.1 Derivarea numeric
Capitolul 7
126
Pentru realizarea de derivri numerice se pot folosi operatorii sau . Ei pot
fi obinui fie prin utilizarea combinaiilor de taste ?, respectiv CTRL+SHIFT+?, fie prin
folosirea butoanelor de pe bara de instrumente Calculus (vezi figura 7-1).


Fig. 7-1 Operatorii pentru derivare numeric




Se vor reine urmtoarele:
naintea aplicrii unui operator de derivare trebuie precizat punctul n care
se calculeaz derivata;
funcia f(t) poate s fie i complex, dar variabila de integrare (t) trebuie
s fie real;
parametrul n, ce precizeaz ordinul de derivare poate avea valorile 1, 2, 3,
4, 5;
rezultatele obinute sunt corecte n limitele unei precizii de 7-8 cifre
semnificative dup virgul;
algoritmul folosit pentru integrare este o variant a metodei Ridder;
precizia rezultatului ntors de operatorii de derivare depinde de valoarea
variabilei predefinite TOL.
n figura 7-2 sunt prezentate cteva exemple de utilizare a operatorilor de derivare.
Derivare i integrare numeric. Calcul de sume i produse
127


Fig. 7-2 - Derivri numerice

Pentru calculul de integrale definite se poate folosi operatorul . El poate fi
inserat ntr-un document Mathcad fie prin utilizarea tastei &, fie a butonului
corespunztor ( ) de pe bara de instrumente Calculus (vezi figura 7-1).
ntr-o secven de forma: , elementele componente trebuie s respecte
urmtoarele condiii:
funcia f s fie scalar, real sau complex;
argumentul x s fie o variabil real i neindexat;
limitele de integrare a i b s fie reale, iar dac se lucreaz cu uniti de
msur, s o utilizeze ambele pe aceeai (folosit i pentru variabila de
integrare);
metoda de calcul a integralei este aleas automat de Mathcad, se poate
ns fora un anume algoritm. Pentru aceasta se va respecta succesiunea:
- clic dreapta pe operatorul de integrare i alegerea metodei dorite (vezi
figura 7-3);
- evaluarea integralei;

7.2 Integrarea numeric
Capitolul 7
128

Fig. 7-3 Stabilirea algoritmului de calcul a integralei
dac se apas de mai multe ori pe tasta & (sau pe butonul ) se pot
calcula integrale multiple (dubl, tripl etc.).
n figura 7-4 se pot vedea mai multe exemple de utilizare a operatorului .

Fig. 7-4 Integrarea numeric


Evaluarea numeric a sumelor sau produselor se poate face utiliznd operatorii:









Au fost precizate i combinaiile de taste aferente fiecrui operator. Se pot utiliza i
butoanele barei de instrumente Calculus (vezi figura 7-1).
Utilizarea operatorilor este ilustrat n figura 7-5.
7.3 Calcul de sume i produse
Derivare i integrare numeric. Calcul de sume i produse
129


Fig. 7-5 - Calcul de sume i produse


131
8 Utilizarea unitilor de msur n
documentele Mathcad

Obiective


Prezentarea modului de lucru cu uniti de msur n
Mathcad
Utilizarea unitilor de msur n calculul diferenial i
integral


8 Utilizarea unitilor de msur n documentele
Mathcad _______________________________ 131
8.1 Mod de lucru .............................................................................................132
8.2 Definirea de uniti de msur ................................................................133
8.3 Modificarea unitilor de msur n care este exprimat un rezultat ...134
8.4 Alegerea sistemului de uniti de msur utilizat i controlul formatului
de afiare a rezultatelor cu uniti de msur......................................................136
8.5 Utilizarea UM n calculul integral sau diferenial..................................139

Numr de pagini 7

Capitolul 8
132

Posibilitatea de a lucra cu uniti de msur este una din facilitile extrem de utile ale
MathCAD. Aceasta prezint dincolo de avantajele care in de aspectul i inteligibilitatea
unui document, i alte dou avantaje de o cu totul alt natur. Astfel, cnd se lucreaz
cu uniti de msur (UM), MathCAD realizeaz n afara calculelor i urmtoarele dou
aciuni :
Verific dac expresiile sunt omogene din punct de vedere dimensional;
Execut toate transformrile pe care o expresie ce conine UM le presupune.
Astfel un calcul ca cel de mai jos, evident incorect din punct de vedere
dimensional (liter nseamn n MathCAD litru) va produce mesajul de eroare
(vezi figura 8-1.a).
Dup cum un calcul ca cel din figura 8-1.b, unde din 2 metri se scad 30 de centimetri,
va produce rezultatul corect, adic 1.7 metri.


a.




b.
Fig. 8-1 Verificarea omogenitii dimensionale i realizarea de transformri

n MathCAD, unitile de msur sunt de fapt nite variabile cu valori prestabilite. Din
acest motiv, ataarea unei UM de o variabil sau constant, se face nmulind variabila
sau constanta cu numele UM. Astfel cele dou expresii de mai sus au fost obinute cu
secvenele :
2*kg-3*liter=, respectiv 2*m-30*cm=
Trebuie totui precizat c n Mathcad 2001, atunci cnd o valoarea numeric este
urmat imediat de numele unei uniti de msur, este posibil eliminarea operatorului
de nmulire (*).
Acest mod de lucru presupune n mod evident cunoaterea numelor corecte (pentru
MathCAD) ale UM. Cum aceste nume nu coincid ntotdeauna cu cele romneti, se
8.1 Mod de lucru
Utilizarea unitilor de msur n documentele Mathcad
133
poate utiliza cmpul Insert Unit (se poate folosi i shortcut-ul CTRL + U).
Rezultatul va fi apariia ferestrei Insert Unit, prezentat n figura 8-2, care va insera n
document numele UM selectate. Ateniune, n fereastra Insert Unit exist dou liste,
una cu numele mrimilor fizice (Dimension) i una cu numele unitilor de msur
propriu-zise (Units). Selectarea unei mrimi fizice, va determina apariia n lista Units
a unitilor de msur disponibile n MathCAD specifice mrimii fizice considerate.


Fig. 8-2 Inserare de uniti de msur


Este posibil i definirea de noi uniti de msur, sau a unor multipli sau submultipli
unor uniti de msur existente. Cum unitile de msur n Mathcad sunt de fapt
nite variabile, procesul este extrem de simplu. n figura 8-3 este prezentat un
exemplu de definire a unui multiplu de unitate de msur.
8.2 Definirea de uniti de msur
Capitolul 8
134

Fig. 8-3 Definirea de noi uniti de msur, multipli sau submultipli de UM

Se atrage atenia asupra posibilelor conflicte ce pot aprea atunci cnd se folosesc
nume de variabile identice cu numele unor uniti de msur definite. Astfel dac ntr-
un document a fost definit o variabil cu numele m, nu se va mai putea utiliza
unitatea de msur metru, cu prescurtarea m, oriunde dedesubtul definirii variabilei
m.


Un rezultat care are ataat o unitate de msur (rezultat al unei expresii care conine
UM), poate fi exprimat fr a mai face odat calculul n alte UM. n exemplul din
figura 8-4, rezultatul se obine iniial n kg*m/sec
2
(adic Newtoni). Se observ c la
sfritul rezultatului apare un marcator, n care utilizatorul poate scrie numele unei
UM. Dac de exemplu, n acest marcator, se va scrie km, dup apsarea tastei F9,
rezultatul va fi cel de mai jos.

8.3 Modificarea unitilor de msur n care este exprimat un
rezultat
Utilizarea unitilor de msur n documentele Mathcad
135

a.







b.
Fig. 8-4 Modificarea unitilor de msur n care este exprimat un rezultat

Se vede c dac rezultatul iniial s-a nmulit cu 1 km, deci el este exprimat acum n
kg*km/sec
2
, valoarea se va mpri la 1000, astfel nct rezultatul s rmn cel corect.
Un alt exemplu ar putea fi calculul din figura 8-5. Rezultatul este exprimat iniial n
metri cubi. Dac n placeholder-ul din dreapta rezultatului se scrie liter-i se apas F9
rezultatul afiat va fi :


a.

b.
Fig. 8-5 - Modificarea unitilor de msur n care este exprimat un rezultat

Dac se terge cuvntul liter, se va reveni la rezultatul iniial, exprimat n metri cubi.

Uneori se dorete eliminarea unitilor de msur ce nsoesc o variabil. n
figura 8-6, este prezentat un astfel de exemplu. Eliminarea temporar a unitii de
Capitolul 8
136
msur se face prin mprirea la funcia predefinit UnitsOf(..), unde argumentul este
numele variabilei de care se desprinde temporar o anumit unitate de msur.

Fig. 8-6 Eliminarea temporar a unei uniti de msur ataat unei variabile


Alegerea sistemului de uniti de msur n care vor fi afiate rezultatele calculelor cu
uniti de msur, se face prin utilizarea casetei de dialog Math Options (meniul
Math Options), seciunea Unit System (vezi figura 8-7).

8.4 Alegerea sistemului de uniti de msur utilizat i
controlul formatului de afiare a rezultatelor cu uniti de
msur
Utilizarea unitilor de msur n documentele Mathcad
137

Fig. 8-7 Alegerea sistemului de uniti de msur

Rezultatele calculelor cu UM, se pot exprima fie n nume de mrimi fizice, fie n nume
de uniti de msur. Alegerea modului de afiare se face din seciunea Dimensions a
casetei de dialog Math Options.
n cazul n care se opteaz pentru afiarea rezultatelor n nume de mrimi fizice
(dimensions), este posibil redefinirea numelor mrimilor fizice de baz. Acest lucru
se poate face prin scrierea n casetele de editare ale seciunii Dimensions a casetei de
dialog Math Options (vezi figura 8-8).

Capitolul 8
138

Fig. 8-8 Schimbarea numelor mrimilor fizice de baz

n figura 8-9 acelai rezultat este exprimat n nume de mrimi fizice, respectiv n nume
de uniti de msur.



a.


b.
Fig. 8-9 Rezultate exprimate n nume de mrimi fizice sau n nume de UM

Utilizarea unitilor de msur n documentele Mathcad
139
Alte elemente legate de formatarea rezultatelor cu uniti de msur au fost prezentate
n 3.7.


Este posibil utilizarea UM n calculul integral sau cel diferenial. n figura 8-10, sunt
prezentate astfel de exemple.



a. b.
Fig. 8-10 Uniti de msur n calcul integral i diferenial

8.5 Utilizarea UM n calculul integral sau diferenial

141
9 Schimb de informaie ntre Mathcad i
alte aplicaii.

Obiective

Prezentarea modalitilor prin care se poate face schimp de
informaie ntre Mathcad i alte aplicaii Windows:
o Excel
o Matlab
o Baz de date
Prezentarea modului de lucru cu fiiere de date n Mathcad

9 Schimb de informaie ntre Mathcad i alte
aplicaii. _______________________________ 141
9.1 Inserarea unei componente Excel ............................................................142
9.2 Inserarea unei componente MATLAB....................................................147
9.3 Inserarea unei componente de tip baz de date .....................................151
9.4 Inserarea unei componente de tip Input Table ......................................159
9.5 Inserarea unei componente de tip control MathSoft .............................160
9.6 Inserarea unei componente de tip citire (Read), scriere (Write) din/n
fiiere ....................................................................................................................163
9.7 Funcii predefinite pentru citirea/scrierea din/n fiiere de date ASCII ....
....................................................................................................................166
Numr de pagini 23
Capitolul 9
142
Mathcad poate schimba informaii cu alte aplicaii. Acest lucru este posibil principial n
dou moduri:
prin intermediul fiierelor de date (ASCII sau nu);
prin inserarea de componente n documentele Mathcad.
Componentele sunt obiecte OLE (Object Linking and Embedding) i permit accesarea
din interiorul Mathcad a unor funcii i capabiliti specifice aplicaiei (componentei)
incluse. O component poate primi date de la Mathcad, dar poate s i transmit date
spre Mathcad, n mod dinamic, realiznd astfel o legtur permanent ntre
component i documentul Mathcad gazd.
Componentele ce pot fi conectate la Mathcad sunt:
Axum pentru realizarea de reprezentri grafice AXUM
Excel
MATLAB
Baze de date (Access, FoxPro, Excel)
SmartSketch - pentru realizarea de desene parametrizate
S-PLUS Graph pentru crearea de grafice S-PLUS
S-PLUS Script pentru accesarea mediului de programare S-PLUS
Mathcad poate transmite unei componente un scalar, un vector, o matrice sau un ir
de caractere i poate primi aceeai categorie de date. Tranzacia se face prin
intermediul unor variabile de intrare (input variables), sau a unor variabile de ieire
(output variables).
Ct privete schimbul de informaie prin intermediul fiierelor de date, este posibil fie
utilizarea inserrii unei componente de tip scriere/citire n/din fiier, fie prin utilizarea
unor funcii de acces la fiiere (pstrate de la versiuni anterioare, din dorina de a se
menine compatibilitatea).


Se va simula n paragrafele ce urmeaz inserarea unui obiect Excel ntr-un document
Mathcad. Iniial structura documentului Mathcad este simpl i nu conine dect
9.1 Inserarea unei componente Excel
Schimb de informaie ntre Mathcad i alte aplicaii.
143
definirea a dou variabile, Adaos i respectiv TVA (vezi figura 9-1). Valorile din cei doi
vectori vor fi transmise unui document Excel existent (vezi figura 9-2).


Fig. 9-1 Structura iniial a documentului Mathcad

Se observ c n coloanele D i E (Adaos, respectiv TVA), iniial nu se gsete nimic.
Acolo vor fi aduse valorile din documentul Mathcad.


Fig. 9-2 Structura iniial a documentului Excel

Paii ce trebuie parcuri pentru inserarea componentei Excel sunt urmtorii:
1. Insert Component. Se alege din lista din caseta de dialog Component
Wizard componenta Excel;
2. Dac fiierul Excel exist deja (cum este cazul n exemplul de fa), n caseta
Excel Setup Wizard, se alege numele fiierului [Excel] cu care se stabilete
legtura (vezi figura 9-3);

Capitolul 9
144

Fig. 9-3 Alegerea fiierului Excel cu care se stabilete legtura

3. Etapa cea mai important presupune stabilirea numrului de variabile de
intrare pentru (n) componenta Excel (Inputs), respectiv numrul de variabile
de ieire (transmise de Excel ctre Mathcad (Outputs). Tot acum se mai
stabilesc zonele din documentul Excel n care vor fi transferate variabilele de
intrare, respectiv de unde se vor prelua variabilele (sau variabila) de ieire (vezi
figura 9-4);

Schimb de informaie ntre Mathcad i alte aplicaii.
145

Fig. 9-4 Stabilirea numrului de variabile de intrare/ieire i a zonelor din Excel unde
acestea vor aciona

4. Dup apsarea butonului Finish, n documentul Mathcad va aprea un obiect
ca cel din figura 9-5;


Fig. 9-5 Obiectul Excel n prima faz de inserare n documentul Mathcad
Capitolul 9
146

5. Marcatorii se vor completa cu numele variabilelor de intrare, respectiv ieire
(vezi figura 9-6);

Fig. 9-6 Completarea numelor variabilelor de intrare/ieire

6. Un simplu clic n afara obiectului Excel va determina transformarea acestuia
n ceea ce se poate vedea n figura 9-7. Se poate observa c n coloanele
Adaos i TVA (din obiectul Excel) a fost transferat coninutul variabilelor
Mathcad omonime i c spre Mathcad a fost transferat coninutul coloanei Pret
de vanzare. Transferul s-a fcut n variabila [Mathcad] Pret, evaluat de
altfel chiar sub obiectul Excel.

Schimb de informaie ntre Mathcad i alte aplicaii.
147

Fig. 9-7 Forma final (evaluat) a componentei Excel


Pentru exemplificare se consider un exemplu care transmite aplicaiei MATLAB 3
variabile (de tip scalar) i primete de la acesta valoarea unei variabile de tip vector.
Cele 3 valori transmise MATLAB vor deveni argumente ale funciei logspace, care
creeaz un vector ale crui elemente sunt egal spaiate pe o scar logaritmic.
Structura iniial a documentului Mathcad este cea din figura 9-8.


Fig. 9-8 Structura iniial a documentului Mathcad

Inserarea unei componente de tip MATLAB, presupune parcurgerea urmtoarelor
etape:
9.2 Inserarea unei componente MATLAB
Capitolul 9
148
1. Prin utilizarea cmpului Insert Component MATLAB, se va obine
inserarea n documentul Mathcad a uni obiect ca cel din figura 9-9;

Fig. 9-9 Prima faz a inserrii unei componente MATLAB

2. Se execut clic dreapta pe obiectul inserat i se puncteaz cmpul Edit
Script;
3. n fereastra Script Editor [MATLAB], se scrie secvena din figura 9-10;


Fig. 9-10 Generarea secvenei MATLAB

4. Din meniul File (al casetei de dialog Script Editor - [MATLAB], se puncteaz
pe cmpul Close and Return i se rspunde cu Yes la ntrebarea Apply
changes?
5. Odat rentori n mediul Mathcad este obligatorie setarea corect a numelor
variabilelor de intrare i respectiv de ieire. Aceasta pentru c implicit acestea
se numesc in0, in1, in2,., respectiv out0, out1,. Setarea numelor
variabilelor se face prin executarea unui clic dreapta pe obiectul MATLAB inclus
i alegerea cmpului Properties. Tot implicit se consider c exist o singur
variabil de intrare (input) i tot una singur de ieire (output). Modificarea
acestei stri se poate face prin utilizarea cmpurilor Add Input Variable,
respectiv Add Output Variable (este uor de dedus funcionalitatea
Schimb de informaie ntre Mathcad i alte aplicaii.
149
cmpurilor Remove Input Variable, sau Remove Output Variable). n
cazul de fa se va utiliza de dou ori cmpul Add Input Variable, astfel c
se va ajunge la o situaie ca cea din figura 9-11;


Fig. 9-11 Adugarea de variabile de intrare

Dup adugarea a dou variabile de intrare, se realizeaz efectiv schimbarea
numelor implicite ale variabilelor de intrare/ieire. Acest lucru se face prin
utilizarea cmpului Properties, ceea ce va conduce la caseta de dialog din
figura 9-12.a. Schimbarea numelor variabile de ieire se face aa cum se vede
n figura 9-12.b.


a. b.
Fig. 9-12 Modificarea numelor variabilelor de intrare/ieire

Capitolul 9
150
6. Apsarea butonului OK, determin revenirea n mediul Mathcad, unde se va
realiza completarea marcatorilor cu numele variabilelor, aa cum se poate
vedea n figura 9-13;
7.

Fig. 9-13 Completarea numelor de variabile

8. Un simplu clic n afara obiectului MATLAB, sau apsarea tastei F9, va determina
actualizarea componentei MATLAB i implicit transferul de variabile ntre
aplicaii. O eventual evaluarea a variabilei vector, va produce efectul din
figura 9-14.

Fig. 9-14 Evaluarea variabile de ieire

Rspunsul l reprezint efectul utilizrii n mediul MATLAB a funciei logspace i
transmiterii ctre Mathcad a ceea ce aceast funcie ntoarce.

Schimb de informaie ntre Mathcad i alte aplicaii.
151

Inserarea unei componente de tip ODBC (Open Database Connectivity), permite
interogarea unei baze de date al crei driver suport SQL (Structured Query
Language). n aceast categorie intr de exemplu Microsoft Access, sau FoxPro.
Trebuie subliniat c pentru inserarea unei componente de tip ODBC ntr-un document
Mathcad, este obligatorie parcurgerea unei faze de configurare ce se realizeaz cu
ajutorul componentei Administrative Tools din Control Panel. De altfel acest
proces este imperios necesar ori de cte ori se ncearc accesarea unei baze de date
dintr-o alt aplicaie dect cea de tipul celei n care aceasta a fost creat.
Pentru ilustrarea tehnicii de inserarea a unei componente de tip ODBC, se va porni de
la o baz de date Access stocat n fiierul tabel_centralizator.mdb i care conine un
singur tabel, numit chiar Tabel1, cu structura din figura 9-15.


Fig. 9-15 Structura bazei de date (echivalent aici chiar cu un tabel)

Pentru a fi posibil inserarea ntr-un document Mathcad a unei componente ODBC,
trebuie ca independent de acest proces s fie parcurse urmtoarele etape:
1. Activarea Control Panel i deschiderea aplicaiei Administrative Tools;
2. Lansarea aplicaiei Data Sources (ODBC);
3. n caseta de dialog ODBC Data Source Administrator, se alege o surs de
date (o baz de date), sau se definete una nou (este vorba de fapt despre un
link - o legtur - spre o baz de date de un anumit tip (vezi figura 9-16);
9.3 Inserarea unei componente de tip baz de date
Capitolul 9
152
4. n eventualitatea ca s-a optat pentru o nou surs, se va folosi butonul Add,
care conduce la caseta de dialog Create New Data Source (vezi figura 9-17),
de unde se alege de fapt driver-ul (programul) care permite legtura la baza de
date propriu zis;
5. Dup alegerea driver-ului i apsarea butonului Finish, se va ajunge la caseta
de dialog ODBC Microsoft Access Setup (vezi figura 9-18), de unde se
alege baza de date cu care se va stabili legtura (butonul Select din seciunea
Database), se d un nume sursei de date (Data Source Name), se
furnizeaz un text descriptiv (Description) i se poate trece n caseta de
dialog Set Advanced Options (butonul Advanced), unde se precizeaz
numele unui utilizator i o parol pentru accesarea ulterioar a bazei de date
(vezi figura 9-19);


Fig. 9-16 Definirea unei noi surse de date

Schimb de informaie ntre Mathcad i alte aplicaii.
153
6. Procesul se ncheie prin apsarea butoanelor OK pn la ieirea din procesul de
configurare a bazei de date (a legturii la o baz de date).


Fig. 9-17 Alegerea driver-ului (programului) ce va permite accesul la baza de date

Capitolul 9
154

Fig. 9-18 Alegerea bazei de date propriu zise (a fiierului)


Fig. 9-19 Stabilirea unui utilizator i a unei parole de acces ulterior
Schimb de informaie ntre Mathcad i alte aplicaii.
155
Dup ce procesul de configurare a legturii la o baza de date s-a ncheiat, poate s
nceap includerea ntr-un document Mathcad a unei componente de tip ODBC.
Pentru aceasta se vor realiza urmtoarele aciuni:
1. Din meniul Insert Component se alege ODBC Read;
2. Din caseta de dialog ODBC IO Wizard (vezi figura 9-20), se alege legtura
spre baza de date din lista Select ODBC data source (vezi i figura 9-18) i
se precizeaz numele de utilizator (Username), respectiv parola de acces
(Password);


Fig. 9-20 Selectarea legturii la baza de date, precizarea utilizatorului i parolei

3. Din caseta de dialog File Read or Write Wizard (vezi figura 9-21), se alege
tabelul din componena bazei de date ce va fi interogat. n exemplul considerat
baza de date conine doar un tabel (numit chiar Tabel1);

Capitolul 9
156

Fig. 9-21 Alegerea tabelului din baza de date
4. Din lista de cmpuri se va selecta (alege) cmpul (sau cmpurile) ce vor fi
comunicate Mathcad-ului (vezi figura 9-22);


Fig. 9-22 Stabilirea cmpului (cmpurilor) ce vor fi transmise Mathcad

5. n documentul Mathcad se va insera o secven de tipul celei din figura 9-23.a.
Este obligatorie completarea numelui variabilei de ieire (pentru baza de date),
sau de intrare pentru Mathcad (vezi figura 9-23.b);
Schimb de informaie ntre Mathcad i alte aplicaii.
157


a.


b.
Fig. 9-23 Definirea variabilei n care vor fi extrase datele din baza de date

6. O evaluare a variabilei (A n exemplu), va produce un rezultat ca cel din
figura 9-24;


Fig. 9-24 Evaluarea variabilei de ieire

Este posibil i filtrarea datelor prin utilizarea unei clauze SQL de tip where. Astfel
dac se execut un clic dreapta pe pictograma ODBC Read i se acceseaz cmpul
Properties, se poate ajunge la seciunea Advanced a casetei de dialog din
figura 9-25, cu ajutorul creia se poate impune o clauz de tip WHERE. n exemplul
considerat s-a impus o condiie de tipul Salariul > 8000000, ceea ce a condus la o
evaluare a variabilei de ieire (A), ca n figura 9-26.

Capitolul 9
158

Fig. 9-25 Impunerea unei clauze WHERE


Fig. 9-26 Evaluarea precedat de o filtrare a datelor



Schimb de informaie ntre Mathcad i alte aplicaii.
159

Este posibil scrierea ntr-o variabil Mathcad a coninutului unui tabel (asemntor
cu unul generat n Excel) creat ad-hoc, sau eventual citirea dintr-un fiier de date de
unul din tipurile enumerate n 9.6.
Dac se dorete citirea ntr-o variabil Mathcad a coninutului unui tabel creat ad-hoc
se va proceda astfel:
1. Se insereaz o component de tip Input Table (Insert Component
Input Table);
2. Se execut clic stnga n oricare dintre celulele tabelului i se completeaz
coninutul;
3. Iniial sunt afiate numai dou linii i dou coloane ale tabelului, dar prin
utilizarea grupului de patru sgei sus, jos, stnga, dreapta , este posibil
accesarea (i completarea) altor zone ale tabelului;
4. Se completeaz n colul din stnga sus numele variabilei n care se scrie
tabelul (vezi figura 9-27).


Fig. 9-27 - Citirea unui tabel creat ad-hoc

Dac se dorete citirea dintr-un fiier de date, dup parcurgerea primei etape din cele
patru descrise, se execut clic dreapta pe zona tabelului i din meniul pop-up se
selecteaz cmpul Import . Se va ajunge la o caset de dialog de tip Read From
File, cu ajutorul creia se selecteaz fiierul din care se va face citirea.
9.4 Inserarea unei componente de tip Input Table
Capitolul 9
160
n ambele cazuri, este posibil formatarea tabelului, prin executarea aceluiai clic
dreapta, urmat de opiunea Properties, ceea ce va conduce la caseta de dialog din
figura 9-28, ale crei cmpuri au semnificaii uor de neles.



Fig. 9-28 Formatarea tabelelor de tip Input Table


Este posibil inserarea n documentele Mathcad a aa numitelor elemente de control
de tipul celor enumerate i reprezentate n figura 9-29. Aceste elemente [de control]
funcioneaz similar cu cele din categoria Microsoft Forms Controls.


9.5 Inserarea unei componente de tip control MathSoft
Schimb de informaie ntre Mathcad i alte aplicaii.
161
Check Box

ListBox

PushButton

RadioButton

Slider

TextBox

Fig. 9-29 Elemente de control

Trebuie subliniat c aceste componente mai fac parte din categoria aa numitelor
Scriptable Object Component (SOC). Utilizarea la maxim a acestor obiecte
presupune cunotine de programare ntr-un limbaj de tipul Java sau Visual Basic.
Astfel se vor putea asocia controalelor evenimente complexe i dezvolta aplicaii
personalizate de mare complexitate. n exemplul ce va urma se va face uz doar de
primul nivel (i cel mai simplu) de utilizare a componentelor de tipul elementelor de
control.
Analiza figurii 9-29 pune n eviden c de orice control se leag numele unei variabile
Mathcad. n funcie de tipul elementului de control i a aciunii exercitat asupra lui,
variabila va lua o anumit valoare. Este posibil ca de un element de control s fie
legate mai multe variabile, nu numai de ieire (output) cum este cea implicit,
plasat n colul din stnga sus, dar i de tip input (de intrare). Se recomand
pruden n ataarea de mai multe variabile de un element de control i oricum se face
precizarea c ntr-o astfel de situaie este obligatorie folosirea facilitilor de
programare.
Capitolul 9
162
Un element de control odat inserat, folosind tehnica clicului dreapta se poate face apel
la cmpul Properties, cu ajutorul cruia se poate controla aspectul i comportarea
obiectului.
Avnd n vedere complexitatea subiectului, nu se va insista prea mult asupra acestui tip
de componente, urmnd ca cei interesai s aprofundeze pe cont propriu domeniul.
n fine se mai atrage atenia asupra faptului c utilizarea facilitilor de configurare
(programare) ataate obiectelor de tip elemente de control presupune instalarea unuia
din limbajele de programare de tip script pe care le poate utiliza Mathcad. Acestea
sunt:
Microsoft VBScript (Visual Basic Scripting Edition) i Microsoft JScript (o implementare a
JavaScript). Ambele se pot obine gratuit de la adresa:
http://msdn.microsoft.com/scripting
n figura 9-30 este prezentat un exemplu simplu de utilizare a unor elemente de control
Mathcad.

Fig. 9-30 Exemplu de utilizare a elementelor de control Mathcad
Schimb de informaie ntre Mathcad i alte aplicaii.
163

n partea dreapt a documentului Mathcad sunt evaluate variabilele legate de
elementele de control. Aplicaia pornete de la precizarea numelui unei persoane i a
vrstei. Se mai precizeaz dac persoana lucreaz ntr-un mediu periculos. n funcie
de aceste date, folosind funcia if se stabilesc sporurile de vrsta i respectiv de mediu
periculos. n final toate datele sunt centralizate ntr-o variabil de tip vector ce conine
numele, vrsta i totalul sporurilor pentru persoana al crei nume a fost precizat iniial.


Este posibil scrierea sau citirea n/din fiiere de diverse tipuri, prin utilizarea
componentei de tip File Read or Write. Inserarea unei astfel de componente se
realizeaz prin parcurgerea urmtoarelor etape:
1. Insert Component File Read or Write;
2. Alegerea tipului de operaie ce se va executa (citire sau scriere) vezi
figura 9-31;


Fig. 9-31 Stabilirea tipului de operaie ce se va executa

3. Stabilirea tipului de fiier n care se va scrie sau din care se va citi, precum i
numele acestui fiier i poziia sa n arborele de directoare (vezi figura 9-33).
Mathcad tie s scrie sau s citeasc n/din urmtoarele tipuri de fiiere:
Formatted Text (text formatat);
9.6 Inserarea unei componente de tip citire (Read), scriere
(Write) din/n fiiere
Capitolul 9
164
Tab Delimited text (text n care cmpurile sunt separate de
caractere TAB);
Comma Separated Values (text n care cmpurile sunt separate
prin punct i virgul);
Matlab;
Excel;
Lotus 1-2-3;
Quattro Pro;
dBase III;
S-Plus.


Fig. 9-32 Stabilirea tipului de fiier i a poziiei n structura de directoare

Dac este vorba de operaii de citire din fiiere, Mathcad citete coninutul fiierelor n
variabile de tip matrice.
Pentru exemplificare se consider scrierea n fiiere de tip text, a unei variabile de tip
matrice prezentat n figura 9-33.
Schimb de informaie ntre Mathcad i alte aplicaii.
165

Fig. 9-33 Generarea de fiiere de tip text (ASCII)

Rezultatele sunt prezentate n figura 9-35.

a.
b.

c.

Fig. 9-34 Fiiere ASCII obinute cu ajutorul unei componente de tip File Read or
Write


Capitolul 9
166

n versiunile mai vechi de Mathcad, accesul la fiiere de date era posibil prin utilizarea
unor funcii predefinite. Astfel de funcii operau NUMAI cu fiiere text (ASCII), de dou
tipuri: structurate i nestructurate. Nu se puteau scrie n fiiere dect valori numerice,
mai precis vectori sau matrice.
Primul [tip de fiiere] conine datele structurate (de unde i numele) pe rnduri i
coloane, astfel c o coresponden fiier matrice este imediat. Al doilea tip conine
datele aranjate sub forma unui ir de valori, ceea ce conduce imediat la concluzia c
astfel de fiiere sunt destinate stocrii de vectori. Este ct se poate de corect s se
scrie matrice n fiiere nestructurate, dar va fi imposibil restaurarea matricei (revenirea
la un anumit numr de linii i coloane). Are sens s se scrie vectori n fiiere
structurate, pentru c astfel se va putea face distincia ntre vectorii linie i cei coloan.
Funciile de citire/scriere predefinite corespund componentelor de tip File Read or
Write, cnd se opteaz pentru fiiere cu extensia *.dat (acestea sunt fiiere
nestructurate), sau *.prn (acestea sunt fiiere structurate).
Funciile de citire/scriere din/n fiiere de date ASCII sunt:
Pentru fiiere nestructurate
- WRITE(nume-fiier) scrie ntr-un fiier nestructurat
- READ(nume_fiier) citete dintr-un fiier nestructurat
- APPEND(nume_fiier) adaug date la un fiier nestructurat
Pentru fiiere structurate
- WRITEPRN(nume-fiier) scrie ntr-un fiier structurat
- READPRN(nume_fiier) citete dintr-un fiier structurat
- APPENDPRN(nume_fiier) adaug date la un fiier structurat
Funciile de tip scriere obinuit (WRITE, WRITEPRN) n cazul n care au ca argument
numele unui fiier existent n momentul apelrii, va scrie PESTE fiierul vechi,
distrugnd complet i IREMEDIABIL datele din acesta. Dac fiierul argument nu exist
n momentul apelrii funciei, acesta va fi creat. Spre deosebire de funciile WRITE i
WRITEPRN, funciile APPEND i APPENDPRN, atunci cnd au ca argument numele unui
9.7 Funcii predefinite pentru citirea/scrierea din/n fiiere de
date ASCII
Schimb de informaie ntre Mathcad i alte aplicaii.
167
fiier existent n momentul apelrii, scriu n continuarea datelor, fr s le distrug pe
cele existente.
Se mai face precizarea c n cazul fiierelor structurate este posibil ca fiierul s conin
o prim linie de text (care ns s nu nceap cu o cifr).
O alt regul ce trebuie reinut este c funciile de scriere (WRITE, WRITEPRN,
APPEND, APPENDPRN), trebuie s apar singure n membrul stng al unei relaii de
atribuire, n vreme ce funciile de citire (READ, READPRN) apar n membrul drept al
unor relaii de atribuire. Funciile de citire pot fi i evaluate (dup nume se poate insera
operatorul de evaluare =).
n exemplele ce urmeaz sunt ilustrate cteva ipostaze de utilizare a funciilor
predefinite de acces la fiiere de date.


Chestia cu PRNCOLWIDTH i restul


169
10 Programare n Mathcad

Obiective


Familiarizarea cititorului cu structurile de programare
oferite de Mathcad
Prezentarea tehnicilor de control a execuiei programelor



10 Programare n Mathcad________________ 169
10.1 Prezentare general ..................................................................................170
10.2 Instruciunea de test (if) ...........................................................................173
10.3 Instruciuni de ciclare...............................................................................175
10.4 Controlul execuiei programelor .............................................................178
10.5 Subrutine (program n program) ............................................................182
10.6 Recursivitate..............................................................................................183


Numr de pagini 14

Capitolul 10
170

Mathcad dispune de faciliti de programare, dei nu se poate vorbi despre un limbaj
[de programare] propriu zis, ci mai degrab despre o serie de operatori [de
programare], ce nu pot fi folosii dect n corpul unor structuri de programare ce fac
parte din foile de lucru Mathcad.
Programele scrise n Mathcad sunt de tipul funciilor utilizate n limbajele de programare
avansate (de tip Pascal, C, Fortran etc).
Funciile create n Mathcad cu ajutorul operatorilor de programare primesc de la
documentul n interiorul cruia se gsesc date prin intermediul unor variabile argument
i ntorc spre documentul gazd, rezultatul ultimei evaluri din corpul funciei.
n figura 10.1, este prezentat structura unui program Mathcad care calculeaz media
aritmetic a elementelor pozitive ale unei matrice.

Fig. 10-1 Exemplu de program Mathcad

Programul din figura 10-1 definete o funcie care primete de la documentul
Mathcad numele variabilei argument. n corpul funciei este calculat suma i numrul
10.1 Prezentare general
Programare n Mathcad
171
elementelor pozitive. Ultima instruciune din corpul funciei calculeaz media, iar
valoarea rezultat este transmis documentului Mathcad.
Odat definit, funcia poate fi apelat ori de cte ori este nevoie n cadrul
documentului n care a fost creat. La apelare, se va folosi pentru argument orice nume
al unei variabile matrice. Generarea unei secvene ca cea din figura 10-1, se poate
face numai prin utilizarea paletei de butoane Programming (vezi figura 10-2) deci
nu se scrie niciodat if, while etc.



a. b.
Fig. 10-2 Paleta de butoane Programming

Structurile de programare specifice Mathcad funcioneaz dup filozofia clasic, fapt
pentru care nu se vor explica n detaliu elemente ce in de logica fiecrei structuri n
parte. Pentru aceasta se poate eventual consulta Help-ul Mathcad.
Se vor face totui cteva observaii cu caracter general.
n general, definirea de structuri de programare n MathCAD nu se poate
realiza dect cu ajutorul butoanelor de pe paleta de programare i nu prin
scrierea direct la prompter +. Este evident c pentru a deveni funcionale,
toate seciunile de mai sus trebuie sa aib completate CORECT, toate
placeholder-ele (marcatoarele). Toate structurile de programare TREBUIE sa
apar, NUMAI n dreapta unei seciuni de tip Add Line;
Inserarea ntr-un document MathCAD a unui program trebuie s nceap deci
cu apsarea butonului . Primul efect va fi apariia unei linii verticale
la dreapta creia se vor gsi dou placeholdere, ca n exemplul din figura
10-3.
Capitolul 10
172

Fig. 10-3 Marcatori inserai de secvena Add Line

Fiecare placeholder (marcator) corespunde unei linii de program. Dac sunt
necesare mai mult de dou linii, se selecteaz unul din cele dou marcatoare
iniiale i se apas nc odat pe butonul Add Line. Sub marcatorul selectat se
va mai insera unul nou. Procesul poate continua pn cnd se va obine
numrul de marcatoare (linii de program) necesare;
n cadrul programelor [Mathcad] pentru atribuire nu se folosete :=, ci
operatorul (vezi figura 10.2);
Variabilele din corpul unui program [Mathcad] au regim de variabil local, deci
se poate folosi acelai nume de variabil att n corpul unui program ct i n
documentul [Mathcad] care conine programul, fr s se produc nici o
confuzie. Cu toate acestea ntr-un program Mathcad se poate face referire la o
variabil sau o funcie definit anterior n documentul Mathcad vezi
figura 10-4;


Fig. 10-4 Variabile locale

Se poate observa c n definirea funciei f(x), corpul funciei recunoate
variabila a ce vine din documentul Mathcad i c n cazul funciei g(y),
variabila a ia n corpul funciei o valoare ce nu se simte n documentul gazd.
Programare n Mathcad
173
Secvenele de program Mathcad pot conine i evaluri simbolice, cu observaia
c nu pot fi evaluate simbolic secvenele ce conin declaraiile return i
on error. n figura 10-5 este prezenta un program Mathcad ce conine
elemente de calcul simbolic. Programul definete structura unui polinom de
grad n. Dup definirea funciei, pentru evaluare se vor parcurge urmtorii pai:
1. Dup ce se scrie f(3), se tasteaz CTRL+SHIFT+. (ceea ce va insera
operatorul de evaluare simbolic);
2. n marcatorul ce apare (vezi figura 10-5.a), se scrie cuvntul cheie
expand;
3. Se tasteaz F9. Se va obine rezultatul din figura 10-4.b.



a. b.
Fig. 10-5 Secven de programare ce conine elemente de calcul simbolic

Pentru ilustrarea tehnicilor de programare n Mathcad, mai jos sunt prezentate cteva
exemple:


Clasica secven if funcioneaz n context Mathcad n logica bine cunoscut.
Expresia din stnga cuvntului cheie if este evaluat numai dac expresia (condiia) din
dreapta lui if este evaluat TRUE, sau la o valoare pozitiv (echivalentul numeric al lui
FALSE este orice valoare negativ) vezi figura 10-6.a.
10.2 Instruciunea de test (if)
Capitolul 10
174
Dac se dorete executarea mai multor instruciuni n cazul n care condiia de dup if
este evaluat TRUE, dup selectarea marcatorului din stnga cuvntului cheie if (vezi
figura 10-6.a), se apas butonul Add line i se obine o secven ca cea din
figura 10-6.b.



a. b.
Fig. 10-6 Secvena if

Pentru exemplificare, mai jos sunt sugerate cteva probleme rezolvate cu ajutorul
secvenei if.
n figura 10-7 sunt definite dou funcii cu expresii diferite pe intervale. Cuvntul cheie
otherwise se traduce prin n rest.


Fig. 10-7 Funcii definite pe intervale

10.2.1 Definirea de funcii pe intervale.
Programare n Mathcad
175

Structurile de ciclare permit executarea unei secvene de instruciuni de mai multe ori.
Numrul de execuii poate fi cunoscut (ca n cazul secvenei for), sau nu (ca n cazul lui
while). Mai jos sunt prezentate cteva exemple simple de utilizare a unor secvente de
ciclare.
10.3.1.1 Calculul sumei primelor n numere naturale
n figura 10-8 se poate vedea cum arat un program foarte simplu ce calculeaz suma
primelor n numere naturale.

Fig. 10-8 Calcului sumei primelor n numere naturale
10.3.1.2 Calculul lui n!
n figura 10-9 apare un program pentru calculul lui n!


Fig. 10-9 - Calculul lui n!

10.3.1.3 Bucl FOR cu incrementare nentreag
Este posibil proiectarea unei structuri de ciclare utiliznd secvena for, dar cu
incrementare nentreag. n figura 10-10 se poate analiza un astfel de exemplu.
10.3 Instruciuni de ciclare
10.3.1 Instruciunea for
Capitolul 10
176


Fig. 10-10 Bucl for cu incrementare nentreag
10.3.1.4 Instruciunea while
Problema n cazul secvenelor while este s se asigure intrarea n ciclu, dar i
ieirea din acesta. Logica unei construcii de tip while (vezi fig 10-11) este
urmtoarea:
Atta timp ct condiie este evaluat TRUE sau la o valoare pozitiv, vor fi executate
instruciunile 1n. Pentru a se asigura ieirea din bucla while trebuie ca n cadrul
instruciunilor 1n s se ajung la evaluarea FALSE sau la o valoare negativ a
condiiei.


Fig. 10-11 - Secvena while

Programare n Mathcad
177
Pentru o mai bun nelegere a utilizrii construciei while, mai jos sunt prezentate
cteva exemple.

10.3.1.5 Calculul lui n!


Fig. 10-12 - Calculul lui n!
10.3.1.6 Gsirea primului element al unui vector mai mare dect o
anumit valoare
n figura 10-13 este prezentat un program care gsete primul element al unui
vector mai mare dect o anumit valoare (prag).


Fig. 10-13 - Gsirea primului element al unui vector mai mare dect o anumit
valoare

Capitolul 10
178

Secvena de tip break permite ieirea forat dintr-o bucl la ndeplinirea unei
anumite condiii. Aceast logic impune asocierea lui break cu o construcie if.
Aciunea de tip break are loc numai cnd condiia din dreapta lui if este evaluat TRUE
sau la o valoare strict pozitiv.
n figura 10-14 se prezint o variant de calcul a lui n! cu utilizarea unei secvene de tip
break.

Calculul lui n! utiliznd secvena BREAK


Fig. 10-14 Utilizarea secvenei break

Observaie: Se va nota c pentru scrierea condiiei din dreapta lui if s-a folosit egalul ce
apare i n structura funciei Fiind (CTRL+=).
Structura de tip continue permite ieirea forat dintr-o iteraie. Dac aceasta este
coninut ntr-o alta (iteraii imbricate), se execut iteraia de nivel superior urmtoare.
Dac iteraia nu este coninut ntr-o alta, se sare la urmtorul pas de iterare de
dup cel ntrerupt.
Ca i n cazul lui break, continue se asociaz cu o construcie de tip if. n figura 10-
15 este prezentat un exemplu de program care utilizeaz o secven de tip continue
pentru a calcula suma elementelor pozitive ale unei matrice. n figura 10-16, este
10.4 Controlul execuiei programelor
10.4.1 Secvena break
10.4.2 Secvena continue
Programare n Mathcad
179
reprodus un exemplu ce figureaz n modului Quicksheets, la capitolul
Programming. Funcia calculeaz suma numerelor impare de la 0 la n. n program se
face apel la funcia predefinit mod, care ntoarce restul mpririi primului argument la
cel de-al doilea.


Fig. 10-15 Calculul sumei elementelor pozitive ale unei matrice


Fig. 10-16 Calculul sumei numerelor naturale impare mai mici dect n

Capitolul 10
180
Aa cum s-a mai spus, un program Mathcad ntoarce rezultatul ultimei evaluri.
Construcia return permite ca un program s se ntrerup i s ntoarc documentului
din care face parte altceva dect rezultatul evalurii ultimei linii de program. Ca i n
cazul secvenelor break sau continue, return se asociaz cu o structur de tip if.
n figura 10-17 este prezentat un program care determin primul element negativ al
unei matrice i ntoarce indicii acestuia precum i elementul propriu zis.


Fig. 10-17 Stabilirea primului element negativ al unei matrice

Se face observaia c aa cum e scris programul matricea este parcurs pe coloane.
Rezultatul nu ar fi fost acelai dac s-ar fi inversat ntre ei indicii i i j.
Secvena on error permite detectarea unor erori de program, care n general ar fi
produs ntreruperea execuie acestuia i trimiterea unui mesaj de eroare general, care
nu permite o depistare imediat a cauzei care a condus la eroare. Construcia on
error permite chiar i definirea unor mesaje de eroare clare, ce fac astfel mai facil
depanarea programelor.
10.4.3 Secvena return
10.4.4 Secvena on error
Programare n Mathcad
181
n figura 10-18 apare un program care calculeaz media elementelor pozitive ele unei
matrice. Dac astfel de elemente nu exist, se va ajunge la o mprire cu zero. O astfel
de situaie poate fi stpnit prin utilizarea construciei on error. Se poate observa
c este posibil i generarea unui mesaj de eroare ct se poate de clar i care se
produce numai cnd are loc mprirea la zero.


Fig. 10-18 Structura on error
Capitolul 10
182

Fig. 10-19 Funcia error

Este posibil generarea unui anumit mesaj de eroare i prin utilizarea funciei error,
aa cum se poate vedea mai jos, n figura 10-19.
Diferena este c de aceast dat funcia nu se va executa, iar mesajul de eroare apare
numai atunci cnd se execut clic stnga pe numele funcie (colorat n rou, ca semn
de eroare).


Odat o funcie definit printr-o secven de programare Mathcad, este posibil
folosirea ei n corpul unui alt program (funcie), cu respectarea regulii de parcurgere a
documentelor de ctre Mathcad (de la stnga la dreapta i de sus n jos).
10.5 Subrutine (program n program)
Programare n Mathcad
183

Programarea n Mathcad permite recursivitate, adic definirea unei funcii n raport cu
ea nsi. Acest lucru este posibil cu respectarea condiiilor:
- s existe o definiie a unei funcii n raport cu o valoare anterioar a ei;
- s fie definit o condiie iniial care s asigure c recursivitatea nu va avea loc
la infinit.
n figura 10-20 se poate vedea cum se utilizeaz recursivitatea. Prima linie a micului
program reprezint condiia care asigur evitarea recursivitii la infinit, iar a doua
[linie] definete funcia n raport cu o valoare anterioar a acesteia.
De menionat c recursivitatea dei produce programe mai compacte i deci mai uor
de urmrit nu este o metod care asigur o eficien de calcul pe msur.



Fig. 10-20 Recursivitate



10.6 Recursivitate

185
11 Calcul simbolic

Obiective


Familiarizarea cititorului cu facilitile oferite de Mathcad n
domeniul calcului simbolic
Prezentarea tehnicilor de evaluare simbolic


11 Calcul simbolic _______________________ 185
11.1 Prezentare general ..................................................................................186
11.2 Modaliti de evaluare simbolic.............................................................188

Numr de pagini 21
Capitolul 12
186


Una din cele mai spectaculoase faciliti ale MathCAD, este posibilitatea de evaluare
simbolic a expresiilor. Spre deosebirea de evaluarea obinuit care produce numai
rezultate strict numerice, evaluarea simbolic tie s opereze cu simboluri, astfel nct
rezultatele nsei ale evalurilor simbolice conin simboluri. Acestea sunt nume de
variabile, de constante predefinite, sau chiar de funcii. n figura 11-1 sunt prezentate
doar cteva exemple de evaluri simbolice.


Fig. 11-1 Exemple de evaluri simbolice

Trebuie precizat c n funcie de calculul (evaluarea) simbolic dorit, expresia de
evaluat va trebui selectat ntr-un anumit fel. Astfel pentru factorizarea unei expresii
(scrierea unei expresii sub form de produs de factori), se va selecta (evident nainte
de evaluare) ntreaga expresie, ca n exemplul din figura 11-2:




11.1 Prezentare general
Animaie n MathCAD
187
Fig. 11-2 Selectarea total a unei expresii ce se va evalua simbolic

n alte situaii, se va selecta numai numele unei variabile sau o subexpresie dintr-o
expresie, ca n exemplul din figura 11-3, care rezolv simbolic o ecuaie de gradul 2 :

n acest din urm caz, cursorul a fost pur i simplu plasat n imediata vecintate a
variabilei n raport cu care se va face calculul simbolic (aici gsirea soluiilor ecuaiei de
gradul 2 n x).
n general, modul cum se realizeaz selecia ce precede calculul simbolic, este n acord
logic cu calculul. Este normal ca n cazul rezolvrii simbolice a unei ecuaii s se
specifice care s fie variabila care denumete necunoscuta, dup cum dac se dorete
factorizarea unei expresii este logic s se selecteze toat expresia (ca n exemplele de
mai sus). Asupra acestor chestiuni se va reveni cnd vor fi prezentate mai pe larg
diferitele tipuri de calcul simbolic pe care MathCAD tie s le fac.
Expresiile care pot fi evaluate simbolic pot fi scalare sau matriciale i pot conine
urmtorii operatori :
Operatorii scalari i matriceali +, -, *, /, putere (^), radical, conjugat, complex,
sum, produs, derivare, integrare, transpusa i determinantul unei matrice;
Funciile trigonometrice, hiperbolice, inversele acestora, logaritmic,
exponenial, Re, Im, erf, mod, max, min, identity, i eigenvals pentru matrice;
Nume de variabile i constante, inclusiv constantele predefinite , e, i simbolul
infinit.


Fig. 11-3 Selectarea unei variabile dintr-o expresie ce se va evalua simbolic
Modul de
selectare
Capitolul 12
188

n cazul evalurilor simbolice, rolul operatorului = este luat de operatorul de evaluare
simbolic . Acesta, atunci cnd este folosit fr alt indicaie explicit, ntoarce o
versiune simplificat a expresiei (termenul simplificat avnd aici un neles foarte
larg. n general operatorul de evaluare simbolic se va utiliza ca atare n cazul
calculelor [simbolice] de integrale sau difereniale, aa cum se poate vedea n
figura 11-4.
Operatorul de evaluare simbolic se folosete astfel:
se selecteaz expresia de evaluat;
se tasteaz combinaia de taste CTRL + . (sau se folosete butonul de pe
bara de instrumente Symbolic vezi figura 11-5);
se puncteaz cu mouse-ul n afara expresiei sau se apas tasta F9.
n figura 11-4 sunt prezentate fazele utilizrii operatorului de evaluare simbolic.



CTRL +.


F9 sau clic stnga n afara expresiei
Fig. 11-4 Utilizarea operatorului de evaluare simbolic

11.2 Modaliti de evaluare simbolic
11.2.1 Evaluarea cu ajutorul operatorului de evaluare simbolic
Animaie n MathCAD
189

Fig. 11-5 Operatorul de evaluare simbolic

Pentru evaluri simbolice mai bine intite, se vor utiliza cuvinte cheie (vezi 11.2.2).
Pentru realizarea de evaluri simbolice de un anumit tip, se recomand utilizarea
urmtoarei tehnici:
se selecteaz expresia de evaluat;
se tasteaz combinaia de taste CTRL + SHIFT + . , sau se folosete
butonul (vezi figura 11-6);


Fig. 11-6 Operatorul de evaluare cu cuvnt cheie

se ajunge la o situaie ca cea din figura 11-7.a. n marcatorul necompletat
se va scrie un cuvnt cheie (vezi figura 11-7.b);
se apas tasta Enter i se ajunge la o situaie ca cea din figura 11-7.c.

a.

b.

c.

Fig. 11-7 Evaluarea simbolic cu cuvnt cheie
11.2.2 Evaluarea cu ajutorul operatorului de evaluare simbolic i a
cuvintelor cheie
Capitolul 12
190
Pentru evitarea oricror probleme se recomand utilizarea butoanelor cu cuvinte cheie,
de pe vara de instrumente Symbolic (vezi figura 11-8).


Fig. 11-8 Bara de instrumente Symbolic

Cuvintele cheie recunoscute de Mathcad sunt prezentate n tabelul de mai jos.
Cuvnt cheie Efect (semnificaie)
complex
Evaluarea complex a unei expresii (cu separarea prilor real,
respective complex).
Exemple:
- Evaluare cu operatorul

- Evaluare cu cuvntul cheie complex

Se observ c n cel de-al doilea caz rezultatul are prile imaginar
i real bine separate.
float, [m]
Foreaz evaluarea numeric cu m (0m250) cifre (care includ i
partea ntreag, dar nu i punctul zecimal) a unei expresii. Dac
parametrul m lipsete, valoarea implicit a numrului de zecimale
este 20.
Exemple:

Animaie n MathCAD
191
simplify
Simplific (prin reduceri de termeni, simplificri, sau prin utilizarea
formulelor trigonometrice sau a funciilor inverse) o expresie.
Exemple:

expand,
[expr]
Dezvolt produsele de sume, sau funcii trigonometrice de sume,
sau fracii (care sunt descompuse n sume de fracii simple). Dac
parametrul expr exist, atunci subexpresia expr nu va fi afectat de
expandare.
Exemple:
- Evaluare fr parametrul expr

- Evaluare cu parametrul expr

factor,
[expr]
Factorizeaz (transform n produse de factori) o expresie. Dac
argumentul expr exist (el este opional) n cazul factorizrii
expresiilor ce conin radicali factorizarea se va face n raport cu expr.
Tot cu ajutorul cuvntului cheie factor se poate realiza
descompunerea unui numr ntreg n factori primi. Cuvntul cheie
factor se mai poate folosi i pentru transformarea unei sume de
fracii ntr-o fracie simpl (aceast operaie presupune i aducerea
la acelai numitor).
Exemple:



solve, var
Rezolv o ecuaie sau un sistem de ecuaii. Parametrul var poate fi
un scalar sau un vector ce conine numele
necunoscutei/necunoscutelor.
Exemple:
- Rezolvarea unei ecuaii
Capitolul 12
192

- Rezolvarea unui sistem

collect,
var1varn
Ordoneaz o expresie n ordinea descresctoare a puterilor
variabilelor precizate de var1,varn.
Exemple:



coeffs, var
ntoarce sub forma unui vector coeficienii polinomiali ai expresiei
argument, n raport cu variabila var.
Exemple:

sau

substitute,var1
=var2
nlocuiete toate apariiile variabilei var1 dintr-o expresie, cu o
subexpresie sau cu o alt variabil. Expresia sau variabila de
nlocuire sunt simbolizate de parametrul var2. pentru semnul = se
Animaie n MathCAD
193
va folosi combinaia de taste CTRL+=.
Exemple:

series,var=z,
m
Dezvolt n serie de puteri (Taylor sau Laurent) o expresie.
Parametrul var precizeaz variabila considerat pentru dezvoltarea n
serie, scalarii z i m, semnific punctul n jurul cruia se face
dezvoltarea, respectiv ordinul de dezvoltare. Argumentele z i m
sunt opionale. Dac lipsesc, dezvoltarea se face n jurul punctului 0
ntr-o serie de ordin 6. Ordinul precizat de parametrul m d o
indicaie asupra nivelului erorii ce se face prin considerarea unui
numr finit de termeni.
Exemple:

convert,parfrac
,var
Transform o expresie ntr-o sum de fracii simple. Parametrul var
precizeaz variabila ce se va considera pentru determinarea fraciilor
simple.
Exemple:

fourier, var
Calculeaz transformata Fourier a unei expresii n raport cu variabila
var. Rezultatul este o funcie de forma:

dt e t f
t i
) ( , unde f(t) este funcia pentru care se determin
transformata Fourier.
Exemple:

Capitolul 12
194
invfourier, var
Calculeaz inversa transformrii Fourier pentru o expresie, n raport
cu variabila var. Rezultatul este o funcie de forma:


d e F
t i
) (
2
1
, unde F() este funcia pentru care se
determin transformata invers.
Exemple:

laplace, var
Calculeaz transformata Laplace a unei expresii n raport cu variabila
var. Rezultatul este o funcie de forma:

0
) ( dt e t f
t s
, unde f(t) este funcia pentru care se determin
transformata.
Exemple:

invlaplace, var
Calculeaz inversa transformrii Laplace pentru o expresie, n raport
cu variabila var. Rezultatul este o funcie de forma:

i
i
t s
ds e s F

) (
2
1
, unde F(s) este funcia pentru care se
determin transformata invers.
Exemple:
Animaie n MathCAD
195

ztrans, var
Calculeaz transformata Z a unei expresii n raport cu variabila var.
Rezultatul este o funcie de forma:

0
) (
n
n
z n f , unde f(n) este funcia pentru care se determin
transformata.
Exemple:

Se menioneaz c n stnga liniei verticale sunt prezentate
semnalele continui de la care s-a plecat. Expresia ce sufer efectul
evalurii cu cuvntul cheie ztrans, reprezint semnalul discret.
Pentru cteva detalii suplimentare legate de transformata Z, vezi
notele ce urmeaz imediat dup tabelul curent
invztrans, var
Calculeaz inversa transformrii Z pentru o expresie, n raport cu
variabila var. Rezultatul este o funcie de forma:




C
n
dz z z F
i
1
) (
2
1

, unde F(z) este funcia pentru care se


determin transformata invers.
Exemple:

Capitolul 12
196
assume
constraint
Realizeaz o evaluare simbolic impunnd o anumit condiie
explicitat de secvena constraint. n cadrul acestei secvene, se pot
folosi operatorii relaionali (<, >, , )
Exemple:



Transformata Z se folosete pentru prelucrarea semnalelor eantionate (digitale),
obinute n urma unui traseu ca cel din figura 11-9.
Se pornete de la un semnal continuu. n prima faz se realizeaz eantionarea
valorilor de pe abscis (n general timpul), obinndu-se astfel semnalul eantionat,
dup care se realizeaz o discretizare a valorilor semnalului (se obine aa numitul
semnal numeric). Transformata Z opereaz cu semnalul numeric, pentru care deci se
poate vorbi de un ir discret de valori. Dei ele nu sunt dect rareori identice, vom
considera c semnalul eantionat i cel numeric sunt practic identice (ceea ce
corespunde unui cuantificator intrare-ieire cu trepte foarte mici (vezi Metode n
analiza circuitelor electronice de Mugur Svescu,, Ed. t i Enc, Buc, 1985).





Fig. 11-9 - Circuit de formare a semnalului eantionat x
T
(t) i a semnalului numeric
x
d
(t), din semnalul continuu x(t)

Dac se noteaz cu x[n] semnalul numeric, relaia folosit pentru calculul transformatei
Z este :

Surs de semnal
continuu
Eantionator
Cuantificator
x(t)
x
T
(t)
x
d
(t)

=
0
] [ ) (
n
n
z n x z X
Animaie n MathCAD
197

n figura 11-10, sunt prezentate semnalul continuu i cel eantionat.


Fig. 11-10 - Semnal continuu i semnal eantionat

Se mai face precizarea c dei sensibile la diferena majuscul-minuscul, cuvintele
cheie nu sunt sensibile la caracteristicile fonturilor (cum este cazul numelor de variabile
sau de funcii - vezi 3.5.
Rezolvarea simbolic a sistemelor de ecuaii se poate face i cu ajutorul blocului
Given-Fiind, aa cum se poate vedea n figura 11- 11.


Fig. 11-11 Rezolvarea simbolic a unui sistem folosind blocul Given Fiind

Se atrage atenia c dup scrierea Find(x,y,z) se insereaz operatorul de evaluare
simbolic (sau combinaia de taste CTRL + .). Se mai remarc i faptul c nu a
fost necesar o estimare iniial a soluiei.
t
0 T 2T 3T
nT
Capitolul 12
198
Pentru calculele simbolice ce fac uz de cuvintele assume i simplify este posibil un
reglaj fin al evalurii prin folosirea aa numiilor modificatori de cuvinte cheie.
Pentru nelegerea modului de funcionare a modificatorilor se va urmri figura 11-12.




Fig. 11-12 Modificatori de cuvinte cheie

Se mai face precizarea c pentru cuvntul cheie simplify, se mai poate folosi
modificatorul trig. Acesta va determina simplificarea expresiilor trigonometrice innd
cont numai de relaiile:
1 ) ( sinh ) ( cosh
1 ) ( cos ) ( sin
2 2
2 2
=
= +
x x
x x

Este posibil i folosirea succesiv sau simultan a mai mult de un cuvnt cheie pentru
evalurile simbolice.
Utilizarea succesiv va permite vizualizarea rezultatelor intermediare, n vreme ce
utilizarea simultan va produce direct rezultatul final.
11.2.3 Modificatori de cuvinte cheie
11.2.4 Utilizarea succesiv sau simultan a mai multor cuvinte cheie
Animaie n MathCAD
199
11.2.4.1 Utilizarea succesiv a mai multor cuvinte cheie
Tehnica de lucru pentru ntrebuinarea succesiv a mai multor cuvinte cheie este
urmtoarea:
1. Se scrie expresia de evaluat;
2. Se insereaz operatorul de evaluare simbolic (fie cu ajutorul
combinaiei de CTRL + SHIFT + ., fie folosind bara de instrumente
Symbolic). Se va ajunge la o situaie de tipul celei de mai jos:

3. Se apas ENTER pentru obinerea primului rezultat. Se va ajunge la:

4. Se face clic stnga pe rezultat i se insereaz nc odat operatorul . Se
ajunge la:

5. n marcatorul liber se completeaz noul cuvnt cheie. Se poate ajunge la:

6. Se apas ENTER pentru obinerea noului rezultat, adic (n cazul exemplului
prezentat):

7. Se pot insera n continuare noi cuvinte cheie.
11.2.4.2 Utilizarea simultan a mai multor cuvinte cheie
Dac rezultatele intermediare nu intereseaz, se poate ajunge direct la cel final prin
utilizarea simultan a mai multor cuvinte cheie.
Modul de operare este urmtorul:
Capitolul 12
200
1. Se scrie expresia de evaluat;
2. Se insereaz operatorul de evaluare simbolic . Se ajunge la o situaie ca
cea de mai jos:

3. Se execut nc odat combinaia de taste CTRL + SHIFT + . . Se ajunge la:

4. Se scrie al doilea cuvnt cheie:

5. Se poate continua cu inserarea de noi cuvinte cheie, sau se apas ENTER
pentru obinerea rezultatului final:

Exist dou diferene majore ntre utilizarea meniului Symbolic sau a cuvintelor cheie
pentru realizarea de evaluri simbolice. Acestea sunt:
Evalurile simbolice realizate cu ajutorul meniului Symbolic nu verific
dac variabilele sau funciile din expresia de evaluat au fost definite
anterior, spre deosebire de situaia n care se folosesc cuvinte cheie, caz n
care aceast verificare are loc, urmnd ca Mathcad-ul s nlocuiasc n
expresie variabilele sau funciile anterior definite cu valorile lor n momentul
evalurii simbolice (exist dou excepii, cnd o variabil a fost definit
recursiv, respectiv cnd variabila e de tip ir de valori);
Evalurile simbolice realizate cu ajutorul meniului Symbolic nu se
actualizeaz automat.
11.2.5 Evaluarea cu ajutorul meniului Symbolics
Animaie n MathCAD
201
Modul de lucru pentru evalurile simbolice realizate cu ajutorul meniului Symbolic este
urmtorul:
Se selecteaz expresia (o subexpresie, sau o variabil, dup caz);
Se execut clic stnga pe cmpul din meniul Symbolic dorit.
Acest mod de lucru mai pune n eviden o deosebire ntre cele dou modaliti de
evaluare simbolic. n cazul meniului [Symbolic], prin posibilitatea de a selecta o
subexpresie sau o variabil din componena expresiei de evaluat [simbolic] se pot
realiza evaluri simbolice mai nuanate.
Meniul Symbolic pune la dispoziia utilizatorului o serie de operatori de evaluare
simbolic specializai n calcul matriceal (unii din ei sunt disponibili i n bara de
instrumente Symbolic).
n figurile 11-13 11-20 sunt prezentate cteva exemple de calcul simbolic utiliznd
meniul Symbolic.

Expresie Cmp din meniul Symbolic Rezultat


1


Fig. 11-13 Evaluri simbolice





Capitolul 12
202
Expresie Cmp din meniul Symbolic Rezultat





Fig. 11-14 Calcul integral i diferenial simbolic

Expresie Cmp din meniul Symbolic Rezultat



Fig. 11-15 Transformarea n fracii simple
Animaie n MathCAD
203
Expresie Cmp din meniul Symbolic Rezultat





Fig. 11-16 Determinarea coeficienilor polinomiali

Expresie Cmp din meniul Symbolic Rezultat


Fig. 11-17 Calculul simbolic al valorilor proprii
Expresie Cmp din meniul Symbolic Rezultat


Fig. 11-18 Calculul simbolic al determinantului unei matrice
Capitolul 12
204
Expresie Cmp din meniul Symbolic Rezultat





Fig. 11-19 Evaluarea simbolic a unor inegaliti

Rezultatul obinut la evaluarea celei de a doua inegaliti se poate nc prelucra, aa
cum se poate vedea n figura 11-20.

a.
b.
c.
Fig. 11-20 Prelucrarea suplimentar a rezultatului evalurii unei inegaliti

De multe ori, evalurile simbolice produc rezultate stufoase, care ocup mult spaiu
(mai ales pe direcie orizontal). Astfel de situaii pot fi rezolvate prin utilizarea
operatorului de scindare a unei expresii pe dou (sau mai multe) rnduri.
De altfel acest operator se poate folosi i pentru scindarea pe mai multe rnduri a unei
expresii.
Se va proceda astfel:
Animaie n MathCAD
205
1. Se execut clic stnga pe termenul din expresie care apare imediat nainte de
operatorul n dreptul cruia se va fragmenta expresia;
2. Se apas tasta SPACE pn cnd este selectat subexpresia din stnga
operatorului n dreptul cruia se va fragmenta expresia;
3. Se apas tasta DEL;
4. Se apas simultan tastele CTRL + ENTER;
Aceste faze sunt ilustrate n figura 11-21.

1

2

3

4

Fig. 11-21 Fragmentarea unei expresii (sau a unui rezultat)

Uneori rezultatele sunt att de lungi nct Mathcad propune de la bun nceput plasarea
acestora n CLIPBOARD. De aici el poate fi inserat printr-un procedeu de tip PASTE n
orice aplicaie.
Poziia rezultatelor evalurilor simbolice n raport cu expresia iniial, atunci cnd se
folosete meniul Symbolic, se stabilete cu ajutorul cmpului Symbolic
Evaluation Style. . n figura 11-22 se poate vedea caseta de dialog ce permite
alegerea poziiei relative ntre rezultat i expresia iniial.

11.2.6 Controlul formatului rezultatelor simbolice
Capitolul 12
206

Fig. 11-22 Formatarea rezultatelor simbolice

n figura 11-23 sunt prezentate efectele diferitelor setri din caseta de dialog
Evaluation Style.







Fig. 11-23 Formatarea rezultatelor simbolice

n cazul Evaluate In Place expresia iniial va fi nlocuit de rezultat.
Animaie n MathCAD
207

12 Animaie n MathCAD

Obiective


Familiarizarea cititorului cu tehnicile de realizare de animaii
oferite de Mathcad


12 Animaie n MathCAD_________________ 207
12.1 Crearea i rularea unei animaii..............................................................208
12.2 Salvarea unei animaii ..............................................................................211
12.3 Rularea unei aplicaii salvate anterior....................................................212

Numr de pagini 6

Capitolul 12
208


n MathCAD pot fi animate regiunile de tip expresie care realizeaz o evaluare (deci o
secven de tip nume_variabil =, sau nume_funcie = , unde egalul este operatorul de
evaluare i se obine direct prin apsarea tastei =), sau regiunile de tip grafic.
Animaia presupune o succesiune de cadre (frame), redate cu o anumit caden
(exprimat n cadre pe secund). n MathCAD pentru a se putea realiza animarea unei
regiuni, este necesar ca regiunea respectiv s conin variabila MathCAD numit
FRAME (scris cu majuscule). nainte de a aduga alte cometarii, se prezint mai jos
un exemplu simplu de animaie a unei regiuni ce realizeaz evaluarea unei variabile.
Vor fi detaliate etapele ce trebuie parcurse pentru realizarea animaiei.

1. Se definete variabila care se va evalua, astfel nct n partea dreapt a relaiei
de definire s apar variabila FRAME (ea poate aprea i n componena unei
expresii):

a : = FRAME

2. Se creaz regiunea care se va anima. n exemplul de mai jos, ea conine o
regiune de tip text (care nu va fi influenat n nici un fel de animaie), dar i o
secven de evaluare (a =). Valoarea ce va aprea dup semnul egal este
iniial 0.



3. Se activeaz cmpul Animate din meniul View. Pe ecran va aprea fereastra
Animate (Vezi figura 12-1), n care utilizatorul trebuie s precizeze (n casetele
de dilalog From i To) numrul de cadre ce vor forma animaia (de fapt se
precizeaz domeniul de valori pe care l parcurge variabila FRAME - pentru c
12.1 Crearea i rularea unei animaii
Animaie n MathCAD
209
implicit n caseta de editare From se gsete valoarea 0, variabila a a fost
evaluat iniial la 0). n exemplul considerat animaia va avea 9 cadre. Tot n
caseta de dialog Animate se precizeaz i frecvena cu care vor fi redate
cadrele (caseta de editare At Frames/Sec).


Fig. 12-1 Crearea unei animaii

4. Se selecteaz regiunea de animat prin procedeul drag and drop, astfel nct
regiunea va fi ncadrat de un dreptunghi desenat cu linie ntrerupt. Dup
selecie butonul Animate din caseta de dialog Animate, devine activ. n acest
moment se apas butonul Animate.
n caseta Animate n zona central se vor derula cadrele (attea cte s-au
precizat n casetele de editare From i To). La sfritul acestui proces pe ecran
va aprea fereastra Playback (vezi figura 12-2). La apsarea butonului ,
de pe bara de control a ferestrei Playback, animaia va ncepe s ruleze.
Prin acionarea cursorului , se poate ajunge la un anumit
cadru prin parcurgerea accelerat a celor care l preced, dup cum se poate
realiza i parcurgerea cadrelor n ordine invers (prin acionarea cursorului de la
dreapta la stnga).

Capitolul 12
210

Fig. 12-2 Rularea animaiei

Desigur acesta e un exemplu foarte simplu, dar ilustreaz etapele de parcurs pentru
animarea unei regiuni dintr-un document MathCAD.
n continuare (vezi figura 12-3) se prezint un alt exemplu, care realizeaz animarea
unui grafic. Nu vor mai fi furnizate detalii relative la etapele de parcurs pentru
realizarea animaiei (identice cu cele trecute n revist mai sus).


Fig. 12-3 Animarea unei regiuni de tip grafic

Animaie n MathCAD
211
n exemplu s-a animat un grafic de tip Contour Plot. Dup cum se observ, n
expresia elementelor matricei ce va determina graficul apare i variabila a, care a fost
definit anterior n funcie de variabila FRAME. Aceasta ia valori ntre dou limite
ntregi (vezi casetele de editare From i To din caseta de dialog Animate), iar
variabila a va lua valori nentregi n intervalul FRAME
min
/10, FRAME
max
/10.


Odat creat o animaie, ea se poate salva ca fiier *.avi. n acest fel animaia poate fi
rulat cu orice aplicaie care recunoate fiierele *.avi sau poate fi rulat n MathCAD
fr a fi nevoie s fie recreat. Pentru salvarea unei animaii se vor parcurge etapele :
1. Dup ce animaia a fost creat i fereastra Animate este nc deschis, se
apas pe butonul Save As. Implicit animaia este salvat n format *.avi.
2. Animaiile sunt salvate n format *.avi comprimat (pentru economie de spaiu
disc). Dac se dorete salvarea n format *.avi necomprimat sau dac se
dorete comprimarea cu alt metod, se acioneaz butonul Options din
caseta de dialog Animate. Se deschide fereastra Compressor Options (vezi
figura 12-4), care permite utilizatorului s aleag metoda de comprimare dorit,
precum i calitatea comprimrii.


Fig. 12-4 Alegerea metodei de compresie

12.2 Salvarea unei animaii
Capitolul 12
212
Dac butonul Configure este activ, prin acionarea lui se deschide fereastra
Configure (vezi figura 12-5), care permite utilizatorului s controleze parametrul
Temporal Quality Ratio, care controleaz calitatea animaiei.


Fig. 12-5 Controlul calitii animaiei


O animaie salvat anterior, poate fi rulat n mediul MathCAD prin acionarea
cmpului Playback din meniul View. Ca efect se va deschide fereastra de rulare a
animaiei, unde prin apsarea butonului de pe bara de control [a ferestrei
Playback], devine disponibil butonul Open, ca n figura 12-6 :


Fig. 12-6 Rularea unei animaii creat anterior

Prin apsarea lui se deschide o fereastr de tip Open File, cu ajutorul creia
utilizatorul poate s aleag fiierul *.avi pe care dorete s-l ruleze. Dup alegerea
fiierului, fie prin acionarea butonului Play ( ), fie prin acionarea cursorului, se
12.3 Rularea unei aplicaii salvate anterior
Animaie n MathCAD
213
poate rula animaia integral, respectiv cadru cu cadru n direcia dorit (nainte sau
napoi).
Pentru o mai bun nelegere a subiectului, se recomand consultarea exemplelor din
seciunea Animations din Quick Sheets.


215
13 Operatori personalizai

Obiective


Familiarizarea cititorului cu facilitile oferite de Mathcad
pentru definirea de operatori particularizai (alii dect cei
predefinii)


13 Operatori personalizai ________________ 215
13.1 Introducere ................................................................................................216
13.2 Definirea i utilizarea operatorilor personalizai ...................................217


Numr de pagini 3
Capitolul 13
216


Aa cum se pot defini n Mathcad funcii, altele dect cele predefinite, tot aa se pot
crea i operatori, alii dect cei predefinii. Acetia vor fi numii n continuare,
[operatori] personalizai.
Procesul de definire a unui astfel de operator este asemntor cu cel de definire a unei
funcii.
Din punctul de vedere al terminologiei, funciile au argumente, incluse ntre paranteze
i, dac sunt mai multe, separate prin virgul. n cazul operatorilor, locul argumentelor
este luat de operanzi, care ns pot fi n numr de unu sau maxim doi.
Din punctul de vedere al poziiei operatorului n raport cu operandul - n cazul
operatorilor cu un singur operand (pot fi numii i operatori unari) - se poate vorbi
despre operatori de tip prefix, respectiv sufix.
n cazul operatorilor binari (cu doi operanzi), Mathcad poate crea operatori de tip
infix, respectiv arbore (tree).
n figura 13-1 sunt prezentate tipurile de operatori menionate mai sus (este vorba
despre secvene de evaluare).


Fig. 13-1 Tipuri de operatori personalizai



13.1 Introducere
Operatori personalizai
217
Definirea unui operator personalizat este practic identic cu definirea unei funcii, cu
observaia c numrul de argumente nu poate depi valoarea 2.
Pentru numele operatorului se poate folosi orice simbol adecvat. n Resource Center
QuickSheets and Reference Tables Extra Math Symbols pot fi gsite
diverse simboluri matematice ce pot fi utilizate ca nume de operatori personalizai.
Transferul oricrui simbol ntr-un document Mathcad se face printr-o simpl secven
de tip Selecie simbol Copy Revenire n documentul Mathcad Paste.
n figura 13-2, sunt prezentate cteva exemple de definire de operatori personalizai,
dar i modalitile de utilizare a acestora. Se poate observa c faza de definire este
identic cu cea utilizat la definirea unei funcii.


Fig. 13-2 Definirea i utilizarea operatorilor personalizai

13.2 Definirea i utilizarea operatorilor personalizai

219
14 Fiiere ablon (template)

Obiective


Prezentarea noiunii de fiier ablon
nsuirea tehnicilor de creare sau modificare a unui ablon


14 Fiiere ablon (template) ________________ 219
14.1 Introducere ................................................................................................220
14.2 Crearea unui [fiier] ablon .....................................................................222
14.3 Modificarea unui ablon...........................................................................224

Numr de pagini 5
Capitolul 14
220


Ca i n cazul altor aplicaii, Mathcad utilizeaz la deschiderea oricrui nou fiier, aa
numitele abloane, care transmit noului document o serie de caracteristici de formatare
(ce vor fi detaliate mai trziu), dar i elemente de coninut (expresii, text, antet i/sau
subsol).
La deschiderea unui nou document Mathcad, dac se utilizeaz cmpul File New
(vezi figura 14-1), nu se deschide direct un nou document, ci se ajunge n caseta de
dialog New (vezi figura 14-2), cu ajutorul creia se alege ablonul care va sta la baza
noului document.


Fig. 14-1 Deschiderea unui document nou Mathcad

Lista conine abloane predefinite (dar care pot fi modificate de orice utilizator), dar i
abloane create de utilizator, cum ar fi cel numit sablon_1 (vezi figura 14-2).

14.1 Introducere
Fiiere ablon (template)
221

Fig. 14-2 abloane existente (predefinite sau create de utilizatori)

Odat un ablon ales, documentul ce se creeaz preia de la acesta urmtoarele
elemente:
stilurile de expresii matematice (Format Equation);
stiluri de text (Format Style);
setrile de pagin (File Page Setup);
valorile variabilelor Mathcad;
setrile formatelor de rezultate (Format Result);
sistemul de uniti folosit precum i numele mrimilor fizice de baz;
modul implicit de calcul (automat sau manual);
vizibilitatea rigletei orizontale (View Ruler) i sistemul de msurare de
pe riglet.
Pentru fixarea sistemului de msurare de pe riglet se execut clic dreapta pe riglet i
se alege sistemul de msurare dorit din lista ce se va fi deschis (vezi figura 14-3).

Capitolul 14
222

Fig. 14-3 - Stabilirea sistemului de msurare pe riglet

Vizualizarea rigletei se face cu ajutorul cmpului View Ruler.


Fiierele ablon au n Mathcad extensia *.mct i n principiu trebuie s se gseasc n
subdirectorul Template aferent directorului Mathcad (care depinde de modul n care
s-a realizat instalarea).
Structura intern a unui fiier ablon nu difer cu nimic de a unui fiier Mathcad
obinuit, astfel c una din metodele de creare a unui ablon este chiar schimbarea
extensiei unui fiier Mathcad i copierea (sau) mutarea lui n directorul Template.
O alt metod pentru crearea unui [fiier] ablon este descris mai jos (vezi i
figura 14-4).
Se fac ntr-un document Mathcad toate setrile dorite i se insereaz n
acesta toate obiectele dorite;
Se utilizeaz cmpul File Save As, iar n fereastra cu acelai nume, se
specific n partea de jos a acesteia tipul documentului salvat - Mathcad
Template (*.mct);
Se face salvarea n subdirectorul Template (vezi figura 14-4).

14.2 Crearea unui [fiier] ablon
Fiiere ablon (template)
223

Fig. 14-4 Salvarea unui fiier ca ablon
Trebuie precizat c i atunci cnd se creeaz un fiier nou cu ajutorul butonului ,
chiar dac nu n mod explicit, tot se face uz de un fiier ablon. Acesta este
Normal.mct.
Este posibil alegerea unui alt ablon [dect normal.mct] chiar i dac nu se folosete
cmpul File New. Pentru aceasta se va utiliza butonul din dreapta lui (vezi
figura 14-5, zona marcat cu un cerc). Din lista ce se va deschide, se va alege ablonul
dorit.

Capitolul 14
224

Fig. 14-5 Alegerea unui ablon prin folosirea butonului



Se face pur i simplu prin deschiderea documentului [ablonului] dorit, efectuarea
modificrilor i salvarea fiierului. Evident dac salvarea se face sub un nou nume, s-a
creat de fapt un nou ablon.
Observaie: Cnd se modific un ablon, efectele se vor simi numai n documentele
ce se vor crea pe viitor pe baza acelui ablon, fr s existe un efect retroactiv.


14.3 Modificarea unui ablon

225
15 Formatarea de pagin i tiprirea
n Mathcad

Obiective


Familiarizarea cititorului cu tehnicile de tiprire oferite de
Mathcad
Prezentarea modului de control al paginii n Mathcad



15 Formatarea de pagin i tiprirea n Mathcad
____________________________________ 225
15.1 Formatarea de pagin...............................................................................226
15.2 Tiprirea....................................................................................................228


Numr de pagini 5
Capitolul 15
226


Stabilirea elementelor de control al paginii se face cu ajutorul cmpului File Page
Setup. Caseta de dialog Page Setup, prezentat de altfel n figura 15-1, permite
setri de baz care nu necesit explicaii suplimentare.


Fig. 15-1 Controlul paginii

Mathcad ofer i posibilitatea de a defini pentru pagini antete (headere) i sau subsoluri
(footer) dup modelul mai degrab al Excel-ului dect al Word-ului.
Pentru definirea i configurarea unor astfel de seciuni se va folosi cmpul Format
Header/Footers, care va conduce la caseta de dialog din figura 15-2.
Se vede c att antetul ct i subsolul pot fi mprite n trei zone (Stnga-Left,
Centru-Center i Dreapta-Right), c n oricare din aceste zone se pot insera cmpuri de
15.1 Formatarea de pagin
Formatarea de pagin i tiprirea n Mathcad
227
tip nume document, data salvrii, numrul de pagin, numrul total de pagini etc (vezi
zona Tools din caseta de dialog Header/Footer). Cu ajutorul butonului Format din
aceeai zon, se poate controla aspectul cmpurilor de tip text, iar prin intermediul
butonului Image, se poate insera n oricare din seciunile unui antet sau subsol un
fiier imagine.
Seciunea Options permite stabilirea originii numrrii paginilor (Start at page
number), sau prezena unui antet sau subsol diferit pentru prima pagin dintr-o suit
[de pagini]. Antetul (sau subsolul) diferite pentru prima pagin se vor controla cu
ajutorul seciunilor Header-Page 1 sau Footer Page 1, care nu apar dect atunci
cnd cmpul Different header and footer on first page este bifat, dar atenie, dac
din seciunea Frame s-a ales prezena unui chenar n zona antetului sau subsolului,
acesta va fi desenat i pentru prima pagin.


Fig. 15-2 Controlul antetelor i subsolurilor




Capitolul 15
228

Procesul de tiprire este declanat i controlat de caseta de dialog Print, deschis prin
utilizarea cmpului File Print (vezi figura 15-3).


Fig. 15-3 Caseta de dialog Print

Elementele ce pot fi controlate sunt suficient de clare i din acest motiv nu vor fi
explicate.
Se va insista doar asupra modului de tiprire n cazul n care documentele Mathcad
conin regiuni i n dreapta liniei de demarcaie ce sugereaz marginea din dreapta a
foii de hrtie.
Controlul propriu zis se face cu ajutorul cmpului Print single page width, ce poate fi
regsit n coninutul casetei de dialog Page Setup (figura 15_1).
n figura 15-4 este prezentat un document Mathcad vizualizat cu factorul de mrire
50%. Se poate observa c apar i o a doua, respectiv o a treia bar de demarcaie
15.2 Tiprirea
Formatarea de pagin i tiprirea n Mathcad
229
vertical. Ar putea s se vad i mai multe dac se alege un factor de vizualizare din ce
n ce mai mic.


Fig. 15-4 Document Mathcad vizualizat cu factorul 50%

Se pune problema cum se vor lista documente ce conin regiuni i n dreapta primei sau
celei de a doua bare de demarcaie vertical (sau dincolo de una de ordin i mai mare).
Pentru un astfel de document s-ar putea adopta schematizarea din figura 15-5. Astfel
Pagina 1_n se refer la documentul Mathcad de deasupra primei linii de demarcaie
ORIZONTAL, Pagina 2_n se va referi la acea parte a documentului situat sub prima
linie de demarcaie ORIZONTAL i aa mai departe. Pentru o mai bun nelegere se
va urmri figura 15-5.

Capitolul 15
230

Fig. 15-5 Structura unui document Mathcad

Astfel, dac exist bif n dreptul cmpului Print single page width, se vor tiprii
numai paginile 1_1 i respectiv 2_1 (i nu 1_2, respectiv 2_2).
Dac bifa din dreptul cmpului Print single page width nu exist, se vor tiprii, n
ordine, paginile 1_1, 2_1, apoi 1_2 i 2_2 (deci se tipresc nti paginile din stnga
primei linii de demarcaie vertical).

231
16 Interpolarea i extrapolarea
datelor. Metode de regresie.

Obiective


Familiarizarea cititorului cu tehnici de prelucrare a datelor
experimentale oferite de Mathcad
o Interpolare
o Extrapolare
o Regresie



16 Interpolarea i extrapolarea datelor. Metode de
regresie. _______________________________ 231
16.1 Interpolarea datelor n 2 dimensiuni.......................................................232
16.2 Interpolarea datelor n 3 dimensiuni.......................................................236
16.3 Extrapolarea datelor.................................................................................240
16.4 Regresie liniar i neliniar......................................................................242

Numr de pagini 20

Capitolul 16
232

Prin interpolare se nelege determinarea unei funcii (numit funcie de interpolare), de
obicei un polinom, care s aproximeze pe un interval [a,b] o funcie f(x) ale crei valori
sunt cunoscute numai n anumite puncte a=x
0
<x
1
<x
n
=b.
n MathCAD se pot realiza dou tipuri de interpolri : liniar sau folosind curbe spline.
Cele dou funcii specializate sunt linterp i respectiv interp.
n cazul interpolrii liniare valorile ordonatelor necunoscute, corespunztoare unor
puncte x
k
, ce nu se suprapun peste reeaua de puncte x
0
<x
1
<x
n,
deci x
i-1
<x
k
<x
i
, se
obin n ipoteza c punctele y
i
se unesc cu segmente de dreapt, ca n figura 16-1.


Fig. 16-1 Interpolare liniar

n cazul interpolrii cu ajutorul curbelor spline, punctele sunt unite (evident imaginar)
cu arce de curb splin. Curbele spline, sunt curbe polinomiale de grad k i care asigur
continuitatea derivatelor de ordin k-1 n punctele de jonciune ntre arcele de curbe
spline. Este evident c printr-un set de puncte, teoretic s-ar putea gsi o curb
polinomial care s treac prin toate punctele din set. Dac punctele sunt numeroase i
dispuse foarte neregulat, atunci dac un asemenea polinom exist el este de grad mare
(ceea ce presupune n ultim analiz rezolvarea unor sisteme algebrice mari - cu numr
mare de ecuaii i necunoscute pentru determinarea coeficienilor polinomului). De
16.1 Interpolarea datelor n 2 dimensiuni
Interpolarea i extrapolarea datelor. Metode de regresie.
233
aceea se prefer determinarea unor curbe care s treac, fiecare, prin doar dou
puncte, urmnd ca pentru asigurarea netezimii curbei de interpolare (care nu trebuie
s aib vrfuri sau puncte de ntoarcere), pe ntreg domeniul s se pun condiii de
continuitate a derivatelor de ordin 1 i eventual 2 n punctele de jonciune. Rezult
astfel un numr de necunoscute (coeficieni) comparabil cu cel corespunztor unei
singure curbe de interpolare, dar ele vor rezulta prin rezolvarea succesiv a unui set de
sisteme algebrice de mici dimensiuni. Aceste arce de curbe sunt chiar curbele spline
despre care s-a fcut deja vorbire. n figura 16-2, se prezint cazul interpolrii cu arce
de curb splin.
Se va detalia n continuare sintaxa specific funciilor MathCAD specializate n
interpolare.

Fig. 16-2 - Interpolare cu arce de curbe spline

linterp (v
x
, v
y
, x), unde :
v
x
este un vector real cu valorile n ordine cresctoare. El corespunde valorilor
de pe abscis (x);
v
y
este un vector real, cu acelai numr de elemente ca i v
x
. El corespunde
valorilor de pe ordonat (y);
x este valoarea abscisei pentru care se dorete valoarea corespunztoare de pe
ordonat. Ea va fi determinat prin interpolare, aici liniar.
16.1.1 Funcia linterp
Capitolul 16
234
interp(vs,vx,vy,x), unde :
v
x
, vy

i x au aceeai semnificaie ca la funcia linterp
vs este un vector generat de una din funciile cspline, pspline sau lspline.
Vectorul v
s
conine derivatele de ordinul 2 corespunztoare traseului descris de
datele y=y(x), necesar pentru determinarea pantelor curbelor spline n
punctele x
i
, astfel nct curba splin rezultant s fie neted (smooth). Ceea ce
trebuie deci reinut, este c utilizarea funciei interp, presupune folosirea
anterioar a unei din funciile cspline, pspline sau lspline.
cspline(v
x
, v
y
), ntoarce un vector al derivatelor de ordinul 2, notat cu v
s
,
pentru datele coninute n vectorii v
x
i v
y
. Acest vector va fi folosit ca prim
argument al funciei interp. Curba splin rezultant, ce va fi folosit
pentru interpolare va fi o curb cubic la capetele intervalului de analizat.
pspline(v
x
, v
y
), ntoarce acelai vector v
s
ca i funcia cspline, cu
deosebirea c la capetele intervalului de analiz, curba splin va fi
parabolic.
lspline(v
x
, v
y
), ntoarce acelai vector v
s
ca i funciile cspline sau
pspline, dar de aceast dat curba splin rezultat va fi liniar la capete
(curba splin se numete n acest caz natural sau relaxat).
Exemplu :
Se vor citi din dou fiiere nestructurare, numite axa_x.dat, respectiv axa_y.dat, 16
perechi de valori (abscisele din fiierul axa_x.dat, ordonatele din axa_y.dat). Este
recomandabil ca cele dou fiiere s se gseasc n directorul curent de lucru MathCAD.
Valorile citite vor fi atribuite variabilelor indexate x
i
, respectiv y
i
.
Valorile din cele dou fiiere vor fi :
- Fiierul axa_x.dat, va conine urmtoarele valori, dispuse fiecare pe un rnd :
0 1.11 1.667 2.167 2.667 2.833 3.444 4 5 5.5 6
6.444 6.889 7.222 (aici, pentru claritate valorile sunt separate de tab-uri)
- Fiierul axa_y.dat va conine urmtoarele valori, dispuse fiecare pe un rnd :
16.1.2 Funcia interp
16.1.3 Funciile scpline, pspline i lspline
Interpolarea i extrapolarea datelor. Metode de regresie.
235
0 1.254 .762 1.107 .809 1.21 .745 1.141 .915 1.045 .949
1.093 .845 1.054
Cele dou fiiere pot fi pur i simplu generate n Notepad. Se mai atrage atenia asupra
necesitii ca elementele din fiierul axa_x.dat s fie n ordine strict cresctoare i
firete cele dou fiiere s aib exact acelai numr de elemente.
Citirea datelor din cele dou fiiere se poate face utiliznd componenta de tip File
Read or Write (Text Files).
Documentul MathCAD va arta ca n figura 16-3.

Fig. 16-3 Interpolarea datelor (liniar i neliniar)

Pentru o i mai bun nelegere, s-au reprezentat grafic n figura 16-4, att punctele
corespunztoare valorilor y
i,
ct i graficele celor 4 curbe de interpolare.
Se poate observa c ntre cele 4 curbe exist diferene notabile, lucru remarcat i din
analiza valorilor interpolate pentru abscisa x=2. Aceste diferene tind s fie mai mari la
Capitolul 16
236
extremitile intervalului, unde intervin de fapt deosebirile dintre pantele curbelor de
interpolare.


Plecnd de la interpolarea utiliznd curbe [de interpolare], deci n plan, unde se
pornete de la doi vectori, notai n paragrafele anterioare v
x
i v
y
, se poate ajunge la o
generalizare n spaiu, respectiv la interpolarea folosind suprafee [de interpolare]. n
acest caz, prin interpolare se nelege determinarea unei funcii (numit evident tot
funcie de interpolare), care s aproximeze pe un domeniu [a,b]x[c,d] o funcie
z=f(x,y) ale crei valori sunt cunoscute numai n anumite puncte a=x
0
<x
1
<x
n
=b,
respectiv c=y
0
<y
1
<y
n
=d.

Fig. 16-4 - Graficele curbelor de interpolare

16.2 Interpolarea datelor n 3 dimensiuni
Interpolarea i extrapolarea datelor. Metode de regresie.
237
Suprafeele de interpolare vor fi petice (patch) de suprafee spline, cu cte patru
laturi. Funciile utilizate au denumiri identice cu cele folosite la interpolarea cu curbe
spline, doar argumentele sunt altele, dup cum urmeaz :
cspline(Mxy,Mz) - ntoarce un vector al derivatelor de ordinul 2 pentru
tablourile Mxy i Mz. Acest vector devine primul argument pentru funcia care
realizeaz interpolarea (interp). Suprafaa splin rezultat va fi cubic pe
contur.
pspline(Mxy,Mz) - ca i cspline, doar c suprafaa rezultant va fi
parabolic pe contur.
lspline(Mxy,Mz) - ca i cspline, doar c suprafaa rezultant va fi
liniar pe contur.
interp(vs,Mxy,Mz,v) - ntoarce valoarea interpolat M
z
n punctul de
coordonate x i y, specificat n v.
Argumentele funciilor de mai sus sunt :
Mxy este un tablou cu dimensiunea nx2 i care conine coordonatele x i y ce
variaz pe domeniul pe care se va realiza interpolarea. Coloanele acestei
matrice trebuie s aib elementele n ordine cresctoare.
Mz este un tablou cu dimensiunea nxn, de date reale. Valorile acestui tablou
sunt valorile z corespunztoare perechilor x i y din M
xy
.
vs este un vector generat de una din funciile cspline, pspline sau lspline
v este un vector ale crui dou elemente sunt coordonatele x i y pentru care
se caut valoarea interpolat z.
n figura 16-5 este prezentat un exemplu preluat din seciunea quicksheets i adaptat.
Este vorba despre interpolarea datelor descrise de o matrice notat M
z
, care surprinde
de fapt o dependen de forma z=z(x,y). Vectorii corespunztori coordonatelor x i y
sunt notai cu X respectiv Y.
Dup ce s-a realizat definirea funciilor de interpolare fit_s, fit_p respectiv fit_l,
corespunztoare interpolrilor cubic, parabolic i respectiv liniar, sunt determinate
valorile interpolate corespunztoare punctelor (0.25, 0.35) i (0.1, 0.17). Se poate
observa c pentru primul punct, situat mai aproape de contur, diferenele ntre cele 3
Capitolul 16
238
tipuri de interpolare sunt mai mari dect n cazul punctului al doilea, situat mai spre
interiorul domeniului.
n partea a doua a documentului se realizeaz discretizarea domeniului de interpolat,
prin definirea unei grile de 4 ori mai deas dect cea iniial. Deci dac iniial pe x i y
se defineau cte 6 puncte, acum pe aceleai direcii se vor defini cte 24, deci ntre
dou puncte succesive ale grilei iniiale, dup o direcie, se vor gsi nc 3 puncte
pentru care se va realiza de fapt interpolarea. Altfel spus, dac iniial matricea M
z
avea
6x6=36 valori, dup interpolare matricele notate FIT_s, FIT_p sau FIT_l, vor avea
fiecare cte 24x24=576 valori.
n faza final s-a realizat reprezentarea grafic att a suprafeei iniiale (M
z
), ct i a
celor obinute prin cele trei metode de interpolare. La dimensiunea la care s-a realizat
reproducerea reprezentrilor grafice (impus de considerente de spaiu), diferenele
ntre cele trei grafice nu sunt prea uor detectabile. Dac ns vor fi crescute n
documentul MathCAD creat de utilizator - dimensiunile graficelor (prin tehnica drag
and drop), diferenele vor ncepe s se vad cu claritate.
n figura 16-6, sunt prezentate cele 4 grafice, unul al suprafeei originale (descris de
matricea M
z
) i celelalte 3, corespunznd suprafeelor obinute prin interpolare, cu una
din metodele (funciile) descrise mai sus.
Interpolarea i extrapolarea datelor. Metode de regresie.
239


Fig. 16-5 Interpolarea 3D
Capitolul 16
240
Fig. 16-6 - Reprezentri grafice ale suprafeelor de interpolare


Prin extrapolare se nelege determinarea unei funcii, de obicei polinom, care s
aproximeze, n afara unui interval [a, b], o funcie f(x) ale crei valori sunt cunoscute
numai n anumite puncte a=x
0
<x
1
<x
n
=b, din interiorul intervalului.


16.3 Extrapolarea datelor
Interpolarea i extrapolarea datelor. Metode de regresie.
241
n MathCAD extrapolrile (sau prediciile) se realizeaz cu ajutorul funciei predict,
pentru care sintaxa este :
predict(v,m,n)
unde :
v este un vector ale crui valori reprezint eantioane prelevate - la intervale egale -
dintr-un set de date. Parametrii m i n sunt doi ntregi
Funcia predict, ntoarce n valori estimate, bazate pe m valori consecutive din v.
Exemplu:
S se estimeze comportarea vectorului f, ale crui elemente sunt obinute prin
evaluarea funciei
10
) 5 . 0 sin(
i
i
e i f

= , cu i lund valori n intervalul 130, dincolo de
limita superioar a argumentului i (n cazul de fat aceast limit este 30). n fapt se
aplic funcia predict, aa cum se poate vedea din exemplu, pentru estimarea
urmtoarelor 20 de valori ale lui f, estimarea fcndu-se pe baza a 4 valori succesive
ale lui f, dar in intervalul i=1..30. n partea a doua a documentului s-a realizat i o
reprezentare grafic (vezi figura 13-7), a lui f
i
, att n intervalul 130 (de valori
cunoscute), ct i dincolo de i=30 i anume pentru nc 12 de valori. Se va observa
cum n grafic, variabila j (folosit pentru reprezentarea estimrii), ia valori dincolo de
30, astfel nct pe grafic s apar estimarea lui f exact dincolo de punctul n care
valorile cunoscute [ale lui f] sunt reprezentate grafic.

Capitolul 16
242

Fig. 16-7 Extrapolarea datelor


Prin intermediul funciilor slope i intercept (a cror sintax va fi prezentat mai
jos), este posibil determinarea ecuaiei dreptei care aproximeaz cu eroare minim
(pentru minimizarea erorii se folosete metoda celor mai mici ptrate) un set de date
de forma y
i
=y(x
i
).
Sintaxa funciilor slope i intercept este :
slope (vx, vy) - funcia ntoarce panta dreptei care aproximeaz cu eroare
minim setul de date
intercept(vx, vy) - ntoarce ordonata la origine a dreptei care aproximeaz cu
eroare minim setul de date
16.4 Regresie liniar i neliniar
16.4.1 Regresia liniar
Interpolarea i extrapolarea datelor. Metode de regresie.
243
Argumentele vx i vy, sunt doi vectori cu acelai numr de elemente. Vectorul vx
trebuie s aib elementele n ordine cresctoare. Este evident c cei doi vectori
corespund absciselor x, respectiv ordonatelor y.
Exemplu:
n exemplul de mai jos este determinat ecuaia dreptei care aproximeaz cu eroare
minim setul de date format din vectorii x respectiv y (dac se reprezint grafic aceast
dreapt, se spune c ea s-a trasat printre puncte).
n exemplu setul de date a fost creat prin generarea vectorilor x i y. O alt modalitate
de lucru ar fi fost citirea celor doi vectori dintr-un fiier de date.
n cazul n care datele nu sunt aproximate corespunztor de o dreapt (rmn puncte
prea multe departe de dreapt i traseul general al ordonatelor nu este aproape de o
dreapt), se poate folosi interpolarea polinomial. Prin intermediul funciei interp
(pentru care ns primul argument este furnizat de funciile regress sau loess), se
poate determina polinomul de grad specificat de utilizator, care aproximeaz cu eroare
minim setul de date de analizat. Mai jos sunt prezentate funciile implicate n regresia
polinomial, sintaxa, precum i argumentele lor.

16.4.2 Regresia polinomial (neliniar)
Capitolul 16
244

Fig. 16-8 Regresie liniar

regress (vx, vy, k) ntoarce un vector, pe care funcia interp l va folosi
pentru determinarea polinomului de ordin k (se recomand valori mai mici
dect 5) ce realizeaz aproximarea cu eroare minim a setului de date
loess (vx, vy, span) ntoarce un vector pe care funcia interp l va folosi
pentru determinarea polinomului de ordin 2, ce realizeaz aproximarea cu
eroare minim a setului de date ntr-un domeniu specificat de parametrul span
(ntindere, sector, anvergur). Dac valorile ordonatelor sunt foarte diferite se
recomand valori mari pentru parametrul span. O valoare n general
acceptabil este 0.75.
Interpolarea i extrapolarea datelor. Metode de regresie.
245
interp (vs, vx, vy, x) ntoarce valoarea interpolat y corespunztoare lui x
(ultimul argument). Parametrul vs este preluat de la funcia regress sau
loess.

De menionat c n cazul vectorului ntors de funcia regress, ultimele (k+1) elemente
sunt chiar coeficienii polinomului de interpolare n ordinea cresctoare a puterilor
variabilei de pe axa absciselor (vezi exemplul).

Exemplu:
S se realizeze regresia polinomial pentru un set de date reinut ntr-un fiier de date,
sub forma unei matrice cu dou coloane. n prima [coloan] se gsesc valorile de pe
abscis, iar n a doua cele de pe ordonat. Dup citirea fiierului (numit n exemplu
date[.prn]), sunt extrase cu ajutorul operatorului CTRL+^, coloanele pentru definirea
vectorilor X i Y. Urmeaz utilizarea funciilor regress, loess i interp, precum i
reprezentarea grafic a datelor iniiale, precum i a celor interpolate.
Structura fiierului date.prn este urmtoarea :
0 9.1
1 7.3
2 3.2
3 4.6
4 4.8
5 2.9
6 5.7
7 7.1
8 8.8

n prima coloan sunt precizate valorile lui x (sau vx, aa acum apare n sintaxa
funciei), iar n a doua coloan apar valorile lui y (sau vy).
Fiierul MathCAD care realizeaz aplicaia este prezentat n figura 16-9.

Capitolul 16
246

Fig. 16-9 Regresie polinomial

n figura 16-10 sunt prezentate punctele (Y
i
) precum i datele obinute prin regresie.
Interpolarea i extrapolarea datelor. Metode de regresie.
247

Fig. 16-10 Reprezentarea punctelor i a rezultatelor regresiei

n figura 16-11 este prezentat graficul polinomului de interpolare p_int(x), aa cum a
fost el definit dup extragerea n vectorul coef a coeficienilor din vectorul vs i
nmulirea cu vectorul ce conine puterile n ordine cresctoare ale variabilei x.
Capitolul 16
248

Fig. 16-11 - Graficul polinomului de interpolare

Ca i n cazul interpolrii i n cazul regresiei polinomiale se poate ajunge la o
generalizare 3D, cnd prin intermediul acelorai funcii regress, loess i interp, dar
cu alte argumente, se vor determina suprafee polinomiale de interpolare. Sintaxa
funciilor amintite mai sus, n acest caz, este :
regress (Mxy, vz, k ) - funcia ntoarce un vector pe care funcia interp l va
utiliza la determinarea suprafeei polinomiale de grad k ce aproximeaz cu
eroare minim setul de date coninut n matricele Mxy i vz. Uzual pentru k
se vor considera valori mai mici dect 5. Matricea Mxy, are dimensiunea m x 2
i conine coordonatele x,y, iar vz are dimensiunea m i conine coordonatele z
corespunztoare perechilor x,y din Mxy. ntre vz i Mxy exist o legtur
descris de o relaie de tipul vz=vz(x,y), unde perechile de coordonate [date],
(x,y), sunt stocate pe rnduri, n matricea Mxy;
loess (Mxy, vz, span) funcia ntoarce un vector pe care funcia interp l va
utiliza la determinarea suprafeei polinomiale de grad 2, ce realizeaz
aproximarea cu eroare minim a setului de date ntr-un domeniu specificat de
parametrul span (ntindere, sector, anvergur). Dac valorile cotelor vz sunt
16.4.3 Regresie polinomial 3D (neliniar)
Interpolarea i extrapolarea datelor. Metode de regresie.
249
foarte diferite se recomand valori mari pentru parametrul span. O valoare n
general acceptabil este 0.75.
interp (vs, Mxy, vz, v) funcia ntoarce valoarea interpolat z,
corespunztoare perechii de date (x,y) coninut n vectorul [cu dou]
elemente v. Vectorul vs este ntors de una din funciile regress sau loess.

Pentru o mai bun nelegere a celor expuse, se recomand parcurgerea exemplului
Multiple Linear Regression din seciunea Data Analysis din Quicksheets.
Dac pn acum toate metodele de aproximare/interpolare prezentate au avut ca
obiectiv gsirea unor polinoame de diverse grade care aproximeaz un set de date
cu eroare minim, n paragrafele urmtoare se va arta cum MathCAD tie s rezolve
acelai gen de probleme, de aceast dat prin gsirea unei combinaii liniare de funcii
(nu neaprat polinomiale), care s aproximeze cu eroare minim un set de date. Cu
alte cuvinte, pornind de la un set de funcii (pe care i-l fixeaz utilizatorul) f
1
(x),
f
2
(x),..f
n
(x), se pune problema determinrii coeficienilor a
1
, a
2
,..a
n
, astfel nct
combinaia liniar

=
= + +
n
i
i i n n
x f a x f a x f a x f a
1
2 2 1 1
) ( ) ( ... ) ( ) (
s aproximeze cu eroare minim setul de date considerat.
Funcia care realizeaz interpolarea/aproximarea unui set de date prin metoda
combinaiei liniare de funcii, este linfit i are sintaxa:

linfit (vx, vy, F) - funcia ntoarce un vector care conine coeficienii a
i
din
relaia de mai sus. Vectorii vx i vy definesc setul de date analizat i trebuie s
aib acelai numr de elemente. n plus, elementele lui vx trebuie s fie n
ordine cresctoare. F este un vector care conine setul de funcii f
i
. F i vx sau
vy NU trebuie n mod obligatoriu - s aib acelai numr de elemente.

Exemplu:
S se aproximeze setul de date utilizat n exemplul de la regresia polinomial (datele
16.4.4 Aproximarea datelor prin utilizarea unor combinaii liniare de funcii
Capitolul 16
250
din fiierul date.prn), de aceast dat aproximarea realizndu-se cu ajutorul metodei
combinaiei liniare de funcii.
n exemplu nu se mai reia etapa de citire a datelor din fiier i de extragere a celor doi
vectori X i Y. Se va prezenta n continuare structura documentului MathCAD ce
realizeaz aproximarea setului de date citit din fiierul date.prn, prin metoda
combinaiei liniare de funcii, de la stadiul alegerii setului de funcii (vectorul F). S-a
optat pentru 4 funcii, x, sin(x), 1/(x+1 i e
x
. n continuare se determin cu ajutorul
funciei linterp, coeficienii ce se vor aplica setului de funcii. Aceti coeficieni vor fi
depui n vectorul coef_F, care este i evaluat pentru a se putea citi coeficienii
rezultai.
n fine se definete funcia (de x) f_comb, care rezult ca produs ntre vectorii coef_F i
F(x). Va rezulta expresia funciei care se va folosi pentru aproximare :

x
e
x
x x x comb f +
+
+ + =
4
10 587 . 3
1
1
16 . 9 ) sin( 909 . 0 684 . 0 ) ( _

n figura 16-12 se poate vedea cum ar arta un document Mathcad care determin
combinaia liniar de funcii ce aproximeaz un se t de date.

Fig. 16-12 Determinarea coeficienilor funciilor

Pentru funcia f_comb(x) obinut s-a trasat graficul, suprapus peste valorile
neprelucrate Y
i
(X
i
).

Interpolarea i extrapolarea datelor. Metode de regresie.
251

Fig. 16-13 Reprezentarea funciei de aproximare

Se recomand reprezentarea pe acelai grafic a funciilor f_comb(x), r_p_regress(x) i
r_p_loess(x), pentru a putea compara metodele. Se mai recomand alegerea i a altor
seturi de funcii F(x).
Spre deosebire de aproximarea prin utilizarea combinaiilor liniare de funcii, care
pornea de la un set de funcii complet determinate i urmrea gsirea unor coeficieni
care nmuleau aceste funcii n vederea aproximrii cu eroare minim a unui set de
date, metoda funciilor arbitrare, realizeaz aproximarea pornind de la o (UNA
SINGUR) funcie care ns conine n expresia sa de definire un numr de parametri.
Esena metodei este chiar gsirea acelor valori ale acestor parametri astfel nct funcia
16.4.5 Aproximarea datelor prin utilizarea unor funcii arbitrare
Capitolul 16
252
s aproximeze cu eroare minim un set de date. Funcia care realizeaz calculul acestor
parametri se numete genfit, iar sintaxa ei este prezentat mai jos.
genfit (vx, vy, vg, F) funcia ntoarce parametrii din definiia funciei de
aproximare, care minimizeaz eroarea de aproximare a setului de date
precizat de vectorii vx i vy, cu funcia F.
Vectorul vg are dimensiunea egal cu numrul de parametrii necunoscui
din componena definiiei funciei F i reprezint a valoare de start n
procesul de determinare a acestor parametri (guess value).
Funcia F, este tot un vector i conine definiia funciei de aproximare,
precum i derivatele acesteia n raport cu parametrii din relaia de definiie.
Deci dac definiia funciei de aproximare conine n parametri, vg va avea
dimensiunea n, iar F va avea dimensiunea n+1.

Exemplu:
S se aproximeze setul de date de la exemplul precedent, folosind metoda funciei
arbitrare.
Se va prezenta structura documentului MathCAD fr s se reia citirea datelor din
fiierul date.prn sau extragerea vectorilor X i Y.
Pentru funcia arbitrar s-a ales expresia :

8 . 0
2
2
1 0
) 1 (
) (
x a x a x a
e x f
+ + +
=
Documentul MathCAD arta ca n figura 16-14.

Interpolarea i extrapolarea datelor. Metode de regresie.
253

Fig. 16-14 Metoda funciei arbitrare

n cea de a doua parte a documentului MathCAD (vezi fig 16-15), s-a realizat
reprezentarea grafic, att a datelor neprelucrate (Y
i
/X
i
), ct i a funciei f(x), care
aproximeaz setul de date.
Trebuie menionat c rezultatul depinde de valorile de start pentru coeficienii a
i
i
pentru anumite valori, diferenele ntre soluii pot fi chiar notabile. Din acest motiv se
recomand s se realizeze determinarea lui f(x) pentru cteva valori ale lui vg i s se
rein soluia care aproximeaz cel mai bine setul de date.
Se recomand de asemenea reluarea exemplului de mai sus pentru alt form a
funciei f(x), eventual chiar cu mai muli parametri.
Rezultatele se vor reprezenta pe acelai grafic pentru o mai bun comparare.
Capitolul 16
254

Fig. 16-15 Reprezentarea datelor i a funciei arbitrare


255
17 Prelucrarea semnalelor - Analiza
Fourier

Obiective


Familiarizarea cititorului cu facilitile oferite de Mathcad
pentru calcului transformatei Fourier discrete sau a
integralei Fourier



17 Prelucrarea semnalelor - Analiza Fourier _ 255
17.1 Calculul integralei Fourier.......................................................................256
17.2 Calculul Transformrii Fourier Discrete ...............................................259

Numr de pagini 10
Capitolul 17
256
Exist situaii cnd este util analiza semnalelor att n domeniul timpului ct i n cel al
frecvenei. Analiza circuitelor electronice, prelucrarea i interpretarea rezultatelor unor
msurri (de vibraii de exemplu), impun realizarea trecerii semnalelor din domeniul
timpului n cel al frecvenei. Dei pare o complicaie n plus, aceast transformare
permite evidenierea unor caracteristici ale unor fenomene fizice, foarte greu sau chiar
imposibil de decelat printr-o analiz n domeniul timpului (fenomenele de rezonan de
exemplu).
n MathCAD trecerea din domeniul timpului n cel al frecvenei se poate realiza fie cu
ajutorul calculului simbolic (se realizeaz calcului integralei Fourier) dac se cunoate
expresia analitic a semnalului n domeniul timpului, fie prin utilizarea funciilor
specializate pentru realizarea transformrii Fourier discrete, pentru cazul n care
semnalul n domeniul timpului este cunoscut sub forma unui set finit de perechi de
valori (timp, semnal).
n esen, imaginea obinut printr-o transformare Fourier, dezvluie coninutul de
frecvene al unui semnal pentru care se cunoate imaginea n domeniul timpului.


Pentru calculul integralei Fourier se folosete calculul simbolic (cmpul Symbolic
Transform Fourier).
Exemplu:
S se determine integrala Fourier pentru semnalul a crui reprezentare n domeniul
timpului este dat n figura 17-1.
17.1 Calculul integralei Fourier
Prelucrarea semnalelor - Analiza Fourier
257

Fig. 17-1 Semnal n domeniul timpului

Pentru acest semnal, se poate gsi o expresie analitic de forma :
) ( ) ( ) ( d t t t f = ,
unde
(t) este funcia treapt data de relaia :

<
=
rest in
x pentru
t
, 1
0 , 0
) (
n cazul exemplului considerat, d=2 i reprezint poriunea de pe abscis pentru care
f(t)=1.
Pentru aceast funcie se poate realiza calculul integralei Fourier aa cum se poate
evdea n figura 17-2. Se va remarca selectarea variabilei x ca variabil de lucru.
Rezultatul integralei Fourier este n variabil i este o funcie complex.

Fig. 17-2 Integrala Fourier

n expresia din partea dreapt apare funcia Dirac. Avnd n vedere proprietile
acesteia ( 0 0 ) ( = x daca x Dirac ), se poate ajunge la o expresie mai simpl i
anume:
Capitolul 17
258

=
d i
e
i i
f : ) (
Reprezentarea grafic a acestui rezultat este prezentat n figura 17-3. S-a realizat
reprezentarea grafic a modulului transformatei (care este o funcie complex). n plus
este de remarcat simetria pe care o afieaz transformata n raport cu originea. n
general intereseaz numai tronsonul pe abscise pozitive.
n multe situaii, este de interes s se realizeze i reprezentarea prii imaginare i a
celei reale a transformatei, sau chiar s se reprezinte partea imaginar funcie de cea
real [a transformatei].
Analiza imaginilor de tipul figurii 17-3, pun n eviden coninutul de frecvene al
semnalului analizat. n cazul concret al exemplului, semnalul este bogat n frecvene
n domeniul 0-4 Hz.
Se recomand reluarea calculului transformatei pentru diferite valori ale parametrului d,
pentru a se pune n eviden influena duratei semnalului asupra coninutului de
frecvene al imaginii obinut prin calculul integralei Fourier.

Fig. 17-3 - Integrala Fourier
Prelucrarea semnalelor - Analiza Fourier
259

Calculul inversei transformatei Fourier se face extrem de simplu, prin utilizarea
cmpului Symbolic Transform Inverse Fourier, dup selectarea variabilei
ca variabil de lucru. Rezultatul obinut este prezentat mai jos n figura 17-4:


Fig. 17-4 Transformata Fourier invers

Dei aparent rezultatul nu seamn cu funcia f(t), aa cum a fost ea definit mai sus,
o simplificare simbolic (ce va ine cont de proprietile funciei (x)), va produce exact
rezultatul ) ( ) ( ) ( d t t t f = .


Sunt destul de rare cazurile n care se cunoate expresia analitic a semnalului n
domeniul timpului. De obicei semnalul este cunoscut ntr-un numr [finit] de perechi de
puncte de forma (x
i
, y
i
), (de exemplu ca rezultat al unor msurri). Din punct de
vedere practic cele n perechi de puncte sunt reinute n doi vectori, cu numr egal de
elemente, pentru care se impune condiia ca elementele vectorului x s fie n ordine
cresctoare.
n asemenea situaii se recomand utilizarea transformrii Fourier discrete, respectiv a
funciilor MathCAD ifft(v), ifft(u), cfft(A), icfft(B), sau IFFT(v), IFFT(u), CFFT(A),
ICFFT(B).
Transformata Fourier discret pornete de la ipoteza c semnalul iniial, fie el f(t), este
eantionat la intervale uniform spaiate t. n acest caz, semnalul iniial va fi :

) ( t n h h
n
= , n=,-3, -2, -1, 0, 1, 2, 3, .

17.2 Calculul Transformrii Fourier Discrete
Capitolul 17
260
Acestuia i se va aplica transformata Fourier discret.
Banda de frecvene acoperit de transformata Fourier va fi [-f
c,
f
c
] unde cu f
c
s-a notat
i este aa numita frecven Nyquist, dat de relaia :

t
f
c

=
2
1


Altfel spus, dac semnalul are o durat finit n timp i eantionarea s-a fcut la
intervale de 0.01 secunde, transformata Fourier va acoperi domeniul [-50, 50] Hz.
Pentru a acoperi un domeniu mai ntins, trebuie ca eantionarea s fie mai fin, deci
semnalul s fie nregistrat la intervale de timp mai mici.
Dac semnalul analizat nu are o durat limitat n timp, se spune c nu este limitat nici
n frecvente (nu este bandwidth limited), astfel c dac se realizeaz eantionarea la
intervale de timp t, componentele n frecvenele din afara domeniului [-f
c,
f
c
], sunt
translatate n mod fals n intervalul [f
c
f
c
].
Fenomenul poart numele de aliasing i produce asupra transformatei Fourier efectul
prezentat n figura 17-5.


Fig. 17-5 - Fenomenul de aliasing

Odat aceste observaii fcute, se va trece la o succint prezentare a funciilor
MathCAD ce realizeaz transformata Fourier discret.

Transformata
Fourier corect
Transformata Fourier
afectat de aliasing
Prelucrarea semnalelor - Analiza Fourier
261
fft(v)

ntoarce transformata Fourier a vectorului v. Vectorul v trebuie s
aib 2
m
elemente reale, astfel c transformata va avea 1+2
m-1

elemente.
Elementul de ordin j este dat de relaia :

=
k
k
n
j
i
k j
e v
n
c
)
2
(
1


FFT(v)

ntoarce transformata Fourier a vectorului v. Vectorul sau matricea
trebuie s aib 2
m
elemente reale.
Elementul de ordin j este dat de relaia :


=
k
k
n
j
i
k j
e v
n
c
)
2
(
1


cfft(A)

ntoarce transformata Fourier a unui vector sau a unei matrice. Dac
argumentul A este vector, el trebuie s aib 2
m
elemente reale sau
complexe, astfel c transformata va avea 1+2
m-1
elemente.
Transformata are acelai numr de linii i coloane ca i matricea iniial.
Elementul de ordin j este dat de relaia :

=
k
k
n
j
i
k j
e v
n
c
)
2
(
1


CFFT(A)

ntoarce transformata Fourier a unui vector sau a unei matrice. Dac
argumentul A este vector, el trebuie s aib 2
m
elemente reale sau
complexe, astfel c transformata va avea 1+2
m-1
elemente.
Transformata are acelai numr de linii i coloane ca i matricea iniial.
Elementul de ordin j este dat de relaia :


=
k
k
n
j
i
k j
e v
n
c
)
2
(
1



Capitolul 17
262
Pentru toate aceste transformri directe, exist i transformrile inverse, dup cum
urmeaz :
fft(v) ifft(u)
cfft(A) icfft(B)
FFT(v) IFFT(u)
CFFT(A) ICFFT(B)

n legtur cu funciile amintite, trebuie reinute urmtoarele :

Att fft ct i cfft ntorc vectori ale cror elemente sunt complexe
Pentru a determina spectrul de frecvene acoperit de transformare este
necesar cunoaterea urmtoarelor elemente :
- Frecvena de eantionare a semnalului original f
s
=1/t
- Numrul de eantioane considerate, N
n aceste condiii, frecvena asociat cu elementul j al transformatei este :
s k
f
N
j
c =
Pentru a evita fenomenul de aliasing, trebuie ca frecvena de eantionare s fie mai
mic dect frecvena Nyquist, deci :
t
f f
c s

= <
2
1

Funciile fft i FFT, produc spectre de frecven simetrice n raport cu originea, astfel
c nu este necesar dect calculul primei jumti a spectrului. Aceasta este explicaia
faptului c vectorul ntors de fft are jumtate din numrul de elemente al vectorului
original. Funcia invers ifft, reconstruiete semnalul innd cont i de jumtatea de
spectru simetric.
Avnd n vedere c funciile fft i cfft (ca i FFT sau CFFT) ntorc vectori compleci, se
poate calcula i informaia de faz prin utilizarea operatorului de vectorizare (CTRL + -)


Prelucrarea semnalelor - Analiza Fourier
263
Exemplu:
S se obin spectrul de frecvene coninut de un semnal pentru care se cunoate
dependena de timp. Datele de lucru sunt reinute n dou fiiere, situate n directorul
curent de lucru MathCAD, cu numele timp.dat, respectiv semnal.dat. datele din cele
dou fiiere sunt prezentate mai jos (separarea s-a fcut aici cu semnul /, dar evident
n fiierul *.dat, fiecare valoare se gsete pe un rnd) :

Fiierul t_2m_ext.dat :

0/2.176/4.118/6.412/8.353/10/12.47/14.706/16.765/18.824/20.882/22.647/24.
706/26.882/28.941/31/33/35.294/36/40/41.27827/43.33727/45.39626/47.455
2/49.51426/51.57325/53.63225/55.69125/58.75024/59.80924/63.86824/64.92
724/65.98623/68.04523/70.10423/72.16322/74.22222/76.28122

Fiierul f_2m_ext.dat :
0/.018/.092/1.443/.832/1.09/.8/1.243/.714/1.253/.832/1.062/.956/1.075/.79/1
.085/.924/1.022/1.0/1.0/1.022/.924/1.085/.79/1.275/.656/1.362/.732/1.253/.7
14/1.543/.8/1.4/.832/1.243/.092/.018/0

Structura fiierului MathCAD care rezolv problema este detaliat (cu comentarii
intercalate) n figura 17-6:
Se va utiliza pentru transformarea Fourier direct funcia fft, care are nevoie ca
argumente de vectori cu 2
m
elemente (m>2), iar vectorii x i y au numai 38 de
elemente. Va fi necesar o ndesire a elementelor celor doi vectori i acest lucru se va
realiza prin interpolarea liniar a lui x i y.
Capitolul 17
264

Fig. 17-6 Semnalul iniial


Prelucrarea semnalelor - Analiza Fourier
265
n continuare trebuie s se aplice celor 1024 de perechi de puncte funcia potrivit de
calcul a transformatei Fourier. S-a ales funcia fft.
Aa cum se specific i n documentul MathCAD prezentat n figura 17-7, dei funcia
fft ntoarce un numr de 1024/2=512 puncte, s-a realizat reprezentarea grafic numai
pentru primele 64 ntruct semnalul este srac n frecvene peste limita
corespunztoare celor 64 puncte.
n ultimul grafic (vezi figura 17-8) s-a realizat reprezentarea grafic (numai pentru
primele 40 de puncte) a informaiei de faz.
Se propune ca exerciiu i trasarea graficelor pentru Re(z), Im(z) i eventual Im(z)
funcie de Re(z).


Fig. 17-7 Transformata Fourier discret

Capitolul 17
266

Fig. 17-8 Informaia de faz



267
18 Probleme de valori i vectori
proprii

Obiective


Prezentarea facilitilor oferite de Mathcad pentru
rezolvarea problemelor de valori i vectori proprii (simpl i
generalizat)



18 Probleme de valori i vectori proprii _____ 267
18.1 Baza teoretic ............................................................................................268
18.2 Valori i vectori proprii generalizai .......................................................269
18.3 Valori i vectori proprii neliniari.............................................................270

Numr de pagini 7
Capitolul 18
268


Dac A este o matrice ptrat cu dimensiunea n x n, se spune c ea are un vector
propriu x, corespunztor valorii proprii z, dac :
x z x A = (1)
Evident orice multiplu al vectorului propriu x va fi considerat vector propriu la rndul
su (vectorul 0 nu este considerat vector propriu, dei evident satisface relaia (1)).
Relaia de mai sus, este valabil doar dac :
0 det = I z A (2)
unde cu I s-a notat matricea unitate de dimensiune n x n. Relaia (2) se numete
ecuaie caracteristic.
Ultima relaie, care definete o ecuaie polinomial de grad n, va furniza dup rezolvare
cele n valori proprii, care pot fi reale sau complexe, distincte sau cu un anumit grad de
multiplicitate. Rdcinile multiple definesc valori proprii numite degenerate.
Relaia (1) se mai poate scrie i sub forma :
0
...
...
...
...
...
2
1
2 1
2 22 21
1 12 11
=

(
(
(
(

n nn n n
n
n
x
x
x
z a a a
a z a a
a a z a
(3)
n legtur cu valorile proprii ale unei matrice A, se pot enuna urmtoarele propoziii:
valorile proprii ale matricelor Hermitice sunt reale. Prin matrice Hermitic se
nelege o matrice egal cu complex conjugata transpusei sale;
valorile proprii ale unei matrice simetrice reale sunt reale.
Valorile proprii, odat determinate, sunt reinute fie sub forma unui vector, fie a unei
matrici diagonale (evident valorile proprii sunt situate pe diagonal), numit i matrice
spectral. Vectorii proprii pot fi i ei reunii ntr-o matrice, fiecare vector ocupnd o
coloan. O astfel de matrice se mai numete matrice modal.
18.1 Baza teoretic
Probleme de valori i vectori proprii
269
Aa cum s-a spus mai sus, dac x este vector propriu al unei matrice, atunci i x va fi
vector propriu. Multiplicatorului i se pot atribui valori astfel nct vectorii proprii s
aib anumite proprieti, cum ar fi :
suma ptratelor modulelor componentelor vectorului este egal cu unitatea;
suma modulelor componentelor vectorului este egal cu unitatea;
componenta vectorului cu cea mai mare valoare este egal cu unitatea;
componentele vectorului sunt ortogonalizate. Se spune c doi vectori proprii
sunt ortogonali n raport cu o matrice, dac este satisfcut o relaie de tipul :

=
=
j i daca
j i daca
x M x
j j
T
i i
, 0
, 1
, unde (4)
x
i
i x
j
sunt vectorii proprii considerai.
n afar de relaia (1), problemele de valori i vectori proprii se mai pot prezenta i sub
forma unei relaii de tipul :
x z A x = (5)
Dac n primul caz - relaia (1) - se obineau vectorii proprii la dreapta, n cazul relaiei
(5) se obin vectorii proprii la stnga.
Prelucrarea relaiilor (1) i (5), permite enunarea urmtoarelor propoziii :
vectorii proprii la stnga sunt transpuii vectorilor proprii la dreapta ai matricei
transpuse;
valorile proprii la stnga i la dreapta sunt egale.


Problema generalizat de vectori proprii este descris de relaia urmtoare :
x B z x A = (6)
Dac matricea B nu este singular, relaia (6) se mai poate scrie :
x z x A B =

) (
1

(7)
18.2 Valori i vectori proprii generalizai
Capitolul 18
270

O generalizare a problemelor de valori i vectori proprii este cazul descris de ecuaia :
0 ) (
2
= + + x C B A (8)
MathCAD poate rezolva primele dou tipuri de probleme de valori i vectori proprii (nu
tie s rezolve direct problemele de valori i vectori proprii neliniari). Pentru cazul
vectorilor proprii neliniari se recomand liniarizarea problemei.
Funciile MathCAD specializate pentru rezolvarea acestui tip de probleme sunt:

Exemplu:
S se citeasc dintr-un fiier de date dou matrice astfel: n fiier este reinut un tablou
cu 5 linii i 10 coloane. Primele 5 coloane vor defini prima matrice fie ea notat cu M
iar ultimele 5 coloane vor defini cea de a doua matrice fie ea notat cu N. Dup
separarea celor dou matrice, se vor calcula valorile i vectorii proprii ai matricei M,
18.3 Valori i vectori proprii neliniari
eigenvals(M) ntoarce sub forma unui vector, valorile proprii asociate
matricei M
eigenvecs(M) ntoarce o matrice coninnd vectorii proprii normalizai
corespunztori valorilor proprii ale matricei M. Vectorii
proprii sunt dispui pe coloanele matricei M
eigenvec(M,z) ntoarce vectorul propriu al matricei M asociat valorii
proprii z. Vectorul propriu este normalizat astfel nct
lungimea sa (radical din suma ptratelor valorilor
elementelor) s fie unitatea
genvals(M,N) ntoarce un vector ce conine valorile proprii
corespunztoare problemei generalizate de valori i
vectori proprii
genvecs(M,N) ntoarce o matrice coninnd vectorii proprii normalizai
corespunztori valorilor proprii ale matricei M pentru
problema de valori i vectori proprii generalizat.
Probleme de valori i vectori proprii
271
pentru problema de valori i vectori proprii clasic, iar n a doua etap, se vor calcula
valorile i vectorii proprii asociai problemei generalizate de valori i vectori proprii
pentru matricele M i N.
Fiierul de date va avea urmtorul coninut :

6 12 8 4 0 4 8 12 16 2
2 -7 10 5 1 5 10 15 6 -5
4 18 2 6 0 6 12 1 24 -3
-2 21 -4 7 -1 7 14 21 8 5
3 24 16 8 0 8 16 24 6 0

Un astfel de fiier se poate obine cu ajutorul unui editor ASCII cum ar fi Notepad.
Structura fiierului MathCAD care rezolv problemele enunate mai sus este redat n
continuare n figura 18-1. n exemplu numele fiierului structurat din care se face
citirea este v_p.prn, dar este evident c se poate folosi i un alt nume. Ceea ce este
important este ca fiierul s se gseasc n directorul de lucru al MathCAD.
Se atrage atenia asupra necesitii de se seta variabila MathCAD ORIGIN pe
valoarea 1.
Se mai atrage atenia asupra modalitilor de notare a indicilor, deoarece n documentul
MathCAD prezentat se folosesc i notaiile cu indice de ordonare (operatorul [), dar i
cele cu indice de identificare (operatorul .).
Capitolul 18
272

Fig. 18-1 Rezolvarea problemei de valori proprii de forma Mx=zx

Pentru stabilirea vectorilor proprii, se va urmri figura 18-2. Se utilizeaz aceeai
matrice M extras din matricea MM (citit dintr-un fiier de date).
Probleme de valori i vectori proprii
273

Fig. 18-2 Determinarea vectorilor proprii pentru problema de tip Mx=zx

Se atrage atenia c figurile 18-1 i 18-2 surprind zone ale unui singur fiier Mathcad.
Aceasta explic de exemplu prezena notaiei z
1
n figura 18-2 (e vorba despre primul
element al vectorului z determinat pe parcursul figurii 18-1).
n ceea ce privete rezolvarea problemei generalizate, documentul MathCAD va avea
structura prezentat n figura 18-3.
Capitolul 18
274

Fig. 18-3 Problema de valori i vectori proprii generalizat

Se poate verifica faptul c Mathcad determin vectori proprii ce satisfac condiia de
normalitate. Pentru detalii se va urmri figura 18-4.


Fig. 18-4 Verificare normalitii vectorilor proprii


275
Bibliografie
1. Borse G. J., Numerical methods with Matlab : a resource for scientists and
engineers, PWS Publishing Company, Boston, 1997
2. Broch J. T., Mechanical vibration & shock measurement, Bruel & Kjaer 1980
3. Carnahan B., Luther H., Wilkes O., Applied numerical methods, John Wiley, New
York, 1969
4. Constantinescu I., Golumbovici, D., Militaru, C., Prelucrarea datelor experimentale
cu calculatoare numerice, Editura Tehnic Bucureti, 1980
5. Conte S. D., Elementary numerical analysis, McGraw Hill, New York, 1965
6. Ewins D. J., Modal testing : Theory and practice, John Wiley & Sons, 1984
7. Ghinea M., Fireeanu S., Matlab, Calcul numeric-Grafic. Aplicaii, Editura Teora
Bucureti, 1995
8. Ionescu D. V., Ecuaii difereniale i integrale, Editura Didactic i Pedagogic,
Bucureti, 1972
9. Ingham P., CAD systems in mechanical and production engineering, Heinemann
Newns, London, 1989
10. McMahon Ch., Browne J., CAD-CAM-From principles to practice, Addison Wesley
1993
11. Nicolescu L. J., Stoka M. I., Matematici pentru ingineri, Editura Tehnic, Bucureti,
1969
12. Pascariu I., Elemente Finite, Concepte-Aplicaii, Editura Militar, Bucureti, 1985
13. Press W., Teukolsky S., Vetterling W., Flannery B., Numerical recipes in C -The art
of scientific computing, Cambridge University Press, Cambridge, 1992
14. Rumiski I. Z., Prelucrarea matematic a datelor experimentale, Editura Tehnic
Bucureti, 1974
15. Rus I. A., Micula Ghe., Pavel P., Ionescu B., Probleme de ecuaii difereniale i cu
derivate pariale, Editura Didactic i Pedagogic, Bucureti, 1982
16. Sandi H., Metode matriciale n mecanica structurilor, Editura Tehnic, Bucureti,
1975
Capitolul 18
276
17. Trandafir R., Probleme de matematici pentru ingineri, Editura Tehnic, Bucureti,
1977
18. **** Documentaie Mathcad