Hybrid test using OpenSees

Forum for OpenSees users to post questions, comments, etc. on the use of the OpenSees interpreter, OpenSees.exe

Moderators: silvia, selimgunay, Moderators

Post Reply
HassanF
Posts: 8
Joined: Tue Dec 31, 2013 8:44 am
Location: University of Sherbrooke

Hybrid test using OpenSees

Post by HassanF »

I’m going to do a hybrid test with a substructure using OpenSees and LabView (National Instruments). I have a problem in OpenSees and I wonder if you help me.

In my process, OpenSees is in the client side and LabView acts as server. In OpenSees I’m using a loop to do transient analysis and apply received force (from server) on the given point in each step. I think received loads are not applied properly.
How we can apply a load in each step of a transient analysis?

Would you please look at this part of my code in client side and help me?

while {$t<=$TmaxAnalysis} {
set ok [analyze 1 $DtAnalysis]
set disp1 [nodeDisp 3 1]
set disp3 [nodeDisp 3 3]
#### here I sent the displacement to the server
remove loadPattern $j; # I remove the load pattern on the given point from previous step
#### here OpenSees waits to receive restored force from the server ($FxRestore and $MzRestore)

# Now I should apply the received force on the given point to do the next step of the analysis
pattern Plain $Lpattern Linear {
load 3 [expr -$FxRestore] 4000 [expr $MzRestore];
}
}

Your help is appreciated in advance.
fmk
Site Admin
Posts: 5884
Joined: Fri Jun 11, 2004 2:33 pm
Location: UC Berkeley
Contact:

Re: Hybrid test using OpenSees

Post by fmk »

you have 1 load as positive (MzRestore) and the other negative (FxRestore), is this correct?
HassanF
Posts: 8
Joined: Tue Dec 31, 2013 8:44 am
Location: University of Sherbrooke

Re: Hybrid test using OpenSees

Post by HassanF »

Sorry, that is a mistake here, actually I apply both of them with a negative sign.

while {$t<=$TmaxAnalysis} {
set ok [analyze 1 $DtAnalysis]
set disp1 [nodeDisp 3 1]
set disp3 [nodeDisp 3 3]
#### here I sent the displacement to the server
remove loadPattern $j; # I remove the load pattern on the given point from previous step
#### here OpenSees waits to receive restored force from the server ($FxRestore and $MzRestore)

# Now I should apply the received force on the given point to do the next step of the analysis
pattern Plain $Lpattern Linear {
load 3 [expr -$FxRestore] 4000 [expr -$MzRestore];
}
}
Post Reply