フィルターのクリア

How to find nondimensionalize form with MATLAB?

19 ビュー (過去 30 日間)
Mehrdad Nasirshoaibi
Mehrdad Nasirshoaibi 2023 年 3 月 1 日
Hi all,
I am looking for a code that could give me the nondimensional form of the follwoing equation:
(rho*h)*diff(w,t,t) - h*(sigma_x*diff(w,x,x) + sigma_y*diff(w,y,y)) - (E*h/(2*(1-mu^2)))*((diff(w,x))^2*diff(w,x,x) + (diff(w,y))^2*diff(w,y,y)) - (E*h*mu/(2*(1-mu^2)))*((diff(w,x))^2*diff(w,y,y) + (diff(w,y))^2*diff(w,x,x)) - (E*h/(1+mu))*diff(w,x)*diff(w,y)*diff(w,x,y) == p;
Here is also the other form of the equation:
Thank you all in advance.
  2 件のコメント
John D'Errico
John D'Errico 2023 年 3 月 1 日
There would potentially be multiple non-dimensional forms for a complex problem. Typically that requires knowledge about the problem, and information about the units of the various variables. A computer will not automatically know that x might most likely have units of length, for example. Computers will not know that t likely has units of time. A computer code will not know what E, h, and rho are. So having only a differential equation is insufficient.
Mehrdad Nasirshoaibi
Mehrdad Nasirshoaibi 2023 年 4 月 2 日
Awesome

サインインしてコメントする。

採用された回答

Sandeep
Sandeep 2023 年 3 月 30 日
Hi Mehrdad Nasirshoaibi,
To obtain the non-dimensional form of the given equation, we need to introduce appropriate scaling factors L, H, and T for length, height, and time, respectively. We then non-dimensionalize the variables by dividing them by their respective scaling factors. Finally, we non-dimensionalize the equation by multiplying each term by appropriate powers of the scaling factors.
Note that the scaling factors you choose will depend on the specific problem you are trying to solve, and there may be multiple ways to non-dimensionalize the equation. You should also make sure to double-check the non-dimensionalization to ensure that it is mathematically correct.
A sample implementation of the same is given below:
% Define scaling factors
L = <some_length_scale_factor>;
H = <some_height_scale_factor>;
T = <some_time_scale_factor>;
% Non-dimensionalize variables
syms x y w t p;
x = x/L;
y = y/L;
w = w/H;
t = t/T;
p = p/(E*H/L^2);
% Non-dimensionalize equation
eq = (rho/H)*T^2 * diff(w,t,t) - (sigma_x/E)*(L/H)^2 * diff(w,x,x) - (sigma_y/E)*(L/H)^2 * diff(w,y,y) ...
- (1/(2*(1-mu^2))) * (1/(H/L)^2) * ((diff(w,x)/L)^2 * diff(w,x,x) + (diff(w,y)/L)^2 * diff(w,y,y)) ...
- (mu/(1-mu^2)) * (1/(H/L)^2) * ((diff(w,x)/L)^2 * diff(w,y,y) + (diff(w,y)/L)^2 * diff(w,x,x)) ...
- 1/(1+mu) * (1/(H/L)^2) * (diff(w,x)/L) * (diff(w,y)/L) * diff(w,x,y) == p;

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeNumeric Solvers についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by