Solutore FEM

From FreeCAD Documentation
This page is a translated version of the page FEM Solver and the translation is 24% complete.
Outdated translations are marked like this.

Prefazione

Questa pagina raccoglie le informazioni sui risolutori di elementi finiti utilizzati dall'ambiente FEM. L'interfaccia tra un solutore e FreeCAD in pre-elaborazione e post-elaborazione viene eseguita tramite file di testo. Ciò significa che in teoria qualsiasi solutore che può essere configurato e controllato tramite un file di testo è in grado di lavorare con FreeCAD; affinché questa comunicazione funzioni devono essere programmati un parser e uno scrittore appropriati dei file di input e di output.

Wikipedia elenca molti pacchetti software ad elementi finiti che potenzialmente potrebbero funzionare con FreeCAD in futuro. Un confronto è disponibile su feacompare.com.

Risolutori disponibili in varie distribuzioni Linux

Il repository FreeCAD-dependencies tiene traccia delle dipendenze di FreeCAD su molte distribuzioni Linux. La pagina FEM.md esamina i risolutori FEA open source che potrebbero essere utilizzati con FEM. La pagina mostra la versione di un particolare solutore nel repository di una particolare distribuzione Linux. Questa informazione è utile per sapere se un risolutore è aggiornato o non lo è e deve essere aggiornato.

Le informazioni sono anche discusse nel forum: supported and not supported Solver.

Solver con un'interfaccia in FreeCAD

Questi solutori sono ben integrati in FreeCAD, il che significa che è possibile impostare ed eseguire un progetto di simulazione dall'interfaccia grafica e dai pulsanti nell'ambiente FEM.

CalculiX

CalculiX

Questo è il primo solutore che è stato integrato per funzionare con FEM. CalculiX è progettato principalmente per analisi statiche, termomeccaniche e modali. Ulteriori informazioni su questo risolutore sono disponibili in FEM CalculiX.

Elmer

Il solutore multifisico Elmer è stato integrato in FreeCAD come progetto di Google Summer of Code 2017: main website, community portal, code repository, Elmer Integration (GSoC) - Activity Log (discussione nel forum).

Mystran

Mystran is a structural analysis program that uses the Nastran input file format. It is released under MIT license which means that it's open-source. See main website, code repository and Mystran-FreeCAD-forum (forum topic).

Z88

Il solutore Z88 è progettato per simulazioni statiche lineari con particolare attenzione all'insegnamento del metodo degli elementi finiti. È stato il secondo risolutore ad essere integrato in FreeCAD. Successivamente, l'integrazione è stata migliorata come progetto Google Summer of Code 2017.

Vedere le informazioni:

Ci sono due versioni, Z88OS è l'edizione open source, mentre Z88Aurora è freeware e include un'interfaccia grafica e dei metodi di soluzione aggiuntivi.

Solver implementati come ambienti esterni

Questi solutori non sono integrati nell'ambiente FEM, il che significa che hanno bisogno di un'interfaccia separata per impostare un progetto di simulazione. Ciò si ottiene attraverso le macro o gli ambienti esterni.

DualSPHysics

DualSPHysics è un set di librerie C++, CUDA, e Java che usa il modello idrodinamica a particelle levigate (SPH) denominato SPHysics per studiare i fenomeni di flusso a superficie libera come le onde che si infrangono.

DesignSPHysics è un ambiente esterno integrato in FreeCAD che fornisce un'interfaccia utente grafica per DualSPHysics: main website, code repository, Interesting project: DesignSPHysics fluid simulator (discussione nel forum).

DesignSPHysics può essere installato tramite Addon manager.

FastHenry e FasterCap

FastHenry e FasterCap sono risolutori di campi di capacità e induttanza-resistenza sviluppati da FastFieldSolvers: main website, download page (binary and source code), forum.

EM è un ambiente di lavoro esterno che è stato creato per servire da front-end per questi risolutori elettromagnetici. FastHenry è completamente supportato per l'analisi di impedenza magneto-quasistatica 3D, mentre FasterCap è accessibile attraverso alcune macro Python.

L'ambiente EM può essere installato tramite Addon manager.

fcFEM

fcFEM è un risolutore di elementi finiti per studi strutturali e meccanici, implementato in Python e che può essere eseguito direttamente da FreeCAD senza chiamare solutori binari esterni. Pertanto, può essere considerato il risolutore interno di FreeCAD.

fcFEM è stato progettato per superare alcune limitazioni di altri solutori, come CalculiX, al fine di eseguire vari studi di ingegneria strutturale.

