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.

Displacement Vs Displacement Field in Solid Mechanics

Prasanna Kumar Routray

Please login with a confirmed email address before reporting spam

Hi, I ran a frequency sweep study where I get to plot the amplitude and phase from Solid Mechanics module.

solid.uAmpZ/solid.uPhaseZ - Stands for displacement amplitude (m) and phase.

Scenario:- 1. I collect the phase and amplitude for system identification. 2. I want to validate the model using time-dependent study (Identified model and COMSOL).

The problem is that I cannot get the same solid.uAmpZ in time-dependent study. It only gets me Displacement Field (m)

How do I resolve this issue? Both have to be either Displacement Field (m) or Displacement (m) in both frequency sweep or time-dependent study.

I can submit the .mph files if needed but it is not relevant I believe.

Cheers!


6 Replies Last Post Aug 24, 2023, 12:41 a.m. EDT
Henrik Sönnerlind COMSOL Employee

Please login with a confirmed email address before reporting spam

Posted: 9 months ago Aug 10, 2023, 5:37 a.m. EDT

In a time dependent study, there is just a time history. There is no reason to assume that the solution is periodic so that it would be possible to define variables like amplitude and phase.

However, if you know the amplitude and phase from a frequency domain soution, and want to compare those results with a computed time history, you can just plot the function amplitude * cos(omega * t + phase)

-------------------
Henrik Sönnerlind
COMSOL
In a time dependent study, there is just a time history. There is no reason to assume that the solution is periodic so that it would be possible to define variables like amplitude and phase. However, if you know the amplitude and phase from a frequency domain soution, and want to compare those results with a computed time history, you can just plot the function amplitude \* cos(omega \* t + phase)

Prasanna Kumar Routray

Please login with a confirmed email address before reporting spam

Posted: 8 months ago Aug 21, 2023, 1:26 a.m. EDT
Updated: 8 months ago Aug 21, 2023, 1:27 a.m. EDT

Hi @Henrik Sönnerlind, Thanks for the reply. I missed the reply as was away.

The idea was that I should be able to use frequency sweep for system identification and then use time-dependenrt study for validating the model in COMSOL and MATLAB.

I could not get the idea "However, if you know the amplitude and phase from a frequency domain soution, and want to compare those results with a computed time history, you can just plot the function amplitude * cos(omega * t + phase)".

Use Case Example:

Step1 - Define an input the system and excite by sweeping through the frequency range. Record the response (Amplitude and Phase).

Step2 - Use the response (Amplitude and Phase) data for system identification.

Step3 - The identified model is in Laplace domain which can be simulated in MATLAB.

Step4 - Define an arbitrary multisine input signal. Use this signal in both MATLAB to get simulated response and COMSOL time-dependent study to get the model response.

Step5 - Compare the MATLAB and COMSOL response.

The issue I was facing is that the response (Amplitude and Phase) in frequency study is solid.uAmpZ/solid.uPhaseZ - Stands for displacement amplitude (m) and phase. where as the response in time-dependent study is simply w.

This makes it difficult to match the response.

Hope this is clear. It would be nice if you could point to some literature or application in COMSOL gallery for the same.


Prasanna

Hi @Henrik Sönnerlind, Thanks for the reply. I missed the reply as was away. The idea was that I should be able to use frequency sweep for system identification and then use time-dependenrt study for validating the model in COMSOL and MATLAB. I could not get the idea "However, if you know the amplitude and phase from a frequency domain soution, and want to compare those results with a computed time history, you can just plot the function amplitude * cos(omega * t + phase)". **Use Case Example:** Step1 - Define an input the system and excite by sweeping through the frequency range. Record the response (Amplitude and Phase). Step2 - Use the response (Amplitude and Phase) data for system identification. Step3 - The identified model is in Laplace domain which can be simulated in MATLAB. Step4 - Define an arbitrary **multisine input** signal. Use this signal in both MATLAB to get simulated response and COMSOL time-dependent study to get the model response. Step5 - Compare the MATLAB and COMSOL response. The issue I was facing is that the response (Amplitude and Phase) in frequency study is **solid.uAmpZ/solid.uPhaseZ - Stands for displacement amplitude (m) and phase.** where as the response in time-dependent study is simply **w**. This makes it difficult to match the response. Hope this is clear. It would be nice if you could point to some literature or application in COMSOL gallery for the same. ----------- Prasanna

