dashpot connect with nonlinear spring in series

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

Moderators: silvia, selimgunay, Moderators

Post Reply
xieyazhou
Posts: 11
Joined: Wed Jan 09, 2013 8:43 pm
Location: ucla

dashpot connect with nonlinear spring in series

Post by xieyazhou » Thu May 10, 2018 9:18 am

Hi All,

Is there a way in OpenSees to connect a linear dashpot with a nonlinear spring in series? I have tried to assign two elements for each of these two materials and connect them in series. However, the results seems not correct to me. Any ideas?

Thanks,
Yazhou

fmk
Site Admin
Posts: 5883
Joined: Fri Jun 11, 2004 2:33 pm
Location: UC Berkeley
Contact:

Re: dashpot connect with nonlinear spring in series

Post by fmk » Fri May 11, 2018 9:32 am

if you are getting results, then you can .. whether the results are correct or not is something else .. looking at the code in the Maxwell model, i would doubt it .. this of course assumes young Prof. Dimitrios Lignos got it correct .. perhaps you should send him an email. He is now is Switzerland.

int
Maxwell::setTrialStrain(double strain, double strainRate)
{
// Set Total Strain
Tstrain = Cstrain;
Tstress = Cstress;
Ttangent = Ctangent;

// Determine change in strain from last converged state
double dStrain = strain - Cstrain;

// Constant based on Viscous Damper Viscocity C and Axial Stiffness K
double tR = (C/pow(L,Alpha))/K;

// Integration Constants as a function of incremental time dt
// Note: The integration time dt = ops_Dt is coming in from the OPS_Globals
double A = Tstress * ( exp(-ops_Dt/tR) - 1.0);
double B = (K/2.0) * (1.0 + exp(-ops_Dt/tR) );

// Incremental Stress Calculation (considers the history of strain in A and B
double Dstress = A + B * dStrain;

// Total Stress Calculation (Tstress) is increment Stress Plus Previous Total Stress
Tstress = Dstress + Tstress;
Tstrain = strain;

// double DTangent = Tstress/Tstrain;

return 0;
}

xieyazhou
Posts: 11
Joined: Wed Jan 09, 2013 8:43 pm
Location: ucla

Re: dashpot connect with nonlinear spring in series

Post by xieyazhou » Tue May 15, 2018 7:52 am

Thanks so much Frank, I got results but definitely they are not correct. I changed the values of damping coefficients but the results did not change accordingly...

We have a bunch of nonlinear springs to model the behavior of abutment components such as foundations, shear keys, bearings, deck pounding, etc. Now we are trying to investigate the influences of soil radiation damping on the bridge responses. It seems that there is a issue to implement the dashpot into the nonlinear spring groups. Even when it is connected in parallel with one of the nonlinear spring (this resultant parallel element is connected in series and parallel with other nonlinear springs), I am having the deck displacement in one direction that is larger than the case when no damping is considered, which I think is counter-intuitive.

I appreciate it if you have any thoughts to tackle this issue.

Yazhou




fmk wrote:
> if you are getting results, then you can .. whether the results are correct
> or not is something else .. looking at the code in the Maxwell model, i
> would doubt it .. this of course assumes young Prof. Dimitrios Lignos got
> it correct .. perhaps you should send him an email. He is now is
> Switzerland.
>
> int
> Maxwell::setTrialStrain(double strain, double strainRate)
> {
> // Set Total Strain
>
> Tstrain = Cstrain;
> Tstress = Cstress;
> Ttangent = Ctangent;
>
> // Determine change in strain from last converged state
>
> double dStrain = strain - Cstrain;
>
> // Constant based on Viscous Damper Viscocity C and Axial Stiffness K
>
> double tR = (C/pow(L,Alpha))/K;
>
> // Integration Constants as a function of incremental time dt
>
> // Note: The integration time dt = ops_Dt is coming in from the
> OPS_Globals
> double A = Tstress * ( exp(-ops_Dt/tR) - 1.0);
> double B = (K/2.0) * (1.0 + exp(-ops_Dt/tR) );
>
> // Incremental Stress Calculation (considers the history of strain in A
> and B
> double Dstress = A + B * dStrain;
>
> // Total Stress Calculation (Tstress) is increment Stress Plus Previous
> Total Stress
> Tstress = Dstress + Tstress;
> Tstrain = strain;
>
> // double DTangent = Tstress/Tstrain;
>
>
> return 0;
> }

selimgunay
Posts: 913
Joined: Mon Sep 09, 2013 8:50 pm
Location: University of California, Berkeley

Re: dashpot connect with nonlinear spring in series

Post by selimgunay » Tue May 15, 2018 9:36 am

I think Prof. ET at UCLA and his former postdoc worked on this using OpenSees, did you contact them?

Post Reply