Alcuni dei problemi che dovrebbero essere risolti da questo risolutore includono

L'autore considera FreeCAD una buona piattaforma di prototipazione per configurare, testare e visualizzare rapidamente diversi problemi strutturali, quindi avere un solutore integrato ma flessibile è molto utile. Vedere la discussione principale, fcFEM - FEA from start to finish.

fcFEM è impacchettato come una libreria python e una macro e può essere scaricato dal github repository. Alla fine sarà disponibile dal Addon manager, o sarà distribuito come parte di FreeCAD stesso.

OpenFoam

OpenFoam è un potente framework per la simulazione fluidodinamica computazionale (CFD), distribuito come una serie di librerie C++.

OpenFoam è disponibile in FreeCAD attraverso due ambienti esterni:

  • Cfd, originario di Qingfeng Xia.
  • CfdOF, una biforcazione di Cfd che è finalizzata alla facilità d'uso.

Mentre Cfd è concepito come funzionalità completa per utenti avanzati, CfdOF è pensato per gli utenti che stanno iniziando con CFD e OpenFoam.

Entrambi gli ambienti possono essere installati tramite Addon manager, ed entrambi hanno un posto per la discussione nel subforum CfdOF / CFD.

Implementazioni in corso

FEniCS

FEniCS

FEniCS è un framework di calcolo per la risoluzione di equazioni differenziali alle derivate parziali (PDE), con interfacce di programmazione di alto livello in Python e C++. Può essere usato per stabilire problemi scientifici nelle formulazioni di elementi finiti che possono essere risolti numericamente.

Vedere: main website, Fenics as Solver (forum thread).

FenicsSolver è una piattaforma di simulazione per affrontare problemi multi-corpo, multi-fisica (accoppiati) e multi-scala. Si spera di integrare il solutore FEniCS sia in FEM che nell'ambiente esterno Cfd , quindi il sistema risultante funziona come un'alternativa gratuita a Comsol o Moose. FenicsSolver è sviluppato dallo stesso autore di Cfd.

OOFEM

OOFEM

OOFEM è un programma FEM orientato agli oggetti realizzato dall'Università Tecnica Ceca, per risolvere problemi meccanici, di trasporto e di meccanica dei fluidi.

È stato detto che presenta alcuni vantaggi rispetto a CalculiX, come gli elementi dell'interfaccia (pre-stressed pre/post-tensioned concrete bridge), e controllo della lunghezza dell'arco per l'analisi del collasso elasto-plastico (FEM - Tubular Connection with Shell Elements).

L'integrazione preliminare in FEM è stata eseguita. Vedere: OOFem (main thread), test request, multiple solvers.

Fino a quando l'integrazione del solutore non viene completata e il nuovo codice non viene unito al repository principale di FreeCAD, i file necessari per l'utilizzo del solutore in FEM possono essere scaricati da forked FreeCAD branch. Per una panoramica dell'implementazione, dai un'occhiata alla cronologia dei commit https://github.com/berndhahnebach/FreeCAD_bhb/commits/femoofem

MBDyn

Solutori non integrati

I seguenti solutori non sono stati integrati in FreeCAD ma hanno suscitato un certo interesse da parte della comunità degli utenti. Se uno sviluppatore desidera creare un ponte di comunicazione per un determinato risolutore, deve fare riferimento al subforum FEM per consigli e assistenza.

I seguenti articoli potrebbero essere obsoleti, ma le informazioni che contengono potrebbero comunque essere utili per capire come integrare i solutori in FreeCAD

ADAPy

See ADAPy and ADA - Assembly for Design & Analysis (forum topic).

Agros2D and Hermes

Agros2D e Hermes

Agros2D è un programma grafico multipiattaforma progettato per risolvere diversi problemi fisici. Internamente utilizza le librerie C++ Hermes per la soluzione di sistemi di equazioni alle derivate parziali non lineari (PDE) semplici e complessi dipendenti dal tempo che utilizzano una versione generale del metodo degli elementi finiti (hp-FEM). Codice principale repository, e tutorials.

Code-Aster and Code-Saturne

Code-Aster e Code-Saturne

Code-Aster è un solutore multiphysics open source; insieme al pre-processore Salomé-Meca formano una piattaforma di simulazione sviluppata da EDF-GDF, la più grande compagnia energetica francese. Era un primo pacchetto considerato per l'inclusione in FreeCAD: FreeCAD and Code-Aster/Salome-Meca (discussione nel forum).