Henrik Sönnerlind COMSOL Employee

Please login with a confirmed email address before reporting spam

Posted: 8 months ago Aug 21, 2023, 9:59 a.m. EDT

As I understand it, you want to produce a low-order approximation of your system ('surrogate model') by using system identification techniques on the frequency response results.

What is not clear to me when you are planning to do a time domain verification analysis is how to deal with the initial conditions. If you are interested in the steady state response to the multi-sine input, then you will have to run a very long time domain analysis. The time step must be short enough to represent the highest frequency in your input. At the same time, you must run a large number of the longest period cycles to reach a steady state. (The number of cycles depends on the damping.) Such an analysis is better performed in frequency domain.

If, on the other hand, you are interested in the start-up transient with suitable initial conditions, then it is another story.

Which type of results is it that you are retrieving from the MATLAB simulation?

-------------------
Henrik Sönnerlind
COMSOL
As I understand it, you want to produce a low-order approximation of your system ('surrogate model') by using system identification techniques on the frequency response results. What is not clear to me when you are planning to do a time domain verification analysis is how to deal with the initial conditions. If you are interested in the steady state response to the multi-sine input, then you will have to run a very long time domain analysis. The time step must be short enough to represent the highest frequency in your input. At the same time, you must run a large number of the longest period cycles to reach a steady state. (The number of cycles depends on the damping.) Such an analysis is better performed in frequency domain. If, on the other hand, you are interested in the start-up transient with suitable initial conditions, then it is another story. Which type of results is it that you are retrieving from the MATLAB simulation?

Prasanna Kumar Routray

Please login with a confirmed email address before reporting spam

Posted: 8 months ago Aug 21, 2023, 7:40 p.m. EDT

Hi @Henrik Sönnerlind, thanks for the quick reply.

Yes, a low-order approximation is what I intend to use for analysis.

The matlab will run with lsim command which eventually leads to transieent and steadt state response unless the damping is very less where we see only transient response for time-varying load.

However, I'm trying to run multisine with a time step of 1ms.

To answer your question, I would say its a combination of both transient and steady-state but with a given damping value and behaviour of input(excitation) signal, I see mostly steady-state behaviour.


Prasanna

Hi @Henrik Sönnerlind, thanks for the quick reply. Yes, a low-order approximation is what I intend to use for analysis. The matlab will run with lsim command which eventually leads to transieent and steadt state response unless the damping is very less where we see only transient response for time-varying load. However, I'm trying to run multisine with a time step of 1ms. To answer your question, I would say its a combination of both transient and steady-state but with a given damping value and behaviour of input(excitation) signal, I see mostly steady-state behaviour. ------------------------------ Prasanna

Henrik Sönnerlind COMSOL Employee

Please login with a confirmed email address before reporting spam

Posted: 8 months ago Aug 23, 2023, 10:07 a.m. EDT

If it is a true transient response, then you must export the time history of some result quantity from Matlab, and import it as an interpolation function in COMSOL. Then, you plot the interpolation function in the same graph as the COMSOL result in order to compare them.

-------------------
Henrik Sönnerlind
COMSOL
If it is a true transient response, then you must export the time history of some result quantity from Matlab, and import it as an interpolation function in COMSOL. Then, you plot the interpolation function in the same graph as the COMSOL result in order to compare them.

Prasanna Kumar Routray

Please login with a confirmed email address before reporting spam

Posted: 8 months ago Aug 24, 2023, 12:41 a.m. EDT

Thank you @Henrik Sönnerlind!

I will give a try and now things make more sense.

Regards,


Prasanna

Thank you @Henrik Sönnerlind! I will give a try and now things make more sense. Regards, -------------------------- Prasanna

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.