GithubHelp home page GithubHelp logo

monashsmartstructures / ospgrillage Goto Github PK

View Code? Open in Web Editor NEW
32.0 2.0 8.0 19.5 MB

`ospgrillage` is a package that wraps `OpenSeesPy` with an interface dedicated to the development and analysis of regular bridge deck grillage models.

Home Page: https://monashsmartstructures.github.io/ospgrillage/

License: MIT License

Python 98.93% TeX 1.07%
bridge-engineering structural-analysis finite-element-analysis bridges structural-engineering

ospgrillage's People

Contributors

alanjferguson avatar ccaprani avatar dangvhuynh avatar dependabot[bot] avatar github-actions[bot] avatar justinngan92 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

ospgrillage's Issues

Workflow improvements with Materials

As of v0.1.1, ospgrillage's material module allows users to define materials using codified material properties (e.g. AS5100 or AASHTO standards). The workflow involves a material library of code materials stored in a mat_lib.json file. However the json file is hard coded where any updates/commits on the material library may not be reflected to user's working directory. A workflow conflict occurs between users who wish to: (1) adopt the material library as it is; and (2) adopt and modify certain properties. In hindsight, the following additions should address this and improve the flexibility of material module:

Material module has an internal functionality which creates/stores its material library
This is to remove the need to have a local mat_lib.json in the current working directory for the workflow of material module. This internal material library is available to all users and updatable in every release/ commits (e.g. contributors add new materials to the library).

A create_copy_material_json() feature
Catering towards users wishing to modify certain properties of material in the library, this feature is needed to create a copy of the internal material library i.e. the mat_lib.json file to the current working directory. From here, users can do edits to this mat_lib.json accordingly.

Material module detecting a local mat_lib.json in the working directory
Having created a local mat_lib.json and users edited certain properties, this feature is next needed to for the material module to supercede the internal material library with the locally created/edited mat_lib.json.

Relevent documentations is also required to elaborate this feature in future releases.

Visualization Improvements

The following documents the improvements needed for the visualization (post_processing.py) module:

To visualize position of loads alongside the load effect
This could be arrows for point loads; or a colored polygon for patch loads for example.

To visualize position of supports
Similar to load visualization, an arrow or polygon at nodes representing support regions.

Functional plot_defo() and plot_force() when an Envelope object is supplied as input
As of v0.1.1, these two functions are unable to plot Envelope xarrays (i.e. xarray of results reduced in Loadcase dimension). Some functionality additions is needed before this is possible. For example, the functions need to somehow "distinguish" that the supplied result is an Envelope xarray.

Streamline plots for transverse member
Some additions could be: allow users options to automatically plot all transverse member or a selected node lines of transverse member.

Nodal averaging of load effect
To average the load effect values at node points in plots - especially for force components (Mz, Fy, etc.)

edited on: 5/12/2021

Workflow for mass addition feature

Problem:
In bridges, often there are scenarios where loading (trucks etc) contributes mass to the overall system of the deck but not stiffness.

Solution:
A function feature in ospgrillage that enable user to add mass, either directly (to specify elements) or indirectly (handled by ospgrillage to distribute mass to nodes for example).

TODO:
A proposed function that follows the following procedure in loop can be ideal for when the model has been built (ran create_osp_model()) :

  1. loop through elements to get each element mass.
  2. For elements identified that is subjected to added mass, sum the mass of added mass with current element mass
  3. Overwrite mass parameter of element() commands

Issue with "shell_beam" model type

Hello @ccaprani @justinngan92 ,
Hope you're doing great.

There is an issue with "shell_beam" model type. I get this error when i run the workshop exemple "super-t_example-final.ipynb" and "Super-T_bridge_model_shell_beam.ipynb"
image

Note : there was an error with the shell_model=og.create_grillage(...) . I've added this argument and it worked mesh_type="orth",

is version 0.3.0 available?

Hi there

The latest version does not appear to be fully available?
I have tried pip install and git, both are downloading 0.2.1 still,

Thanks

Marco

Help! Package not installing

Hello, and thank you for sharing this. I'm new to scripting and modeling, but I want to streamline the bridge designs I create. It was a huge relief finding this package. However, I can't install it. It seems to require openseespyvis, but that package isn't available for installation. Could you please help me?

image

PS : I'm using anaconda

Running ospgrillage 0.1.1 on Windows 10 with Python 3.9

Running ospgrillage 0.1.1 on Windows 10 with Python 3.9
With the default installation the command
import ospgrillage as og
returns a message that Python 3.8 is required.

I tried modifying the init.py file in the openseespywin folder to:
if sys.version_info[0] == 3 and sys.version_info[1] >= 8:

This then returns the following message:
Python 3.9.7 (default, Sep 16 2021, 16:59:28) [MSC v.1916 64 bit (AMD64)] :: Anaconda, Inc. on win32
Type "help", "copyright", "credits" or "license" for more information.

import numpy as np
import ospgrillage as og
Traceback (most recent call last):
File "d:\Users\dougj\Miniconda64\lib\site-packages\openseespywin_init_.py", line 20, in
from openseespywin.opensees import *
ImportError: DLL load failed while importing opensees: The specified module could not be found.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "d:\Users\dougj\Miniconda64\lib\site-packages\openseespy\opensees_init_.py", line 19, in
from openseespywin.opensees import *
File "d:\Users\dougj\Miniconda64\lib\site-packages\openseespywin_init_.py", line 23, in
raise RuntimeError('Failed to import openseespy on Windows.')
RuntimeError: Failed to import openseespy on Windows.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "", line 1, in
File "d:\Users\dougj\Miniconda64\lib\site-packages\ospgrillage_init_.py", line 6, in
from ospgrillage.osp_grillage import *
File "d:\Users\dougj\Miniconda64\lib\site-packages\ospgrillage\osp_grillage.py", line 11, in
import openseespy.opensees as ops
File "d:\Users\dougj\Miniconda64\lib\site-packages\openseespy\opensees_init_.py", line 23, in
raise RuntimeError('Failed to import openseespy on Windows.')
RuntimeError: Failed to import openseespy on Windows.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.