Code-Saturne è un software open source gratuito sviluppato e rilasciato da EDF per risolvere la fluidodinamica computazionale (CFD).

FElt

FElt

FElt è un pacchetto di elementi finiti per risolvere problemi di analisi strutturale lineare statica e dinamica. Il codice originale è obsoleto, quindi è stato biforcato in un nuovo repository per far rivivere il progetto e renderlo compilabile in un sistema moderno.

Nei forum è stato suggerito di eseguire l'analisi dei rinforzi del cemento armato (assemblaggi di travi e colonne) utilizzando elementi trave 1D: Automation in Design, Felt in FEM Workbench.

Frame3DD

Frame3DD è un pacchetto software per l'analisi strutturale statica e dinamica di strutture 2D e 3D, repository principale. Un lettore preliminare per i file di input è stato annunciato nei forum: Test read data from Frame3DD file. Argomento generale del forum in FEM https://forum.freecadweb.org/viewtopic.php?f=18&t=43389 .

Impact FEM

Impact FEM

libMesh

libMesh

libMesh è una libreria di elementi finiti C++ per la soluzione numerica di equazioni alle derivate parziali, con l'obiettivo principale di fornire supporto per calcoli di affinamento reticolare adattivo (AMR) in parallelo: code repository.

È stato suggerito di integrare questa libreria in FreeCAD come parte di un progetto Google Summer of Code.

Modelica

Modelica

Modelica è un linguaggio per modellare e ottimizzare sistemi fisici complessi e interconnessi, ad esempio meccanici, elettrici, termici, idraulici e altri. Il linguaggio stesso e le sue librerie standard sono open source. Alcuni ambienti di simulazione basati su Modelica, come Catia's Dymola, sono proprietari, ma ci sono anche implementazioni free come OpenModelica and JModelica.

With FreeCAD, Modelica was suggested to help perform animations, but more broadly it could be used in mechanical and building engineering to solve equations and optimize a particular design: Modelica (forum topic).

The PyFMI package contains Python bindings to work with FMU models, which are standardized models in the binary format produced by compliant Modelica environments, including Dymola, OpenModelica, and JModelica. It was suggested that this library could help FreeCAD connect to a Modelica system (forum topic).

Mumps

Mumps is a generic solver for massive systems of equations, which generally deals with factorizing and operating on sparse matrices. It was mentioned in the forum: Test request, multiple solvers (forum topic).

It does not perform finite element analysis directly, but it may be used internally by other packages like Code-Aster.

Nastran

Nastran is a structural analysis program developed by NASA in the 1970s. Modern versions of it are commercial products and closed source; however, older versions of it, Nastran-93 and Nastran-95 were released as open-source in 2015. Forum post: Nastran (forum topic).

There is no technical support for the open-source code, and it is probably difficult to compile in a modern system.

OpenSees

OpenSees is a software framework for developing applications to simulate structural and geotechnical systems mainly in the field of earthquake engineering. OpenSees, the Open System for Earthquake Engineering Simulation (forum topic) and Relicensing of OpenSees (forum topic).

PolyFEM

PolyFEM is a simple C++ and Python finite element library. We provide a wide set of common partial differential equations including Laplace, Helmholtz, Linear Elasticity, Saint-Venant Elasticity, Neo-Hookean Elasticity and Stokes. PolyFEM (forum topic).

Sparselizard

Sparselizard is a fast, general, multiphysics, p-adaptive, open-source C++ finite element library running on Linux, Mac and Windows. It is used to design next-generation microdevices (ultrasound transducers, micromirrors, microvalves, comb drives,...) and it is carefully validated against analytical solutions, third-party software and measurements of the fabricated devices. It looks like it is developed by the team of gmsh mesh generator.

SU2

SU2 is a collection of software tools developed in C++ and Python for the solution of partial differential equations (PDE) and PDE-constrained optimization problems on unstructured meshes. It is particularly used in the fields of aerodynamics and computational fluid dynamics (CFD).

Tochnog

Tochnog Professional is a closed-source program to perform geotechnical simulations such as landslides, driving piles, slope stability, and civil engineering calculations (masonry and earthquake response), website.

Tochnog was successfully used in FreeCAD as a substitute of CalculiX, although the trial version is limited in the number of elements it can handle: Integration of tochnog solver in FreeCAD FEM (forum topic).

XC

XC is a FEA program designed to solve structural problems in civil engineering like real beam shell analysis. Internally it uses the OpenSees libraries: main repository, XC, opensource structural engineering FEM code (forum topic).