GFY

65 Reputation

4 Badges

1 years, 35 days

MaplePrimes Activity


These are replies submitted by GFY

@acer Thank you for your insightful response! I’ve gained a deeper understanding of why referencing issues occur with convertsys and learned about the advanced variable handling capabilities of the indets command, which is truly exciting. Your explanation of convertsys applications has significantly enhanced my grasp of this command—thank you again for your enthusiastic help! To further master this technique, I’d like to know how to distinguish whether an issue stems from local versus global variables. Are variables displayed in command outputs always considered local variables?

@Preben Alsholm 
I’m truly delighted to see your Maple program on synergistic analysis — it's absolutely brilliant. I’ve learned a lot from it, especially how to approach the solution process. Your code is concise, elegant, and beautifully written. Thank you so much for sharing it.

However, I’m still unsure how to properly choose the linear auxiliary function and convergence-control parameter when solving periodic functions. May I also ask if you happen to have any other programs related to synergistic analysis for solving nonlinear vibration problems?

@acer 

Thank you very much for your reply — it resolved something that had been confusing me for quite some time. I was caught up with work recently and forgot to respond, my sincere apologies!

From your code example, I learned that if I want both conditions to be numeric, I need to group them together using parentheses in order to apply negation to both at the same time. I also realized that the not operator only negates the first part unless parentheses are used.

Thank you again for your helpful response — much appreciated!

@acer 

I have a question about the second conditional approach. As mentioned earlier, the command I wrote was intended to delay evaluation when i is not numeric but ii is numeric.
if not i:: numeric and  ii::numeric then  return 'procname'(args); end if:
However, after testing the code, I found that it seems to behave the same as before — it does not actually delay evaluation as expected.
Additionally, I also tried modifying the command based on the previous logic, but that still didn't achieve the effect of delaying the evaluation. This has left me a bit confused, and I’m not sure why it didn’t work as intended.

if not i::numeric and not ii::numeric  then  return 'procname'(args); end if:

@mmcdara 

Thank you so much for providing this method — it's truly impressive how it allows all four curves to be plotted simultaneously. It's a clever and elegant approach, and I really appreciate it. Through the code you shared, I also learned a lot about Maple’s plotting commands — it's genuinely excellent and educational.

At the same time, I’d like to highlight the explanation given by the other expert above regarding the cause of this issue. I sincerely recommend taking a look at it as well — it really helped clarify the confusion.

I'm genuinely happy and grateful to receive such helpful replies. It feels incredibly warm and encouraging to be part of such a supportive community. Once again, thank you very much for your detailed and thoughtful response!

@acer 
Thank you very much for your guidance — it truly helped me understand the reason why my plot command wasn't working as expected! Before reading your reply, I was quite confused and had spent a long time checking my code, thinking there was no issue. Only after seeing your explanation did I realize that the procedure was first performing symbolic operations (including sorting) before the numeric values were substituted for plotting.

I'm also very grateful for the three methods you provided along with the clear explanations. They were incredibly helpful! I personally found the first two approaches to be particularly effective and more intuitive for achieving accurate plotting results.

Once again, thank you sincerely for taking the time to provide such a detailed and thoughtful response. It truly resolved my confusion!

@mmcdara 
In my code, I defined a function kk. When I substitute specific numerical values, for example kk(3, 300), the first component of the result is clearly 1.3903, which is a real number.

However, when I try to plot the function using the command:

plot(kk(3, m)[1], m = 200 .. 600)

the resulting plot is inconsistent with the expected value from the direct substitution. In particular, the y-axis values in the plot start from around 3.1, which is quite different from the 1.3903 I obtained earlier. The plotted curve doesn’t reflect the correct function values.

The same inconsistency happens when I try to create a 3D plot.

This discrepancy between direct evaluation and plotting is very confusing. I would appreciate any insights into why this is happening and how to resolve it.

@acer 

Thank you very much for your reply. However, I just tried this method, and the exported image still has a resolution of only 96 dpi, so it doesn’t seem to be a viable solution.

@mmcdara 
 

Your response is absolutely brilliant! Previously, I considered directly using the small variation at the upper endpoint to determine whether the vibration had reached a steady state. However, as you rightly pointed out, the vibration frequency may consist of multiple components, making the variation at the upper end relatively large and unreliable for identifying whether the system has entered a steady state. Using the Fourier transform is simply an excellent idea—something I had not thought of at all. I sincerely appreciate your suggestion.

That said, I’m still having some difficulty accurately identifying the steady-state region and determining the corresponding time based on this method. I gave it a try yesterday, but I haven’t yet managed to implement a frequency sweep program that incorporates the Fourier transform. Once I complete it, I’ll definitely share the results with you!

@C_R 
 

Thank you very much for your suggestion.
In previous calculations, I had indeed considered using the form of Ω = f(t) for frequency sweep analysis. For the Duffing equation, this approach successfully yielded the desired results. However, in subsequent analyses, I began to question this method. Specifically, when performing continuous calculations with sufficiently small step sizes, I became unsure about what exactly the result from the previous step represents.
As for the "steady-state" I am referring to, it mainly describes a motion state in which periodic oscillations are formed. As mentioned earlier, this corresponds to a case where the frequency content remains unchanged after performing a Fourier transform.

The current numerical analysis, as shown in the code below, implements both forward and backward frequency sweep analyses.However, when compared with the analytical solution obtained through the method of multiple scales, the numerical solution shows better agreement in the case of backward frequency sweep. For the forward sweep, the jump phenomenon tends to appear earlier than expected, which remains a challenging issue in the current analysis—quite a headache, haha. I'm also looking into the alternative method mentioned above and trying to better understand it. Once again, thank you for your detailed explanation! saopin424.mw

@C_R 
Yes, I intend to perform a frequency sweep analysis with respect to Ω based on the two differential equations mentioned above. The goal is to obtain a dataset or plot that relates Ω to the steady-state amplitude, which can then be compared with the results derived from the previously conducted method of multiple scales. The frequency sweep will be carried out over the range of angular frequency Ω = 0 to 5, during which the excitation amplitude f can be treated as a constant.

The frequency sweep analysis I envision involves using the steady-state solution at the previous frequency as the initial condition for solving at the next frequency. This approach is expected to capture the hysteresis behavior, as the solutions obtained through forward and backward sweeps may differ. If there are any misunderstandings or inappropriate assumptions in this approach, I would greatly appreciate your guidance and clarification.

@acer You wrote this code is great, it has helped me a lot, thank you very much.

@Alfred_F 
Narrow down the range of analytical solutions and then solve them in turn? That sounds pretty good,

@Alfred_F 

Yes, you are quite right that the background is indeed to solve a similar frequency and mode problem between flexible three-link

@dharr 
This is to solve the frequency of a vibration system. Although the complex solution is also part of the frequency solution, it will not be considered. Thank you very much for your reply.

1 2 3 Page 1 of 3