Discussion Closed This discussion was created more than 6 months ago and has been closed. To start a new discussion with a link back to this one, click here.

Spring-Mass-Damper global equation ODE

Please login with a confirmed email address before reporting spam

Hi,

I am trying to solve an mass-spring-damper system ODE as a global equation, where the system is excited using a time-harmonic force.

I tried to set up the equation like this:
Name: x
Equation: F - k*x - c*xt - m*xtt (k, c and m are constants and F is the force)

The plan is that the sum of the spring and damper forces shall provide the boundary load force on a sub domain in my model. I am using Axial Symmetry, Strain-Stress mode.

I would like to use the parametric solver to study resonances for different frequencies of the excitation force F, but I am not sure on how to setup this time-harmonic force for my global equation. Any ideas?

Thanks beforehand,
Johan

2 Replies Last Post 20.07.2017, 12:51 GMT-4
Ivar KJELBERG COMSOL Multiphysics(r) fan, retired, former "Senior Expert" at CSEM SA (CH)

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 27.11.2009, 17:00 GMT-5
Hi

I beleive you have several options:
1) to make a 1D geoemtry with PDE coefficient application mode, use COMSOL PDE notation for your physical formula: ea=m, da=c ... and then link the value to your model, it's a good exercice but sightly tricky if you are beginning.

2) a simpler approach, I use often: you select your boundary, go to the boundary settings and apply a load force i.e.
for an eigenfrequency analysis:

Fz = (m*jomega_smsld^2+c*jomega_smsld+k*(-w))/AreaF or along x with "u" respectively

where m is a mass in [kg] defined in the constants section, c is a damping [kg/(m/s)] also defined in the constants, and k is the spring stiffness [N/m], and finally AreaF is the surface area in [m^2] defined as a Boundary Integration constant of the value "1" over the specific boundary, and jomega_smsld is the negative complex angular frequency (-lambda) (with the eigenfrequency f=1/2/pi*abs(imag(lambda))) for the 3D application mode smsld

First you should run a eigenfrequency analysis to catch the modes and define the domain of interest:

Thereafter a frequency response / parametric analysis over the frequency range of inerest with:

Fz = (m*(j*omega_smsld^2)+c*(j*omega_smsld)+k*(-w))/AreaF and "0" for the phase

(note: the "*" betwen j*omega..., and I hope I got the signs right, I do not have COMSOL at home to test out)

If you are in 2D you must slightly adapt the formulas to ensure correct units, as 2D assumes a [1m] by default depth z. in Axisymmetry you have the "2*pi*r" to correct with to get consistent units

Do not forget that harmonic analysis can take quite some time, start with a coarse stepping, and thighten it, manually, around the expected peaks

Visualise the displacement by doing a point plot of u,v,w on the same plot graph (advanced settings "keep plot) but notice that the scale might be different by >>6 orders of magnitude

Finally, for static analysis if you have the gravity load (along z) to apply, set a volumetric (subdomain) load of
Fz=-G0*rho_smsld

where G0 = 1[lbf/lb] = 9.81[m/s^2] the gravity acceleration

But static loads are ignored for eigenfrequency analysis


Hope this helps, and is not too confusing, with COMSOL you apply physics first (you do not just fill in pre-defined ticks to add gravity etc. this gives you more freedom, but also more responsabilities).

Ivar
Hi I beleive you have several options: 1) to make a 1D geoemtry with PDE coefficient application mode, use COMSOL PDE notation for your physical formula: ea=m, da=c ... and then link the value to your model, it's a good exercice but sightly tricky if you are beginning. 2) a simpler approach, I use often: you select your boundary, go to the boundary settings and apply a load force i.e. for an eigenfrequency analysis: Fz = (m*jomega_smsld^2+c*jomega_smsld+k*(-w))/AreaF or along x with "u" respectively where m is a mass in [kg] defined in the constants section, c is a damping [kg/(m/s)] also defined in the constants, and k is the spring stiffness [N/m], and finally AreaF is the surface area in [m^2] defined as a Boundary Integration constant of the value "1" over the specific boundary, and jomega_smsld is the negative complex angular frequency (-lambda) (with the eigenfrequency f=1/2/pi*abs(imag(lambda))) for the 3D application mode smsld First you should run a eigenfrequency analysis to catch the modes and define the domain of interest: Thereafter a frequency response / parametric analysis over the frequency range of inerest with: Fz = (m*(j*omega_smsld^2)+c*(j*omega_smsld)+k*(-w))/AreaF and "0" for the phase (note: the "*" betwen j*omega..., and I hope I got the signs right, I do not have COMSOL at home to test out) If you are in 2D you must slightly adapt the formulas to ensure correct units, as 2D assumes a [1m] by default depth z. in Axisymmetry you have the "2*pi*r" to correct with to get consistent units Do not forget that harmonic analysis can take quite some time, start with a coarse stepping, and thighten it, manually, around the expected peaks Visualise the displacement by doing a point plot of u,v,w on the same plot graph (advanced settings "keep plot) but notice that the scale might be different by >>6 orders of magnitude Finally, for static analysis if you have the gravity load (along z) to apply, set a volumetric (subdomain) load of Fz=-G0*rho_smsld where G0 = 1[lbf/lb] = 9.81[m/s^2] the gravity acceleration But static loads are ignored for eigenfrequency analysis Hope this helps, and is not too confusing, with COMSOL you apply physics first (you do not just fill in pre-defined ticks to add gravity etc. this gives you more freedom, but also more responsabilities). Ivar

Please login with a confirmed email address before reporting spam

Posted: 7 years ago 20.07.2017, 12:51 GMT-4
Hi Ivar,

Shouldn't the equation be

Fz = (m*jomega_smsld^2+c*jomega_smsld+k)*-w/AreaF

where the entire equation is multiplied by displacement w. This is because of differentiating harmonic displacement w yields a jomega^2 for acceleration, and jomega for velocity.

Please let me know if I am thinking correct, because I am slightly confused by your equation.

Thank you very much for your help.

Best,
Saif
Hi Ivar, Shouldn't the equation be Fz = (m*jomega_smsld^2+c*jomega_smsld+k)*-w/AreaF where the entire equation is multiplied by displacement w. This is because of differentiating harmonic displacement w yields a jomega^2 for acceleration, and jomega for velocity. Please let me know if I am thinking correct, because I am slightly confused by your equation. Thank you very much for your help. Best, Saif

Note that while COMSOL employees may participate in the discussion forum, COMSOL® software users who are on-subscription should submit their questions via the Support Center for a more comprehensive response from the Technical Support team.