Skip to main content

A CIvil ENgineering PYthon package

Project description

cienpy

The name cienpy stands for CIvil ENgineering PYthon and the package contains supporting tools for the computation of parameters and the management of interactive widgets and glyph from the library Bokeh. At the moment, the package is focused on Structural Mechanics beacause it supports Jupyter Notebooks with interactive tools, but in the future it could be enriched with more Civil Engineering analysis and theories.

Requirements

Features

Structural Mechanics

  • Static system: simply supported beam
  • Cross section: filled and hollow rectangular section
  • Free-body diagram (FBD) with state machine
  • NVM diagrams
  • Deflection (only due to bending)
  • Elastic and plastic analysis
  • Stress and strain analysis
  • Stress state element and stresses
  • Torsion (uniform)
  • Mohr Circle
  • Buckling

Interactive Tools (Bokeh)

  • Nested-string structure and explicit function implementation for easy and quick management of Javascript codes in Python
  • Curved and double arrows
  • Linspace and parabola Javascript functions
  • Roller and pinned boundary condition (draws)
  • Supporting tools for quick definition and modification of various glyph and widgets

Installation

Use the package manager pip to install cienpy using the following prompt command.

pip install cienpy

Usage

The package is normally imported with this lines:

# import the desired static system
from cienpy import simplebeam as static_sys
# import the desired cross-section
from cienpy import rectangular_section as beam_section
# import supporting modules for the visualisation implementation
from cienpy import models
from cienpy import javascriptcodes as js

A dictionary should be created with a specific format of arrays with one entry each and keynames that depend on the functions needed. This dictionary will be used as the main source (ColumnDataSource) for the manipulation of variables bewtween widgets and glyphs in the Javascript codes.

The figures, widgets and glyphs should be initialised.

The Javascript logics for different widgets and events should be declared.

Finally the layout is declared and executed.

Note that the functions have exhaustive description to help the user.

Examples

Applications of the library are available in the NOTO EPFL server under the DRIL project for Structural Mechanics or in the RESSLab Github page.

Library Status

The library is currently finished for its intended use (support for Structural Mechanics interactive tools). Future implementations are possible to extend the usage and the power of the package.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cienpy-0.1.1.tar.gz (32.0 kB view hashes)

Uploaded Source

Built Distribution

cienpy-0.1.1-py3-none-any.whl (35.6 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page