zhuminjie / OpenSeesPyDoc

OpenSeesPy Documentation
http://openseespydoc.readthedocs.io
Other
145 stars 105 forks source link

pFlag function in test command #57

Closed pavan1388 closed 5 years ago

pavan1388 commented 5 years ago

Hello Dr. Zhu,

Then pFlag option in test command is not working when I select it. Can you please let me know if I am making any mistake in the way I am using the command? The example script for it is: test('NormDispIncr', 1e-5, 20, 1)

Also, in Opensees tcl, we have LogFile command, is the same command or anything similar available in Openseespy?

Thank you, Pavan.

pavan1388 commented 5 years ago

In the example below, the test command has pFlag option chosen as 1, but still, nothing is displayed when a test command is invoked.

https://openseespydoc.readthedocs.io/en/latest/src/pile.html

zhuminjie commented 5 years ago

I have no problem to use it in a simple truss example:

print("==========================") print("Starting Truss example")

from openseespy.opensees import *

import numpy as np import matplotlib.pyplot as plt

------------------------------

Start of model generation

-----------------------------

remove existing model

wipe()

set modelbuilder

model('basic', '-ndm', 2, '-ndf', 2)

create nodes

node(1, 0.0, 0.0) node(2, 144.0, 0.0) node(3, 168.0, 0.0) node(4, 72.0, 96.0)

set boundary condition

fix(1, 1, 1) fix(2, 1, 1) fix(3, 1, 1)

define materials

uniaxialMaterial("Elastic", 1, 3000.0)

define elements

element("Truss",1,1,4,10.0,1) element("Truss",2,2,4,5.0,1) element("Truss",3,3,4,5.0,1)

create TimeSeries

timeSeries("Linear", 1)

create a plain load pattern

pattern("Plain", 1, 1)

Create the nodal load - command: load nodeID xForce yForce

load(4, 100.0, -50.0)

------------------------------

Start of analysis generation

------------------------------

create SOE

system("BandSPD")

system('FullGeneral')

system('PFEM','-mumps')

create DOF number

numberer("Plain")

create constraint handler

constraints("Plain")

create integrator

integrator("LoadControl", 1.0)

test('NormDispIncr', 1e-5,20,1)

create algorithm

algorithm("Newton")

create analysis object

analysis("Static")

perform the analysis

analyze(1)

ux = nodeDisp(4,1) uy = nodeDisp(4,2) if abs(ux-0.53009277713228375450)<1e-12 and abs(uy+0.17789363846931768864)<1e-12: print("Passed!") else: print("Failed!")

print("==========================")

pavan1388 commented 5 years ago

I could run the model, but still, nothing is displayed when a test command is invoked. simpletruss

zhuminjie commented 5 years ago

I guess the reason is that the message is printed to the background terminal which can be seen in Linux, but not in Windows. I will look for solutions to that.

pavan1388 commented 5 years ago

Thank you for your help.

zhuminjie commented 5 years ago

It will be solved in the new version coming in few days.

zhuminjie commented 5 years ago

The logFile command will be there too!

pavan1388 commented 5 years ago

Both pFLag and Logfile command are now working once I update Opensees library. Thank you