Documente Academic
Documente Profesional
Documente Cultură
MATHCAD
Coperta 2
Autorul aduce deosebite mulumiri Societii Naionale a Petrolului PETROM S. A. Bucureti pentru sprijinul acordat n vederea apariiei acestei lucrri. 2
Ionu Lambrescu
MATHCAD
Pagina cu ISBN-ul
Prefa
Rezolvarea multor probleme inginereti implic utilizarea calculatorului electronic. n fapt, este de neconceput s se obin rezultate de calitate, n timp scurt, sau s se imagineze munca n echip (ai crei membri pot fi distribuii pe mari spaii geografice), fr utilizarea calculatorului. Pe piaa produselor software de calcul tiinific-ingineresc (i nu numai), oferta este relativ variat. MathCAD, Matlab, Mathematica, sunt numai cteva din mrcile ce acoper aceast zon de activitate. Ca ntotdeauna exist tentaia ierarhizrilor. Care soft e mai bun?, este ntrebarea la care rspunsul nu este chiar aa de uor de dat. Cel mai bun produs este cel pe care-l stpneti cel mai bine, cu care ai lucrat, cu care ai o experien. Tentaia (manifest mai ales la utilizatorii tineri) este de lucra cu toate (sau aproape toate) produsele similare. Firete este o greeal. Dup cum o greeal este cantonarea ncpnat la unul singur. Probabil c o soluie echilibrat ar fi acoperirea acceptabil a dou produse (ceea ce nu este att de greu pe ct poate prea, pentru c exist multe similitudini n tehnica de operare sau n logica de lucru). Pentru studeni sau specialiti crora li se adreseaz aceast carte - un anumit nivel de aplicaii poate fi abordat prin
utilizarea [i a] Mathcad-ului, un produs cu o interfa prietenoas, cu algoritmi acceptabili pentru niveluri de complexitate medii i mai ales un produs foarte uor de nvat. Cartea se dorete un sprijin pentru cei care vor s nvee s lucreze cu Mathcad, sau pentru cei care vor s se perfecioneze. Parcurgerea ei nu asigur automat obinerea de rezultate de nalt nivel, dar poate fi un punct de pornire, de la care se poate continua prin studiu individual i mai ales prin ncercarea de a folosi MathCAD-ul pentru rezolvarea unor probleme reale. Adresez mulumiri domnului Liviu Dumitracu, Prorector al Universitii Petrol Gaze din Ploieti, pentru sfaturile i ndrumarea acordate pe parcursul redactrii lucrrii. Autorul aduce i pe aceast cale mulumiri desosebite domnului Coloja Pascu Mihai, Prorector al Universitii Petrol Gaze din Ploieti, fr ajutorul cruia aceast carte nu ar fi putut s apar aa cum a aprut. Mulumiri se cuvin i celor doi referenii, pentru rbdare i observaiile utile pe care le-au fcut Autorul
CUPRINS
1 PRODUSUL MATHCAD. PREZENTARE ................................................. 13 1.1 INTRODUCERE ............................................................................... 14 1.2 NOUTI ADUSE DE MATHCAD 2001........................................... 14 1.3 CERINE HARD I SOFT PENTRU INSTALARE .................................. 15 1.4 FIIERE MATHCAD ...................................................................... 16 1.5 MEDIUL DE LUCRU MATHCAD. ECRANUL MATHCAD, FERESTRE, DOCUMENTE................................................................. 16 1.6 STRUCTURA UNUI DOCUMENT MATHCAD. NOTIUNEA DE REGIUNE ................................................................. 18 1.7 TEHNICI DE LUCRU ........................................................................ 19 2 LANSAREA COMENZILOR N MATHCAD.............................................. 21 2.1 MENIURI MATHCAD. PREZENTARE GENERAL ............................ 22 2.2 BARE DE UNELTE (TOOLBARS) ...................................................... 22 2.3 AGENDE ELECTRONICE (ELECTRONIC BOOKS)............................... 23 3 DOCUMENTE MATHCAD .................................................................... 27 3.1 CREAREA DE REGIUNI DE TIP EXPRESIE, TEXT SAU GRAFIC ............ 28 3.2 CONSTANTE, VARIABILE, OPERATORI, FUNCII.............................. 31 3.2.1 OPERATORI .......................................................................... 31 3.2.2 CONSTANTE ......................................................................... 32 3.2.3 UTILIZAREA DE BAZE DE NUMERATIE, ALTELE DECAT CEA ZECIMALA............................................. 32 3.2.4 VARIABILE........................................................................... 33 3.2.5 FUNCII ............................................................................... 37 3.3 CONTROLUL REGIUNILOR INTR-UN DOCUMENT MATHCAD......... 38
EDITAREA SI FORMATAREA REGIUNILOR DE TIP EXPRESIE SI DE TIP TEXT INTR-UN DOCUMENT MATHCAD ........................... 41 3.4.1 EDITAREA DE EXPRESII ........................................................ 41 3.4.2 INSERAREA SI STERGEREA DE PARANTEZE. APLICAREA UNEI FUNCTII .................................................... 42 3.5 FONTURI IN EXPRESII MATEMATICE. ETICHETE (TAG-URI) ............. 44 3.5.1 APLICAREA I CREAREA DE ETICHETE ................................. 46 3.6 EDITAREA I FORMATAREA REGIUNILOR DE TIP TEXT. STILURI ..... 46 3.6.1 STILURI................................................................................ 47 3.6.2 CONTROLUL DIMENSIUNILOR UNEI REGIUNI DE TIP TEXT ..... 48 3.7 FORMATAREA REZULTATELOR NTR-UN DOCUMENT MATHCAD . 50 3.8 EVALUARE DOCUMENTELOR MATHCAD...................................... 56 3.8.1 DEZACTIVAREA UNEI ECUAII ............................................. 57 3.8.2 OPTIMIZAREA EVALURILOR ............................................... 58 3.9 DEFINIREA DE HYPERLINK-URI ....................................................... 59 4 CALCUL MATRICEAL NUMERIC ............................................................ 61 4.1 CREAREA UNUI VECTOR SAU A UNEI MATRICE .............................. 62 4.1.1 VARIABILE DE TIP VECTOR SAU MATRICE ........................... 64 4.1.2 REFERIREA ELEMENTELOR VECTORILOR SAU MATRICELOR . 64 4.1.3 ORIGINEA INDICILOR ........................................................... 65 4.1.4 LIMITRI ASUPRA DIMENSIUNILOR MATRICELOR ................. 67 4.2 OPERATORI PENTRU CALCUL MATRICEAL ..................................... 67 4.3 FUNCII PENTRU CALCUL MATRICEAL ........................................... 69 4.3.1 DESCOMPUNEREA L U......................................................... 77 4.3.2 DESCOMPUNEREA CHOLESKY.............................................. 78 4.3.3 DESCOMPUNEREA QR ......................................................... 78 4.3.4 DESCOMPUNEREA SVD (SINGULAR VALUE DECOMPOSITION).................................. 78 4.3.5 EXEMPLE DE UTILIZAREA A FUNCIILOR DE CUTARE N TABLOURI ................................................... 82 4.3.6 VECTORIZRI I ATRIBUIRI SIMULTANE ............................... 84 4.3.7 CREAREA DE MATRICE STRUCTURATE ................................. 86 5 REPREZENTRI GRAFICE ...................................................................... 93 5.1 GRAFICE 2D .................................................................................. 94 5.1.1 GRAFICE DE TIP X-Y............................................................ 94 5.1.2 FORMATAREA GRAFICELOR DE TIP X-Y............................... 97 5.1.3 GRAFICE N COORDONATE POLARE .................................... 100 5.1.4 FORMATAREA GRAFICELOR N COORDONATE POLARE ....... 101 5.1.5 CONTROLUL VIZUALIZRII GRAFICELOR 2D ...................... 101 3.4 8
5.2 GRAFICE 3D ................................................................................ 106 5.2.1 GRAFICE DE TIP SUPRAFA .............................................. 106 5.2.2 GRAFICE DE TIP CURBE DE NIVEL (CONTOUR PLOT) .......... 112 5.2.3 GRAFICE DE TIP PUNCTE DISTRIBUITE N SPAIU (3D SCATTER PLOTS) ........................................................ 114 5.2.4 GRAFICE DE TIP 3D BAR .................................................... 115 5.2.5 FORMATAREA GRAFICELOR 3D.......................................... 117 5.3 GRAFICE DE TIP VECTOR PLOT .................................................... 123 5.3.1 FORMATAREA GRAFICELOR DE TIP VECTOR....................... 124 6 REZOLVAREA NUMERIC A ECUAIILOR I A SISTEMELOR DE ECUAII ............................................................. 125 6.1 REZOLVAREA ECUAIILOR ALGEBRICE........................................ 126 6.2 REZOLVAREA ECUAIILOR TRANSCENDENTE .............................. 126 6.3 REZOLVAREA SISTEMELOR ALGEBRICE LINIARE.......................... 128 6.4 REZOLVAREA SISTEMELOR NELINIARE ........................................ 129 6.5 REZOLVAREA APROXIMATIV A SISTEMELOR NELINIARE............ 132 7 DERIVARE I INTEGRARE NUMERIC. CALCUL DE SUME I PRODUSE . 133 7.1 DERIVAREA NUMERIC ............................................................... 134 7.2 INTEGRAREA NUMERIC ............................................................. 135 7.3 CALCUL DE SUME I PRODUSE ..................................................... 136 8 UTILIZAREA UNITATILOR DE MASURA IN DOCUMENTELE MATHCAD 139 8.1 MOD DE LUCRU ........................................................................... 140 8.2 DEFINIREA DE UNITI DE MSUR ............................................ 141 8.3 MODIFICAREA UNITILOR DE MSUR N CARE ESTE EXPRIMAT UN REZULTAT ....................................... 142 8.4 ALEGEREA SISTEMULUI DE UNITI DE MSUR I CONTROLUL 8.5 SCHIMB DE INFORMATIE INTRE MATHCAD SI ALTE APLICATII .......... 149 9.1 INSERAREA UNEI COMPONENTE EXCEL ....................................... 150 9.2 INSERAREA UNEI COMPONENTE MATLAB ................................. 155 9.3 INSERAREA UNEI COMPONENTE DE TIP BAZ DE DATE ................ 159 9.4 INSERAREA UNEI COMPONENTE DE TIP INPUT TABLE .................. 168 9.5 INSERAREA UNEI COMPONENTE DE TIP CONTROL MATHSOFT ..... 169 9.6 INSERAREA UNEI COMPONENTE DE TIP CITIRE (READ), SCRIERE (WRITE) DIN/N FIIERE ............................................................... 172
FORMATULUI DE AFIARE A REZULTATELOR CU UNITI DE MSUR .............................................................. 144 UTILIZAREA UM N CALCULUL INTEGRAL SAU DIFERENIAL ...... 147
9.7
10 PROGRAMARE N MATHCAD ........................................................ 177 10.1 PREZENTARE GENERAL ............................................................. 178 10.2 INSTRUCIUNEA DE TEST (IF) ...................................................... 181 10.2.1 DEFINIREA DE FUNCII PE INTERVALE. .............................. 182 10.3 INSTRUCIUNI DE CICLARE .......................................................... 183 10.3.1 INSTRUCIUNEA FOR.......................................................... 183 10.4 CONTROLUL EXECUIEI PROGRAMELOR ...................................... 186 10.4.1 SECVENA BREAK............................................................... 186 10.4.3 SECVENA RETURN ............................................................ 189 10.4.4 SECVENA ON ERROR ......................................................... 189 10.5 SUBRUTINE (PROGRAM N PROGRAM).......................................... 191 10.6 RECURSIVITATE .......................................................................... 192 11 CALCUL SIMBOLIC ......................................................................... 193 11.1 PREZENTARE GENERAL ............................................................. 194 11.2 MODALITI DE EVALUARE SIMBOLIC ...................................... 196 11.2.1 EVALUAREA CU AJUTORUL OPERATORULUI DE EVALUARE SIMBOLIC .............. ERROR! BOOKMARK NOT DEFINED. 11.2.2 EVALUAREA CU AJUTORUL OPERATORULUI DE EVALUARE SIMBOLIC I A CUVINTELOR CHEIE ............ 197 11.2.3 MODIFICATORI DE CUVINTE CHEIE .................................... 208 11.2.4 UTILIZAREA SUCCESIV SAU SIMULTAN A MAI MULTOR CUVINTE CHEIE .......................................... 209 11.2.5 EVALUAREA CU AJUTORUL MENIULUI SYMBOLICS ............ 211 11.2.6 CONTROLUL FORMATULUI REZULTATELOR SIMBOLICE ..... 218 12 ANIMAIE N MATHCAD .............................................................. 221 12.1 CREAREA I RULAREA UNEI ANIMAII ......................................... 222 12.2 SALVAREA UNEI ANIMAII .......................................................... 225 12.3 RULAREA UNEI APLICAII SALVATE ANTERIOR ........................... 226 13 OPERATORI PERSONALIZAI .......................................................... 227 13.1 INTRODUCERE ............................................................................. 228 13.2 DEFINIREA I UTILIZAREA OPERATORILOR PERSONALIZAI ......... 229 14 FIIERE ABLON (TEMPLATE) ......................................................... 231 14.1 INTRODUCERE ............................................................................. 232 14.2 CREAREA UNUI [FIIER] ABLON ................................................. 234 14.3 MODIFICAREA UNUI ABLON ....................................................... 236 10
FORMATAREA DE PAGINA SI TIPARIREA IN MATHCAD.................. 237 15 15.1 FORMATAREA DE PAGIN............................................................ 238 15.2 TIPRIREA ................................................................................... 240 16 INTERPOLAREA I EXTRAPOLAREA DATELOR. METODE DE REGRESIE ................................................................... 243 16.1 INTERPOLAREA DATELOR N 2 DIMENSIUNI ................................. 244 16.1.1 FUNCIA LINTERP .............................................................. 245 16.1.2 FUNCIA INTERP ................................................................ 246 16.1.3 FUNCIILE SCPLINE, PSPLINE I LSPLINE ............................ 246 16.2 INTERPOLAREA DATELOR N 3 DIMENSIUNI ................................. 248 16.3 EXTRAPOLAREA DATELOR .......................................................... 253 16.4 REGRESIE LINIAR I NELINIAR................................................. 255 16.4.1 REGRESIA LINIAR ............................................................ 255 16.4.3 REGRESIE POLINOMIAL 3D (NELINIAR) ......................... 260 16.4.4 APROXIMAREA DATELOR PRIN UTILIZAREA UNOR COMBINAII LINIARE DE FUNCII .. 261 16.4.5 APROXIMAREA DATELOR PRIN UTILIZAREA UNOR FUNCII ARBITRARE ..................... 263 17 PRELUCRAREA SEMNALELOR - ANALIZA FOURIER ........................ 267 17.1 CALCULUL INTEGRALEI FOURIER ................................................ 268 17.2 CALCULUL TRANSFORMRII FOURIER DISCRETE ........................ 271 18 PROBLEME DE VALORI SI VECTORI PROPRII .................................... 279 18.1 BAZA TEORETIC ........................................................................ 280 18.2 VALORI I VECTORI PROPRII GENERALIZAI ................................ 282 18.3 VALORI I VECTORI PROPRII NELINIARI ....................................... 282 BIBLIOGRAFIE ........................................................................................... 287
Obiective
Familiarizarea cititorului cu facilitile oferite
de MathCAD
13
Capitolul 1
1.1 Introducere 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. 1.2 Nouti aduse de MathCAD 2001 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. 14
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. 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.
Faciliti de generare de elemente (casete de dialog) de control. MathCAD 2001 permite crearea de butoane sau
1.3 Cerine hard i soft pentru instalare Structura minim necesar instalrii i utilizrii versiunii MathCAD 2001 este urmtoarea: Pentium 133MHz sau compatibil; CD-ROM drive; 15
Capitolul 1
Windows 95 sau superior, Windows NT 4.0 sau superior; Cel puin 32 MB RAM (64 MB este o valoare recomandat); Pentru utilizarea comod a Help-ului, este recomandat instalarea Internet Explorer 4.0, Service Pack 2, sau mai nou.
1.4 Fiiere MathCAD 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. 1.5 Mediul de lucru MathCAD. Ecranul MathCAD, ferestre, documente 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), cursor vertical i cursor 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 16
Capitolul 1
1.6 Structura unui document MathCAD. ..Noiunea de regiune 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 +.
18
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 , fie mai simplu, greceti (fie utilizarea grupului de butoane 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 placeholdere. Astfel n cazul n care se dorete inserarea ntr-un document a unei expresii de forma
curent a cursorului (prin utilizarea paletei de butoane ) operatorul integral definit, care n prima faz va arta ca mai jos : Place-holder
19
Capitolul 1
Cele patru dreptunghiuri de culoare neagr se numesc n MathCAD place-holdere. Rolul lor este de a 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 prin utilizarea grupului de sgei , , , , sau a tastei TAB, sau nc, prin utilizarea mouse-ului. 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).
20
Obiective
Prezentarea structurii de meniuri MathCAD Prezentarea barelor de unelte MathCAD Prezentarea agendelor electronice standard
21
Capitolul 2
2.1 Meniuri MathCAD. Prezentare general 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 pulldown. 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. 2.2 Bare de unelte (toolbars) n cazul butoanelor, simpla oprire 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.
Poziia oricrei palete pe spaiul de lucru MathCAD se poate modifica prin utilizarea tehnicii drag and drop. 2.3 Agende electronice (electronic books) Agendele electronice MathCAD sunt colecii de formule i relaii matematice i inginereti, constante fizice, proprieti de material, precum i alte informaii utile. 23
Capitolul 2
n principiu o agend electronic (handbook) este o colecie de documente MathCAD integrate ntr-un fiier cu extensie *.hbk. 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.
25
Documente MathCAD
Obiective
creare
Prezentarea metodelor de control, formatare i editare a regiunilor Prezentarea metodelor de evaluare a documen-telor MathCAD
27
Capitolul 3
3.1 Crearea de regiuni de tip expresie, text sau grafic Aa dup cum s-a artat deja n paragraful 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, pentru 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:
28
Documente MathCAD
x : 0 ; 20 a:3
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 Spaiile lsate au doar rolul de a face expresia mai lizibil i nu sunt permise ntr-un document MathCAD 29
Capitolul 3
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.
a.
b.
30
Documente MathCAD
3.2 Constante, variabile, operatori, funcii 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. 3.2.1 Operatori
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.
31
Capitolul 3
3.2.2 Constante
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 10307 i 0.01. 3.2.3 Utilizarea de zecimal baze de numeraie, altele dect cea
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:
Documente MathCAD
3.2.4 Variabile
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.
Capitolul 3
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 urmtor: 34
Documente MathCAD
i:1,5 y[i:12,23,12,34,22 ceea 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 primele 50 [de valori] din ir.
35
Capitolul 3
Documente MathCAD
Se atrage atenia c valoarea variabilei nume, conine i un spaiu, necesar separrii prenumelui de nume n cazul irului sum. Asupra funciilor specifice lucrului cu iruri de caractere se va reveni ntr-unul din capitolele urmtoare. 3.2.4.4 Variabile globale n paragraful 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 paragraful 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. 3.2.5 Funcii
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)=).
37
Capitolul 3
3.3 Controlul regiunilor ntr-un document MathCAD 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 de altfel i altor aplicaii Windows. Semnul c o regiune sau un grup de regiuni au fost 38
Documente MathCAD
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 de pe bara de unelte, fie prin Edit, fie prin utilizarea butonului utilizarea tastei DEL. Aceste variante NU sunt complet echivalente. i tasta DEL, sunt echivalente i Astfel, cmpul Cut, butonul 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 .
39
Capitolul 3
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 paragraful 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.
Documente MathCAD
. cmpul Align Regions din meniul 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. 3.4 Editarea i formatarea regiunilor de tip expresie i de tip text ntr-un document MathCAD
3.4.1
Editarea de expresii
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 41
Capitolul 3
n paragraful 1.7, c datorit tehnicii WYSIWYG, nu ntotdeauna ceea ce se tasteaz va apare i n document. 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.
Documente MathCAD
Se ncadreaz zona de nchis ntre paranteze ntr-un cursor de tip |___ - vezi figura 3.12; Se tasteaz caracterul (virgula).
a.
b.
a.
b.
43
Capitolul 3
3.5 Fonturi n expresii matematice. Etichete (tag-uri) 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 n 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.
Documente MathCAD
atributelor de formatare la nivel de font (din care rezult care este fontul ataat zonei respective din expresie). n afara celor dou etichete (tag-uri) despre care s-a vorbiT deja, 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 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.
constants variabila_2
variables
45
Capitolul 3
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 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. 3.5.1 Aplicarea i crearea de etichete
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. 3.6 Editarea i formatarea regiunilor de tip text. Stiluri 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. 46
Documente MathCAD
Cu ajutorul ferestrei Text Format, se vor putea modifica toate caracteristicile de formatare la nivel de font, ca ntr-un editor de text obinuit. 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.
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.
47
Capitolul 3
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.
Documente MathCAD
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 Width, din caseta Properties. La ea se poate ajunge utiliznd cmpul Format Properties vezi figura 3-19.
49
Capitolul 3
Documente MathCAD
cu diferena c naintea formatrii propriu-zise se puncteaz pe regiunea (rezultatul) de formatat.
Exponential Threshold
Capitolul 3
afiat ca 2.4, dac exist bif n caseta Show trailing zeros, respectiv 2.400, dac nu exist.
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)
52
Documente MathCAD
a.
b.
Capitolul 3
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 submatricelor 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.
54
Documente MathCAD
Prin deschiderea listei derulabile se pot alege caracterele folosite (i sau j) pentru reprezentarea numrului complex i. 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 231 (sau aproximativ 2*109). - Seciunea Tolerance vezi figura 3-26
Complex Tolerance
min( a , b ) max( a , b )
< 10 n
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 55
Capitolul 3
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.
Zero Threshold
Documente MathCAD
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 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).
MathCAD evalueaz automat toate expresiile care folosesc variabile asupra crora s-au efectuat modificri, actualiznd rezultatele (evident dac setarea Automatic Calculation este activ). Acest 57
Capitolul 3
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 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.
Reactivarea unei ecuaii dezactivat anterior se va realiza prin acelai procedeu parcurs n ordine invers. 3.8.2 Optimizarea evalurilor
Cmpul Math Optimization permite activarea sau dezactivarea optimizrii expresiilor. Dac o expresie este optimizat, nainte de evaluarea numeric se verific (cu ajutorul procesorului simbolic) 58
Documente MathCAD
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. Optimizarea presupune n prima faz selectarea expresiei. Va urma utilizarea cmpului Math Optimization. Pentru c expresia este simplificabil, a aprut asteriscul din partea dreapt (figura 3-30). Efectuarea unui dublu clic pe expresie va conduce la deschiderea casetei Optimized Result, n care apare rezultatul evalurii numerice.
Capitolul 3
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 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 hyperlinkul) va produce accesarea regiunii int (ceea ce poate presupune deschiderea documentului care o conine dac este altul dect cel care conine regiunea surs).
60
Obiective
cu
facilitile
Introducerea unor noiuni primare despre fiierele i structura documentelor MathCAD Prezentarea mediului de lucru MathCAD i a unor tehnici de lucru
61
Capitolul 4
4.1 Crearea unui vector sau a unei matrice 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
Capitolul 4
tergerea de linii sau coloane se face ncepnd cu linia sau coloana pe care se afl poziionat elementul selectat.
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. 4.1.2 Referirea elementelor vectorilor sau matricelor
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. 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 64
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.
Capitolul 4
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. 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. Vor exista astfel elementele V0 sau A0,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.4
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 (Ai,j); crearea aa numitelor input table. n cazul evalurii unei matrice n sistem Matrix (vezi paragraful 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.2 Operatori pentru calcul matriceal 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 Produs scalar Aspect Tasta * Descriere nmulete fiecare element al matricei A cu scalarul z ntoarce un scalar egal cu ui vi , unde u i v sunt
zA
Produs de vectori
u v
A B Av
* *
vectori cu acelai numr de elemente Efectueaz produsul matricelor A i B Efectueaz produsul dintre matricea A i vectorul v
67
Capitolul 4
Operaia mprire de tip scalar Adunare de vectori (matrice) Adunare cu un scalar Diferen de matrice Diferen de tip scalar Negativarea unei matrice Ridicare la putere Norma vector Determinant Transpusa Produs vectorial Extragere de coloan Suma termenilor unui vector Vectorizare unui Aspect Tasta / + + ^ | | Ctrl + ! Ctrl + 8 Ctrl+6 Ctrl + 4 Ctrl+-
Descriere mparte toate elementele matricei A la scalarul z Adun matricele A i B Adun scalarul z la elementele matricei A toate
Scade matricea B din matricea A Scade scalarul z din toate elementele matricei A Schimb semnul tuturor elementelor matricei A Ridicarea unei matrice la o putere oarecare. Dac aceasta este 1 atunci se realizeaz de fapt inversarea matricei Calculeaz norma unui vector v Calculeaz determinantul matricei ptrate A Determin transpusa matricei A Calculeaz produsul vectorial al vectorilor coloan u i v cu cte 3 elemente Extrage coloana n a unei matrice nsumeaz elementele vectorului v Operatorii i funciile matriciale sub acest operator se aplic fiecrui element al matricei (vezi paragraful 4.3.6)
n figura 4-7 sunt prezentate cteva exemple simple de aplicare a acestor operatori.
68
69
Capitolul 4
Numele funciei min(A,B,C,) Rezultatul obinut n urma aplicrii funciei Elementul de valoare minim din matricea A, B, C,
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. 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. 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.
CreateMesh(F,...)
CreateSpace(F,)
Concatenarea de tablouri
stack(A,BC,) augment(A,B,C,..) O matrice obinut prin alipirea matricelor A, B, C, una peste alta O matrice obinut prin alipirea matricelor A, B, C, una dup alta
Extragerea de submatrice
submatrix(A,ir,jr,ic,j c)
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).
71
Capitolul 4
Numele funciei rref(A) Rezultatul obinut n urma aplicrii funciei Ealonul redus al matricei sau vectorului A. Matricea sau vectorul A trebuie s fie reale.
Descompuneri de matrice
72
lu(M)
svd(A)
svds(A)
73
Capitolul 4
Numele funciei hlookup(z, A, r) Rezultatul obinut n urma aplicrii funciei 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. 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. Indicii (sub form de tablouri incluse) poziiilor n care apare valoarea z n matricea A.
vlookup(z, A, c)
match(z, A)
nainte de a se prezenta cteva exemple de utilizare a unor funcii aplicabile vectorilor i matricelor, vor fi reamintite cteva relaii matematice importante : Norma L1 returneaz cea mai mare sum a elementelor de pe coloane, adic :
L1 = max ( m kj
1 j N k =1
(M )
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.VT, 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. 74
m
j ,k
2 jk
Norma infinit returneaz suma cea mai mare sum a elementelor de pe linii, adic : L = max (
1 k N
m
j =1
kj
Cteva exemple privind utilizarea acestor funcii sunt prezentate n figurile urmtoare.
Fig. 4-8 Funciile rows, cols, max, min, length, tr, last, augment, identity
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.
76
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 : P.M=L.U, 77
Capitolul 4
deci un sistem Ax=b revine la a rezolva sistemul P.A.x=P.b i mai apoi : L.(U.x)=P.b 4.3.2 Descompunerea Cholesky
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 LLT =A (deci LT=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 A= 1 0 9 1 0 1 1 9
4.3.3
Descompunerea QR
unde Q este o matrice ortogonal (QT.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=QT.b, i se rezolv prin substituie napoi. 4.3.4 Descompunerea SVD (Singular Value Decomposition)
Se folosete pentru sistemele singulare sau foarte aproape de sistemele singulare. Pentru o matrice A, se poate gsi descompunerea : A=U.diag(S).VT 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/Sj)(UT.b) n cazul MathCAD, S este vectorul ntors de funcia svds(A) 78
79
Capitolul 4
81
Capitolul 4
4.3.5 Exemple de utilizarea a funciilor de cutare n tablouri - lookup Fie dou 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.
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.
Capitolul 4
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.
4.3.6
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.
84
85
Capitolul 4
4.3.7 Crearea de matrice structurate
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])
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;
-5;
s0 este limita inferioar a variabilei u. Valoarea implicit este s1 este limita superioar a variabilei u. Valoarea implicit
este 5;
86
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).
87
Capitolul 4
Exemple:
88
Fig. 4-22 Utilizarea unei funcii de dou variabile i reprezentarea grafic corespunztoare
89
90
91
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.
Reprezentri grafice
Obiective
Prezentarea tipurilor de reprezentri grafice ce se pot realiza cu ajutorul MathCAD Prezentarea facilitilor de formatare a graficelor
93
Capitolul 5
5.1 Grafice 2D 5.1.1 Grafice de tip X-Y 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.
94
Reprezentri grafice
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 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;
i := 1 .. 20 xi := .5 i
60 40 yi 20 0 20 0 5 xi 10
yi := ( xi) 5 xi
2
95
Capitolul 5
x := 0 , .1 .. 20 f ( x) := e
sin ( x) +cos ( x)
sin ( x) cos ( x)
f ( x)
10 x
15
20
g( x) := e
sin ( x) +cos ( x)
+e
10 5 0 5
f ( x) g ( x)
10 x
15
20
variabil
96
Reprezentri grafice
variabile
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.
97
Capitolul 5
Se pot controla la nivel de ax urmtoarele: - utilizarea unei scri logaritmice; - prezena liniilor de caroiaj; valorilor - prezena 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. 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 i valorilor 2,5 respectiv 4.
a.
b.
Reprezentri grafice
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;
a.
b.
Capitolul 5
Seciunea Labels permite definirea unui titlu al graficului (Title), a poziiei 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. 5.1.3 Grafice n coordonate polare
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)
100
Reprezentri grafice
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 Controlul vizualizrii graficelor 2D
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. 101
Capitolul 5
Eliminarea bifei din dreptul cmpului Track Data Points, va permite i citirea unor valori din exteriorul curbei sau a punctelor de pe curb ce nu corespund valorilor discrete ale variabilei abscis.
102
Reprezentri grafice
103
Capitolul 5
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. 104
Reprezentri grafice
a.
b.
Capitolul 5
n figura 5-11 este surprins modul de operare zoom n cazul unui grafic n coordonate polare.
106
Reprezentri grafice
107
Capitolul 5
108
Reprezentri grafice
109
Capitolul 5
Fig. 5-16 - Grafic de tip suprafa obinut pornind de la ecuaia unei funcii vector
110
Reprezentri grafice
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
111
Capitolul 5
5.2.2
112
Reprezentri grafice
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 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
113
Capitolul 5
5.2.3 Grafice de tip puncte distribuite n spaiu (3D Scatter Plots) 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. 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-23 Grafic de tip scatter obinut pornind de la expresia unei funcii vector de dou variabile
114
Reprezentri grafice
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.
115
Capitolul 5
Reprezentri grafice
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. 5.2.5 Formatarea graficelor 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).
Capitolul 5
Reprezentri grafice
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.
Capitolul 5
Directed light (Lumina direct) Lumina direct este produs de o surs punctual i este emis ntro direcie anume. Lumina direct are dou componente: lumina difuz i lumina reflectat (specular light). 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 reflectat Lumina reflectat vine dintr-o direcie anume i este reflectat ntr-o anume direcie. O lumin reflectat creeaz o pat de lumin pe obiectul iluminat. Lumina reflectat nu are un efect important asupra aspectului graficului. Efectul poate fi amplificat de controlul Shininess din seciunea Advanced.
120
Reprezentri grafice
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).
121
Capitolul 5
122
Reprezentri grafice
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.
5.3 Grafice de tip Vector Plot 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).
Capitolul 5
Se va face utiliznd cmpul Format Graph 2D Plot , cu precizarea c multe din cmpurile casetei de dialog nu vor fi active.
124
Obiective
de
rezolvare
125
Capitolul 6
6.1 Rezolvarea ecuaiilor algebrice Pentru rezolvarea ecuaiilor de forma: P ( x) = 0 , unde
P ( x) = a0 + a1 x + a2 x 2 + ....an x n
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.5 2 x 2 x 2 = 0
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).
f ( x) = 0 ,
sau
f ( x) = g ( x) ,
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) root(f(x)-g(x),x,a,b) Semnificaiile notaiilor sunt urmtoarele: 126
Rezolvarea numeric a ecuaiilor i a sistemelor de ecuaii - x este numele variabilei necunoscut - a i b sunt limitele ntre care se va cuta o soluie.
Capitolul 6
cazul n care se 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.
6.3 Rezolvarea sistemelor algebrice liniare Pentru un sistem algebric liniar de forma: A x = b , 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 paragraful 4.3. Funcia lsolve care se apeleaz cu sintaxa lsolve(A,b), rezolv sistemul prin inversarea matricei A, adic x = A b , 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 paragraful 4.3) se recomand utilizarea descompunerilor de matrici. n figura 6-4 este prezentat un exemplu de rezolvare a sistemului:
1
128
x1:= a1 x2:=a2
Given Ecuaii. [Constrngeri] Find(x1, x2, x3,xn)
xn:=an
Opionale
129
Capitolul 6
n figura 6-5 se pot vedea dou exemple de ntrebuinare a funciei Find, cu i fr utilizarea de constrngeri.
Funcia Find poate utiliza diferii algoritmi pentru rezolvarea de sisteme de ecuaii. Alegerea se poate face automat (AutoSelect, sau manual - vezi figura 6-7). 130
131
Capitolul 6
6.5 Rezolvarea aproximativ a sistemelor neliniare 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.
132
Obiective
133
Capitolul 7
7.1 Derivarea numeric
. Ei pot fi obinui fie prin utilizarea combinaiilor de taste sau ?, respectiv CTRL+SHIFT+?, fie prin folosirea butoanelor de pe bara de instrumente Calculus (vezi figura 7-1).
7.2 Integrarea numeric Pentru calculul de integrale definite se poate folosi operatorul
) de pe bara de instrumente
, elementele componente ntr-o secven de forma: 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); 135
Capitolul 7
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.3 Calcul de sume i produse Evaluarea numeric a sumelor sau produselor se poate face utiliznd operatorii: 136
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.
137
Obiective
Prezentarea modului de lucru cu uniti de msur n MathCAD Utilizarea unitilor de msur n calculul diferenial i integral
139
Capitolul 8
8.1 Mod de lucru 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 81.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.
8.2 Definirea 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.
141
Capitolul 8
8.3 Modificarea unitilor de msur n care este exprimat un rezultat 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/sec2 (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.
142
a.
b.
a.
b.
Capitolul 8
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
8.4 Alegerea sistemului de uniti de msur i controlul formatului de afiare a rezultatelor cu uniti de msur 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).
144
145
Capitolul 8
a.
b.
Fig. 8-9 Rezultate exprimate n nume de mrimi fizice sau n nume de uniti de msur
Alte elemente legate de formatarea rezultatelor cu uniti de msur au fost prezentate n paragraful 3.7.
146
a.
b.
147
ntre
Obiective
Prezentarea modalitilor prin care se poate face schimp de informaie ntre MathCAD i alte aplicaii Windows:
o o o
149
Capitolul 9
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 SPLUS 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). 9.1 Inserarea unei componente Excel 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 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). 150
151
Capitolul 9
152
Fig. 9-4 Stabilirea numrului de variabile de intrare/ieire i a zonelor din Excel unde acestea vor aciona
Dup apsarea butonului Finish, n documentul MathCAD va aprea un obiect ca cel din figura 9-5;
153
Capitolul 9
Capitolul 9
156
157
Capitolul 9
a.
b.
158
159
Capitolul 9
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.
161
Capitolul 9
163
Capitolul 9
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);
a.
b.
Fig. 9-23 Definirea variabilei n care vor fi extrase datele din baza de date
165
Capitolul 9
O evaluare a variabilei (A n exemplu), va produce un rezultat ca cel din figura 9-24;
166
Capitolul 9
9.4 Inserarea unei componente de tip Input Table 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 paragraful 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).
9.5 Inserarea unei componente de tip control MathSoft 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.
169
Capitolul 9
Check Box ListBox
170
171
Capitolul 9
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. 9.6 Inserarea unei componente de tip citire (Read), scriere (Write) din/n fiiere 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;
173
Capitolul 9
a.
b.
c.
Fig. 9-34 Fiiere ASCII obinute cu ajutorul unei componente de tip File Read or Write
174
Capitolul 9
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 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.
176
10
Obiective
Programare n MathCAD
Familiarizarea cititorului cu structurile de programare oferite de MathCAD Prezentarea tehnicilor execuiei programelor de control a
177
Capitolul 10
10.1 Prezentare general
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.
Programare n MathCAD
este calculat suma i numrul 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.
Capitolul 10
Programare n MathCAD
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: Dup ce se scrie f(3), se tasteaz CTRL+SHIFT+. (ceea ce va insera operatorul de evaluare simbolic); n marcatorul ce apare (vezi figura 10-5.a), se scrie cuvntul cheie expand; Se tasteaz F9. Se va obine rezultatul din figura 10-4.b.
a.
b.
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. 181
Capitolul 10
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.
Pentru exemplificare, mai jos sunt sugerate cteva probleme rezolvate cu ajutorul secvenei if. 10.2.1 Definirea de funcii pe intervale. n figura 10-7 sunt definite dou funcii cu expresii diferite pe intervale. Cuvntul cheie otherwise se traduce prin n rest.
182
Programare n MathCAD
10.3
Instruciuni de ciclare
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 Instruciunea for 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.
183
Capitolul 10
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.
Programare n MathCAD
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.
185
Capitolul 10
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
10.4 Controlul execuiei programelor
10.4.1 Secvena break 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 186
Programare n MathCAD
187
Capitolul 10
Fig. 10-16 Calculul sumei numerelor naturale impare mai mici dect n
188
Programare n MathCAD
10.4.3 Secvena return 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.
Capitolul 10
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. 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.
190
Programare n MathCAD
10.5
Odat o funcie definit printr-o secven de programare MathCAD, este posibil folosirea ei n corpul unui alt program (funcie), cu 191
Capitolul 10
respectarea regulii de parcurgere a documentelor de ctre MathCAD (de la stnga la dreapta i de sus n jos). 10.6 Recursivitate
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.
192
11
Obiective
Calcul simbolic
Familiarizarea cititorului cu facilitile oferite de MathCAD n domeniul calcului simbolic Prezentarea simbolic tehnicilor de evaluare
193
Capitolul 12
11.1 Prezentare general
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.
Animaie n MathCAD
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 :
Modul de selectare
195
Capitolul 12
11.2 Modaliti de evaluare simbolic
cu
ajutorul
operatorului
de
evaluare
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.
Animaie n MathCAD
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);
a.
b. 197
Capitolul 12
c.
198
Animaie n MathCAD
Cuvnt cheie complex Efect (semnificaie) Evaluarea complex a unei expresii (cu separarea prilor real, respective complex). Exemple: - Evaluare cu operatorul
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: Simplific (prin reduceri de termeni, simplificri, sau prin utilizarea formulelor trigonometrice sau a funciilor inverse) o expresie.
simplify
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:
199
Capitolul 12
- Evaluare fr 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:
200
Animaie n MathCAD
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:
collect, var1varn
Exemple:
coeffs, var
ntoarce sub forma unui vector coeficienii polinomiali ai expresiei argument, n raport cu variabila var.
Exemple:
201
Capitolul 12
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 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:
202
Animaie n MathCAD
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:
+
f (t ) e
it
Exemple:
203
Capitolul 12
invfourier, var Calculeaz inversa transformrii Fourier pentru o expresie, n raport cu variabila var. Rezultatul este o funcie de forma: + 1 F ( ) eit d , unde F() este funcia 2 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:
f (t ) e
0
st
Exemple:
204
Animaie n MathCAD
invlaplace,var Calculeaz inversa transformrii Laplace pentru o expresie, n raport cu variabila var. Rezultatul este o funcie de forma: + i 1 F ( s) e st ds , unde F(s) este funcia 2 i pentru care se determin transformata invers.
Exemple:
ztrans, var
Calculeaz transformata Z a unei expresii n raport cu variabila var. Rezultatul este o funcie de forma:
f ( n) z
n =0
Exemple:
determin transformata.
205
Capitolul 12
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: 1 F ( z ) z n 1 dz , unde F(z) este funcia 2 i C pentru care invers. se determin transformata
Exemple:
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. 206
Animaie n MathCAD
Se pornete de la un semnal continuu. n prima faz se realizeaz eantionarea valorilor de pe abscis (n general timpul), obinnduse 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). Surs de semnal continuu x(t) Eantionator xT(t) Cuantificator
Fig. 11-9 - Circuit de formare a semnalului eantionat xT(t) i a semnalului numeric xd(t), din semnalul continuu x(t)
Dac se noteaz cu x[n] semnalul numeric, relaia folosit pentru calculul transformatei Z este :
X ( z ) = x[ n] z n
n =0
Capitolul 12
Se mai face precizarea c dei sensibile la diferena majusculminuscul, cuvintele cheie nu sunt sensibile la caracteristicile fonturilor (cum este cazul numelor de variabile sau de funcii - vezi paragraful 3.5). Rezolvarea simbolic a sistemelor de ecuaii se poate face i cu ajutorul blocului Given-Find, aa cum se poate vedea n figura 1111.
Fig. 11-11 Rezolvarea simbolic a unui sistem folosind blocul Given Fiind
Se atrage atenia c dup scrierea Find(x,y,z) se insereaz (sau combinaia de taste operatorul de evaluare simbolic CTRL + .). Se mai remarc i faptul c nu a fost necesar o estimare iniial a soluiei. 11.2.3 Modificatori de cuvinte cheie 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.
208
Animaie n MathCAD
11.2.4 Utilizarea succesiv sau simultan a mai multor cuvinte cheie 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.4.1 cheie Utilizarea succesiv a mai multor cuvinte
Tehnica de lucru pentru ntrebuinarea succesiv a mai multor cuvinte cheie este urmtoarea: 1. Se scrie expresia de evaluat; 209
Capitolul 12
(fie cu 2. Se insereaz operatorul de evaluare simbolic ajutorul combinaiei de taste CTRL + SHIFT + ., fie folosind bara de instrumente Symbolic). Se va ajunge la o situaie de tipul celei de mai jos:
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 cheie Utilizarea simultan a mai multor cuvinte
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: 1. Se scrie expresia de evaluat; 2. Se insereaz operatorul de evaluare simbolic ajunge la o situaie ca cea de mai jos: 210 . Se
Animaie n MathCAD
5. Se poate continua cu inserarea de noi cuvinte cheie, sau se apas ENTER pentru obinerea rezultatului final:
11.2.5 Evaluarea cu ajutorul meniului Symbolics 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. Modul de lucru pentru evalurile simbolice realizate cu ajutorul meniului Symbolic este urmtorul: 211
Capitolul 12
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
212
Animaie n MathCAD
Expresie Cmp din meniul Symbolic Rezultat
213
Capitolul 12
Expresie Cmp din meniul Symbolic Rezultat
Animaie n MathCAD
Expresie Cmp din meniul Symbolic Rezultat
Expresie
Rezultat
215
Capitolul 12
Expresie
Rezultat
Rezultatul obinut la evaluarea celei de a doua inegaliti se poate nc prelucra, aa cum se poate vedea n figura 11-20.
216
Animaie n MathCAD
a.
b.
c.
217
Capitolul 12
1 2 3 4
Animaie n MathCAD
n figura 11-23 sunt prezentate efectele diferitelor setri din caseta de dialog Evaluation Style.
219
12
Obiective
Animaie n MathCAD
221
Capitolul 12
12.1 Crearea i rularea unei animaii
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 apare 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 dialog 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 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 222
Animaie n MathCAD
de dialog Animate se precizeaz i frecvena cu care vor fi redate cadrele (caseta de editare At Frames/Sec).
223
Capitolul 12
Animaie n MathCAD
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 FRAMEmin/10, FRAMEmax/10. 12.2 Salvarea unei animaii
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.
Capitolul 12
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 de pe bara de control [a ferestrei Playback], devine butonului disponibil butonul Open, ca n figura 12-6 :
13
Obiective
Operatori personalizai
Familiarizarea cititorului cu facilitile oferite de MathCAD pentru definirea de operatori particularizai (alii dect cei predefinii)
227
Capitolul 13
13.1 Introducere
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).
228
Operatori personalizai
13.2 Definirea i utilizarea operatorilor personalizai
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.
14
Obiective
Prezentarea noiunii de fiier ablon nsuirea tehnicilor de modificare a unui ablon creare sau
231
Capitolul 14
14.1 Introducere
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.
232
233
Capitolul 14
14.2
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). 234
235
Capitolul 14
14.3
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.
236
15
pagin
Obiective
Familiarizarea cititorului cu tehnicile de tiprire oferite de MathCAD Prezentarea modului de control al paginii n MathCAD
237
Capitolul 15
15.1 Formatarea de pagin
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.
239
Capitolul 15
15.2 Tiprirea
Procesul de tiprire este declanat i controlat de caseta de dialog Print, deschis prin utilizarea cmpului File Print (vezi figura 15-3).
241
Capitolul 15
242
16
Obiective
Familiarizarea cititorului cu tehnici de prelucrare a datelor experimentale oferite de MathCAD Interpolare Extrapolare Regresie
243
Capitolul 16
16.1 Interpolarea datelor n 2 dimensiuni
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=x0<x1<xn=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 xk, ce nu se suprapun peste reeaua de puncte x0<x1<xn,deci xi-1<xk<xi, se obin n ipoteza c punctele yi se unesc cu segmente de dreapt, ca n figura 16-1.
vx este un vector real cu valorile n ordine cresctoare. El corespunde valorilor de pe abscis (x); vy este un vector real, cu acelai numr de elemente ca i vx. El corespunde valorilor de pe ordonat (y);
245
Capitolul 16
x este valoarea abscisei pentru care se dorete valoarea corespunztoare de pe ordonat. Ea va fi determinat prin interpolare, aici liniar.
interp(vs,vx,vy,x), unde:
vx, vy i x au aceeai semnificaie ca la funcia linterp vs este un vector generat de una din funciile cspline, pspline sau lspline. Vectorul vs conine derivatele de ordinul 2 corespunztoare traseului descris de datele y=y(x), necesar pentru determinarea pantelor curbelor spline n punctele xi, astfel nct curba splin rezultant s fie neted (smooth). Ceea ce trebuie deci reinut, este c utilizarea funciei interp, presupune folosirea anterioar a uneia din funciile cspline, pspline sau lspline.
Exemplu: Se vor citi din dou fiiere nestructurate, 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 xi, respectiv yi. Valorile din cele dou fiiere vor fi : 246
cspline(vx, vy), ntoarce un vector al derivatelor de ordinul 2, notat cu vs, pentru datele coninute n vectorii vx i vy. 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(vx, vy), ntoarce acelai vector vs ca i funcia cspline, cu deosebirea c la capetele intervalului de analiz, curba splin va fi parabolic. lspline(vx, vy), ntoarce acelai vector vs 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).
Capitolul 16
Pentru o i mai bun nelegere, s-au reprezentat grafic n figura 164, att punctele corespunztoare valorilor yi, 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 extremitile intervalului, unde intervin de fapt deosebirile dintre pantele curbelor de interpolare. 16.2 Interpolarea datelor n 3 dimensiuni
Plecnd de la interpolarea utiliznd curbe [de interpolare], deci n plan, unde se pornete de la doi vectori, notai n paragrafele anterioare vx i vy, 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 [a,b]x[c,d] o funcie z=f(x,y) ale crei valori sunt domeniu cunoscute numai n anumite puncte a=x0<x1<xn=b, respectiv
c=y0<y1<yn=d.
248
Capitolul 16
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 Mxy; - 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 Mz, 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 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 Mz 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 (Mz), 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 250
251
Capitolul 16
252
16.3
Extrapolarea datelor
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=x0<x1<xn=b, din interiorul intervalului. 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
f i = sin(0.5 i ) e , cu i lund
i 10
Capitolul 16
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 16-7), a lui fi, att n intervalul 130 (de valori cunoscute), ct i dincolo de i=30 i anume pentru nc 12 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.
254
255
Capitolul 16
256
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.
257
Capitolul 16
n figura 16-10 sunt prezentate punctele (Yi) precum i datele obinute prin regresie.
258
259
Capitolul 16
Pentru o mai bun nelegere a celor expuse, se recomand parcurgerea exemplului Multiple Linear Regression din seciunea Data Analysis din Quicksheets. 16.4.4 Aproximarea datelor prin utilizarea unor combinaii liniare de funcii 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) f1(x), f2(x),..fn(x), se pune problema determinrii coeficienilor a1, a2,..an, astfel nct combinaia liniar
a1 f ( x)1 + a2 f 2 ( x) + ...an f n ( x) = ai f i ( x)
i =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 ai 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 fi. 261
1 + 3.587 10 4 e x x +1
n figura 16-12 se poate vedea cum ar arta un document MathCAD care determin combinaia liniar de funcii ce aproximeaz un set de date.
Spre deosebire de aproximarea prin utilizarea combinaiilor liniare de funcii, care pornea de la un set de funcii complet determinate i 263
Capitolul 16
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 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 parametri 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 :
f ( x) = e a0 x + a1 x
+ a2 (1+ x ) 0.8
264
265
Capitolul 16
266
17
semnalelor
Obiective
Familiarizarea cititorului cu facilitile oferite de MathCAD pentru calcului transformatei Fourier discrete sau a integralei Fourier
267
Capitolul 17
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 calculul 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. 17.1 Calculul integralei Fourier
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.
f (t ) = (t ) (t d ) ,
unde
f ( ) :=
e id
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]. 269
Capitolul 17
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.
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 (xi, yi), (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:
fc =
1 2 t
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. 271
Capitolul 17
Dac semnalul analizat nu are o durat limitat n timp, se spune c nu este limitat nici n frecvene (nu este bandwidth limited), astfel c dac se realizeaz eantionarea la intervale de timp t, componentele n frecvenele din afara domeniului [-fc, fc], sunt translatate n mod fals n intervalul [fc fc]. Fenomenul poart numele de aliasing i produce asupra transformatei Fourier efectul prezentat n figura 17-5. Transformata Fourier afectat de aliasing Transformata Fourier
fft(v)
cj =
i( 1 vk e n k
2 j )k n
272
FFT(v)
cj =
i ( 1 vk e n k
2 j )k n
cfft(A)
ntoarce transformata Fourier a unui vector sau a unei matrice. Dac argumentul A este vector, el trebuie s aib 2m elemente reale sau complexe, astfel c transformata va avea 1+2m-1 elemente. Transformata are acelai numr de linii i coloane ca i matricea iniial. Elementul de ordin j este dat de relaia:
cj =
i( 1 vk e n k
2 j )k n
ntoarce transformata Fourier a unui vector sau a unei matrice. Dac argumentul A este vector, el trebuie s aib 2m elemente reale sau complexe, astfel c transformata va avea 1+2m-1 elemente. Transformata CFFT(A) are acelai numr de linii i coloane ca i matricea iniial. Elementul de ordin j este dat de relaia:
cj =
i ( 1 vk e n k
2 j )k n
Pentru toate aceste transformri directe, exist i transformrile inverse, dup cum urmeaz: fft(v) cfft(A) FFT(v) CFFT(A) ifft(u) icfft(B) IFFT(u) ICFFT(B) 273
Capitolul 17
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 fs=1/t - Numrul de eantioane considerate, N n aceste condiii, frecvena asociat cu elementul j al transformatei este:
ck =
j fs N
Pentru a evita fenomenul de aliasing, trebuie ca frecvena de eantionare s fie mai mic dect frecvena Nyquist, deci:
fs < fc =
1 2 t
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 + -) 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): 274
275
Capitolul 17
277
Capitolul 17
278
18
proprii Obiective
Prezentarea facilitilor oferite de MathCAD pentru rezolvarea problemelor de valori i vectori proprii (simpl i generalizat)
279
Capitolul 18
18.1 Baza teoretic
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:
A x = z x
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:
det A z I = 0
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:
i xiT M j x j =
xi i xj 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 A = z x
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.
281
Capitolul 18
18.2 Valori i vectori proprii generalizai
A x = z B x
Dac matricea B nu este singular, relaia (6) se mai poate scrie:
( B 1 A) x = z x
18.3 Valori i vectori proprii neliniari
( A 2 + B + C ) x = 0
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:
282
eigenvec(M,z)
genvals(M,N) genvecs(M,N)
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, 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 2 4 -2 3 12 -7 18 21 24 8 10 2 -4 16 4 5 6 7 8 0 1 0 -1 0 4 5 6 7 8 8 10 12 14 16 12 15 1 21 24 16 6 24 8 6 2 -5 -3 5 0
283
Capitolul 18
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 a 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 .).
285
Capitolul 18
286
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
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
Capitolul 18
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
288