Prezentarea unui program cu elemente finite capabil a fi folosit în ...

Prezentarea unui program cu elemente finite capabil a fi folosit în ... Prezentarea unui program cu elemente finite capabil a fi folosit în ...

resist.pub.ro
from resist.pub.ro More from this publisher
10.06.2014 Views

Y(1) = Z(1) = SEL(1) = I= NNODE= /GO ! resume printout Cel de-al doilea exemplu numit bilinear.mac, evaluează tensiunile dintr-un model deja rulat static şi atribuie materialul 1 elementelor supuse la întindere şi materialul 2 elementelor supuse la compresiune (aceste două materiale trebuie să fie deja definite în model şi pot avea proprietăŃi diferite la întindere şi compresiune) apoi mai rulează problema pentru a corecta eventual selecŃia elementelor şi soluŃia problemei. Acest macrou este util a fi rulat după rezolvarea unei analize statice. ARG1 este numărul de iteraŃii (implicit este 2). /nop _niter = arg1 ! set number of iterations *if,_niter,lt,2,then _Niter = 2 *endif *do,iter,1,_niter ! loop on number of iterations /post1 set,1,1 *get,ar11,elem,,num,maxd ! Get number of elements *dim,_s1,,ar11 ! array for element s1 *dim,_s3,,ar11 ! array for element s3 etable,sigmax,s,1 ! s1 is in element table sigmax etable,sigmin,s,3 ! s3 is in element table sigmin *vget,_s1(1),elem,1,etab,sigmax ! get element maximum stress in s1 *vget,_s3(1),elem,1,etab,sigmin ! get element minimum stress in s3 *dim,_mask,,ar11 ! array for mask vector *voper,_mask(1),_s1(1),lt,0 ! true if max. stress < 0 *vcum,1 ! accumulate compression elements *vabs,0,1 ! absolute value of s3 *voper,_mask(1),_s3(1),gt,_s1(1) ! true if abs(minstr) > maxstr finish /prep7 material mods mat,1 properties emod,all ! go to prep7 for element ! set all materials to tension *vput,_mask(1),elem,1,esel ! select compression elements mat,2 ! change selected elements to compression emod,all esel,all finish _s1(1)= _s3(1)= _mask(1)= ! select all elements ! clean up all vectors (set to zero)

solve solve finish *enddo _niter= _iter= /gop ! rerun the analysis ! end of iterations ! clean up iteration counters 1.1.13. Aspecte de interfaŃă în lucrul GUI Atunci când se rulează un macrou în modul de lucru GUI, programul ANSYS asigură o serie de facilităŃi suplimentare pentru lucrul cu macrouri. Astfel este posibil să: • Se introducă un parametru scalar de la tastatură folosind comanda *ASK; • Se creeze o fereastră de dialog pentru a introduce mai multe valori pentru o serie de parametri; • Se afişeze un mesaj folosind comanda *MSG; • Se selecteze anumite entităŃi cu ajutorul mousului; • Se deschidă orice fereastră de dialog. InformaŃii suplimentare legate de comenzile care lucrează cu parametri se găsesc în manualul APDL Programmer's Guide.

solve<br />

solve<br />

<strong>fi</strong>nish<br />

*enddo<br />

_niter=<br />

_iter=<br />

/gop<br />

! rerun the analysis<br />

! end of iterations<br />

! clean up iteration counters<br />

1.1.13. Aspecte de interfaŃă în lucrul GUI<br />

Atunci când se rulează un macrou în modul de lucru GUI, <strong>program</strong>ul ANSYS asigură<br />

o serie de facilităŃi suplimentare pentru lucrul <strong>cu</strong> macrouri. Astfel este posibil să:<br />

• Se introducă un parametru scalar de la tastatură folosind comanda *ASK;<br />

• Se creeze o fereastră de dialog pentru a introduce mai multe valori pentru o serie de<br />

parametri;<br />

• Se a<strong>fi</strong>şeze un mesaj folosind comanda *MSG;<br />

• Se selecteze anumite entităŃi <strong>cu</strong> ajutorul mousului;<br />

• Se deschidă orice fereastră de dialog.<br />

InformaŃii suplimentare legate de comenzile care lucrează <strong>cu</strong> parametri se găsesc în<br />

manualul APDL Programmer's Guide.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!