Manual:Creating FEM analyses/it

FEM sta per Finite Element Method (metodo degli elementi finiti). Si tratta di un vasto argomento di matematica, ma in FreeCAD possiamo riassumerlo come un modo per calcolare le propagazioni all'interno di un oggetto 3D, tagliandolo in piccoli pezzi, e analizzando l'impatto di ogni piccolo pezzo rispetto a quelli vicini. Questo ha diversi utilizzi nei campi dell'ingegneria e dell'elettromagnetismo, ma qui vedremo in modo più approfondito il suo utilizzo già ben sviluppato in FreeCAD, per simulare le deformazioni negli oggetti che sono sottoposti a forze e pesi.

In FreeCAD tale simulazione è fatta con l'ambiente FEM. Si tratta di diverse fasi: preparare la geometria, impostare il suo materiale, eseguire la meshing, dividere in parti più piccole, come abbiamo fatto nel capitolo Preparare gli oggetti per la stampa 3D, ed infine calcolare la simulazione.



Preparare FreeCAD
La simulazione vera e propria viene effettuata con un altro pezzo di software, che viene utilizzato da FreeCAD per ottenere i risultati. Dato che ci sono diverse interessanti applicazioni FEM open-source di simulazione disponibili, l'ambiente FEM è stato costruito in modo da poterne utilizzare più di una. Tuttavia, per ora è pienamente implementato solo CalculiX. È anche necessario un altro pezzo di software, chiamato NetGen, che è responsabile della generazione della suddivisione in maglie. Le istruzioni dettagliate per l'installazione di questi due componenti sono fornite nella documentazione di FreeCAD.

Preparare la geometria
Utilizzeremo la casa modellata nel capitolo Modellazione BIM. Tuttavia, devono essere fatte alcune modifiche per rendere il modello adatto ai calcoli FEM. Si tratta, in sostanza, di scartare gli oggetti che non vogliamo includere nel calcolo, come ad esempio la porta e la finestra, e di unire tutti gli oggetti rimanenti in uno solo.


 * Caricare il modello di casa creato in precedenza
 * Eliminare o nascondere l'oggetto pagina, i piani di sezione e le dimensioni, in modo che rimanga solo con il modello
 * Nascondere la finestra, la porta e la soletta del piano terra
 * Nascondere anche le travi di metallo dal tetto. Dato che sono oggetti molto diversi dal resto della casa, non includendoli si semplifica il calcolo. Invece, considereremo il solaio di copertura come se fosse posto direttamente sulla parte superiore delle pareti.
 * Ora spostare la soletta del tetto verso il basso in modo che appoggi sulla parte superiore delle pareti: modificare l'oggetto Rettangolo usato come base del solaio di copertura, e cambiare il suo valore Placement->Position->X da 3.18 m a 3.00 m
 * Ora il modello è ripulito:




 * Attualmente l'ambiente FEM può calcolare le deformazioni su un solo singolo oggetto. Pertanto, bisogna unire i due oggetti (il muro e la soletta). Passare nell'ambiente Part, selezionare i due oggetti, e premere il pulsante [[Image:Part_Union.png|16px]] Unione. Ora abbiamo ottenuto un oggetto fuso:



Creare l'analisi

 * We are now ready to start a FEM analysis. Let's switch to the FEM Workbench
 * Select the fusion object
 * Press the [[Image:Fem_Analysis.png|16px]] New Analysis button
 * A new analysis will be created and a settings panels opened. Here you can define the meshing parameters to be used to produce the FEM mesh. The main setting to edit is the Max Size which defines the maximum size (in millimeters) of each piece of the mesh. For now, we can leave the default value of 1000:




 * Dopo aver premuto OK e pochi secondi di calcolo, la mesh FEM è pronta:




 * We can now define the material to be applied to our mesh. This is important because depending on the material strength, our object will react differently to forces applied to it. Select the analysis object, and press the [[Image:FEM_MaterialSolid.png|16px]] New Material button.
 * A task panel will open to allow us to choose a material. In the Material drop-down list, choose the Concrete-generic material, and press OK.




 * We are now ready to apply forces. Let's start by specifying which faces are fixed into the ground and can therefore not move. Press the [[Image:FEM_ConstraintFixed.png|16px]] Constraint fixed button.
 * Click on the bottom face of our building and press OK. The bottom face is now indicated as unmovable:




 * We will now add a load on the top face, that could represent, for example, a massive weight being spread on the roof. For this we will use a pressure constraint. Press the [[Image:FEM_ConstraintPressure.png|16px]] Constraint pressure button.
 * Click the top face of the roof, set the pressure to 10MPa (the pressure is applied by square millimeter) and click the OK button. Our force is now applied:




 * We are now ready to start the calculation. Select the CalculiX object in the tree view, and press the [[Image:FEM_ControlSolver.png|32px]] Start Calculation button.
 * In the task panel that will open, click first the Write .inp file button to create the input file for CalculiX, then the Run CalculiX button. A few moments later, the calculation will be done:




 * Ora possiamo guardare ai risultati. Chiudere il pannello delle attività, e vedere che all'analisi è stato aggiunto un nuovo oggetto Risultati.
 * Fare doppio clic sull'oggetto Risultati
 * Impostare il tipo di risultato che si desidera visualizzare sulla mesh, per esempio "absolute displacement", spuntare la casella di controllo show sotto Displacement, e spostare il cursore accanto ad essa. È possibile vedere che la deformazione aumenta man mano che si applica una forza maggiore:



Naturalmente, i risultati visualizzati attualmente dall'ambiente FEM non sono sufficienti per prendere delle decisioni reali sul dimensionamento delle strutture e sui materiali. Tuttavia, essi possono già dare preziose informazioni su come le forze fluiscono attraverso una struttura, e quali sono le aree deboli maggiormente sottoposte allo stress.

Download


 * Il file creato durante questo esercizio: https://github.com/yorikvanhavre/FreeCAD-manual/blob/master/files/fem.FCStd

Approfondimenti


 * The FEM Workbench
 * Installing required FEM components
 * CalculiX
 * NetGen