Strumenti Utente

Strumenti Sito


wikipaom2015:lez14

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

Entrambe le parti precedenti la revisione Revisione precedente
wikipaom2015:lez14 [2015/04/27 22:01]
166078
wikipaom2015:lez14 [2015/04/27 22:20] (versione attuale)
166078
Linea 36: Linea 36:
  
 Dopo il dimensionamento degli elementi variabili si termina l'​allocazione di matrici e vettori defininendo le grandezze dipendenti dalla tipologia di risoluzione scelta (tria 3 nodi).\\ Dopo il dimensionamento degli elementi variabili si termina l'​allocazione di matrici e vettori defininendo le grandezze dipendenti dalla tipologia di risoluzione scelta (tria 3 nodi).\\
 +
 **D**: matrice di legame costitutivo (legge di Hooke), lavorando in 3D diventa una matrice 6x6\\ **D**: matrice di legame costitutivo (legge di Hooke), lavorando in 3D diventa una matrice 6x6\\
 **B**: matrice che lega spostamenti e deformazione\\ **B**: matrice che lega spostamenti e deformazione\\
Linea 60: Linea 61:
       ​       ​
 ====Subroutine Readin==== ====Subroutine Readin====
-Lettura del Modulo di Young e del Coefficiente di Poisson e scelta dello stato di Tensione o Deformazione Piana. +Lettura del Modulo di Young e del Coefficiente di Poisson e scelta dello stato di Tensione o Deformazione Piana.\\ 
-Lettura delle coordinate nodali e dei vertici degli elementi triangolari. Lettura delle forze nodali e delle condizioni di vincolamento.+Lettura delle coordinate nodali e dei vertici degli elementi triangolari.\\ Lettura delle forze nodali e delle condizioni di vincolamento.
  
      ​SUBROUTINE READIN(YM,​PR,​ITDP,​NODES,​XY,​NELEMS,​NVERT,​IFMAX,​IFXY,​      ​SUBROUTINE READIN(YM,​PR,​ITDP,​NODES,​XY,​NELEMS,​NVERT,​IFMAX,​IFXY,​
Linea 254: Linea 255:
  
  
-TWODEL è il determinante della matrice delle coordinate locali. La subrutine ​effettua un controllo sulle dimensioni minime dell'​area per permettere una corretta ​correzione ​dei calcoli successivi.  +TWODEL è il determinante della matrice delle coordinate locali. La subroutine ​effettua un controllo sulle dimensioni minime dell'​area per permettere una corretta ​esecuzione ​dei calcoli successivi.\\  
-NB: La mantissa di un numero di macchina dedica 7 bit per la codifica dell'​esponente,​ perciò sommando due numeri con eccessiva differenza tra ordini di grandezza (es. 1 + 1e-8 = 1) potrebbe venire a perdersi il minore.+**NB**: La mantissa di un numero di macchina dedica 7 bit per la codifica dell'​esponente,​ perciò sommando due numeri con eccessiva differenza tra ordini di grandezza (es. 1 + 1e-8 = 1) potrebbe venire a perdersi il minore.
  
 ====Subroutine Kelmat==== ====Subroutine Kelmat====
  
-Costruzione della matrice di rigidezza ELK di ciascun elemento finito triangolare attraverso la formula: F = ELK * DELTA ==> ELK = A * (BT * D * B). Le coordinate nodali vengono prese, come di consueto, in verso antiorario.+Costruzione della matrice di rigidezza ELK di ciascun elemento finito triangolare attraverso la formula: F = ELK * DELTA => ELK = A * (BT * D * B). Le coordinate nodali vengono prese, come di consueto, in verso antiorario.
  
       SUBROUTINE KELMAT(XI,​YI,​XJ,​YJ,​XK,​YK,​TWODEL,​NELEM,​D,​ELK)       SUBROUTINE KELMAT(XI,​YI,​XJ,​YJ,​XK,​YK,​TWODEL,​NELEM,​D,​ELK)
Linea 400: Linea 401:
         END         END
       ​       ​
-La subroutine importa il numero di nodi vincolati con il tipo di vincolo ad essi assegnato dal main. Le operazioni che permettono la modifica della matrice di rigidezza mantenendo la sua simmetria sono: +La subroutine importa il numero di nodi vincolati con il tipo di vincolo ad essi assegnato dal main. Le operazioni che permettono la modifica della matrice di rigidezza mantenendo la sua simmetria sono:\\ 
-1_annullare tutti i coefficienti della matrice di rigidezza corrispondente alla riga ed alla colonna del grado di libertà vincolato, tranne il termine diagonale che verrà posto uguale ad 1. +1_annullare tutti i coefficienti della matrice di rigidezza corrispondente alla riga ed alla colonna del grado di libertà vincolato, tranne il termine diagonale che verrà posto uguale ad 1.\\ 
-2_si impone il temine noto corrispondente al grado di libertà vincolato pari al valore dello spostamento imposto. +2_si impone il temine noto corrispondente al grado di libertà vincolato pari al valore dello spostamento imposto.\\ 
-3_si sottrae da tutti gli altri termini noti il contributo dovuto al prodotto tra i termini della colonna annullati ed il valore imposto dal nostro grado di libertà. +3_si sottrae da tutti gli altri termini noti il contributo dovuto al prodotto tra i termini della colonna annullati ed il valore imposto dal nostro grado di libertà.\\ 
-La subroutine considera in maniera distinta i 3 tipi di problema: vincolamento lungo x, vincolamento lungo y, vincolamento lungo x ed y. Per ogni tipo di vincolamento la sub rimanda alle operazioni di modifica della matrice STRUTK attraverso 3 diversi GOTO: questo modo di operare rende ridondante il codice, rischiando di moltiplicare eventuali errori tra le diverse operazioni, sarebbe stato più consono un costrutto del tipo IF-ELSE IF- ELSE- ENDIF.+La subroutine considera in maniera distinta i 3 tipi di problema: vincolamento lungo x, vincolamento lungo y, vincolamento lungo x ed y.\\ Per ogni tipo di vincolamento la sub rimanda alle operazioni di modifica della matrice STRUTK attraverso 3 diversi ​//GOTO//: questo modo di operare rende ridondante il codice, rischiando di moltiplicare eventuali errori tra le diverse operazioni, sarebbe stato più consono un costrutto del tipo IF-ELSE IF- ELSE- ENDIF.
  
 =====MAIN===== =====MAIN=====
wikipaom2015/lez14.txt · Ultima modifica: 2015/04/27 22:20 da 166078