# SolidsPy **Repository Path**: jixiangshui/SolidsPy ## Basic Information - **Project Name**: SolidsPy - **Description**: 2D-Finite Element Analysis with Python - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2020-03-26 - **Last Updated**: 2023-10-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README SolidsPy: 2D-Finite Element Analysis with Python ================================================ .. figure:: https://raw.githubusercontent.com/AppliedMechanics-EAFIT/SolidsPy/master/docs/img/wrench.png :alt: Wrench under bending. .. image:: https://img.shields.io/pypi/v/solidspy.svg :target: https://pypi.python.org/pypi/continuum_mechanics :alt: PyPI download .. image:: https://readthedocs.org/projects/solidspy/badge/?version=latest :target: https://solidspy.readthedocs.io/en/latest/ :alt: Documentation Status .. image:: https://img.shields.io/pypi/dm/solidspy :target: https://pypistats.org/packages/solidspy :alt: Downloads frequency A simple finite element analysis code for 2D elasticity problems. The code uses as input simple-to-create text files defining a model in terms of nodal, element, material and load data. - Documentation: http://solidspy.readthedocs.io - GitHub: https://github.com/AppliedMechanics-EAFIT/SolidsPy - PyPI: https://pypi.org/project/solidspy/ - Free and open source software: `MIT license `__ Features -------- * It is based on an open-source environment. * It is easy to use. * The code allows to find displacement, strain and stress solutions for arbitrary two-dimensional domains discretized into finite elements and subject to point loads. * The code is organized in independent modules for pre-processing, assembly and post-processing allowing the user to easily modify it or add features like new elements or analyses pipelines. * It was created with academic and research purposes. * It has been used to tech the following courses: - IC0285 Computational Modeling (Universidad EAFIT). - IC0602 Introduction to the Finite Element Methods (Universidad EAFIT). Installation ------------ The code is written in Python and it depends on ``numpy``, ``scipy`` and ``sympy``. It has been tested under Windows, Mac, Linux and Android. To install *SolidsPy* open a terminal and type: :: pip install solidspy To specify through a GUI the folder where the input files are stored you will need to install `easygui `__. To easily generate the required SolidsPy text files out of a `Gmsh `__ model you will need `meshio `__. These two can be installed with: :: pip install easygui pip install meshio How to run a simple model ------------------------- For further explanation check the `docs `__. Let's suppose that we have a simple model represented by the following files (see `tutorials/square example `__ for further explanation). - ``nodes.txt`` :: 0 0.00 0.00 0 -1 1 2.00 0.00 0 -1 2 2.00 2.00 0 0 3 0.00 2.00 0 0 4 1.00 0.00 -1 -1 5 2.00 1.00 0 0 6 1.00 2.00 0 0 7 0.00 1.00 0 0 8 1.00 1.00 0 0 - ``eles.txt`` :: 0 1 0 0 4 8 7 1 1 0 4 1 5 8 2 1 0 7 8 6 3 3 1 0 8 5 2 6 - ``mater.txt`` :: 1.0 0.3 - ``loads.txt`` :: 3 0.0 1.0 6 0.0 2.0 2 0.0 1.0 Run it in Python as follows: .. code:: python import matplotlib.pyplot as plt # load matplotlib from solidspy import solids_GUI # import our package disp = solids_GUI() # run the Finite Element Analysis plt.show() # plot contours For Mac users it is suggested to use an IPython console to run the example. License ------- This project is licensed under the `MIT license `__. The documents are licensed under `Creative Commons Attribution License `__. Citation -------- To cite SolidsPy in publications use Juan Gómez, Nicolás Guarín-Zapata (2018). SolidsPy: 2D-Finite Element Analysis with Python, . A BibTeX entry for LaTeX users is .. code:: bibtex @software{solidspy, title = {SolidsPy: 2D-Finite Element Analysis with Python}, author = {Gómez, Juan and Guarín-Zapata, Nicolás}, year = 2018, keywords = {Python, Finite elements, Scientific computing, Computational mechanics}, abstract = {SolidsPy is a simple finite element analysis code for 2D elasticity problems. The code uses as input simple-to-create text files defining a model in terms of nodal, element, material and load data.}, url = {https://github.com/AppliedMechanics-EAFIT/SolidsPy} }