Plugin WindLab WindLabSmelt: Difference between revisions

From LabRPS Documentation
Jump to navigation Jump to search
No edit summary
 
Line 17: Line 17:


== Wittig Sinha Equal Floors ==  
== Wittig Sinha Equal Floors ==  
This is the only RPS feature that the plugin implements. It belongs to the [[RPS_Feature_Group#Simulation_Method| simulation method group]]. This feature implements the random wind velocity provided by the [https://github.com/NHERI-SimCenter/smelt Smelt project] which generate wind velocity time histories based on Wittig & Sinha (1975) model.  
This is the only RPS feature that the plugin implements. It belongs to the [[RPS_Feature_Group#Simulation_Method| simulation method group]]. This feature implements the random wind velocity simulation method provided by the [https://github.com/NHERI-SimCenter/smelt Smelt project] which generate wind velocity time histories based on Wittig & Sinha (1975) model.  


=== Properties ===  
=== Properties ===  

Latest revision as of 07:49, 25 January 2025

Generic plugin icon. Create your personal icon with the same name of the plugin WindLab Smelt Plugin

Description
This plugin implements the wind simulation method from the smelt project.

Plugin version: 1.0
Last modified: 15/06/2024
LabRPS version: All
Author: Koffi Daniel
Author
Koffi Daniel
Download
None
Features
Wittig Sinha Equal Floors
Plugin Version
1.0
Date last modified
15/06/2024
LabRPS Version(s)
All
Default shortcut
None
See also
None

Introduction

This plugin implements the wind simulation method from the smelt project. Note that this plugin is only for wind velocity on building with equal floors.

Plugin WindLab Smelt Screenshot 1.png

Wittig Sinha Equal Floors

This is the only RPS feature that the plugin implements. It belongs to the simulation method group. This feature implements the random wind velocity simulation method provided by the Smelt project which generate wind velocity time histories based on Wittig & Sinha (1975) model.

Properties

  • DataGustSpeed: Gust speed of the wind.
  • DataHeight: Building height.
  • DataSeedNumber: Value to seed random variables to ensure repeatability.
  • DataEventIndex: The index of the event whose time history should be shown.
  • DataEventName: Name to assign to event.

Scripting

import LabRPS
import WindLab
import WindLabObjects
from LabRPS import Vector as vec
import time 

def simulate():
    # Plugin
    installResuslt = WindLab.installPlugin("WindLabSmeltPlugin")
    if not installResuslt:
       LabRPS.Console.PrintError("The installation the WindLabSmeltPlugin has failed.\n")
       return None

    # Document
    doc = LabRPS.newDocument()

    # Simulation
    sim = WindLabObjects.makeSimulation(doc, "Simulation")
    if not sim:
       LabRPS.Console.PrintError("The simulation does not exist.\n")
       return None

    # Simulation method
    simMethod = WindLabObjects.makeFeature("SimulationMethod", "Simulation",  "Wittig Sinha Equal Floors", "Simulation Method")
    if not simMethod:
        LabRPS.Console.PrintError("Error on creating the simulation method.\n")
        return None
    
    # Run simulation and output the first(0) sample
    # store starting time 
    begin = time.time() 
    velocities = sim.simulate(0)
    # store end time 
    end = time.time()
    LabRPS.Console.PrintMessage(f"Total runtime of the simulaltion is {end - begin} seconds\n")

    if LabRPS.GuiUp:
       import WindLabGui
       import GeneralToolsGui
       WindLabGui.setActiveSimulation(sim)
       GeneralToolsGui.GeneralToolsPyTool.showArray(sim.getSimulationData().numberOfTimeIncrements, sim.getSimulationData().numberOfSpatialPosition + 1, velocities, True)

simulate()