24小时热门版块排行榜    

查看: 2022  |  回复: 4
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

愤怒的小包子

新虫 (初入文坛)

[求助] 如何用matlab通过编程求解油膜压力? 已有1人参与

没有找到相关教材,买的matlab一本通都是基本程序和操作,请问怎么学习这方面的东西呢?能不能请大家点拨一下

发自小木虫IOS客户端
回复此楼

» 收录本帖的淘帖专辑推荐

程序

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

FMStation

至尊木虫 (知名作家)

【答案】应助回帖

http://www.chinaslipform.com/tir ... ws/200922592433.htm
径向滑动轴承油膜压力分析
5楼2016-06-22 06:43:32
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 5 个回答

cguoguo2014

银虫 (正式写手)

2楼2015-10-31 10:56:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

FMStation

至尊木虫 (知名作家)

【答案】应助回帖

http://www.mathworks.com/help/pd ... n-a-thin-plate.html

==
Problem Parameters
==
k = 400; % thermal conductivity of copper, W/(m-K)
rho = 8960; % density of copper, kg/m^3
specificHeat = 386; % specific heat of copper, J/(kg-K)
thick = .01; % plate thickness in meters
stefanBoltz = 5.670373e-8; % Stefan-Boltzmann constant, W/(m^2-K^4)
hCoeff = 1; % Convection coefficient, W/(m^2-K)
% The ambient temperature is assumed to be 300 degrees-Kelvin.
ta = 300;
emiss = .5; % emissivity of the plate surface

==
Create the PDE Model with a single dependent variable
==
numberOfPDE = 1;
pdem = createpde(numberOfPDE);

==
Geometry
==
width = 1;
height = 1;
% define  the square by giving the 4 x-locations followed by the 4
% y-locations of the corners.
gdm = [3 4 0 width width 0 0 0 height height]';
g = decsg(gdm, 'S1', ('S1')');

% Convert the DECSG geometry into a geometry object
% on doing so it is appended to the PDEModel
geometryFromEdges(pdem,g);

% Plot the geometry and display the edge labels for use in the boundary
% condition definition.
figure;
pdegplot(pdem,'edgeLabels','on');
axis([-.1 1.1 -.1 1.1]);
title 'Geometry With Edge Labels Displayed';


==
Definition of PDE Coefficients
==
c = thick*k;
% Because of the radiation boundary condition, the "a" coefficient
% is a function of the temperature, u. It is defined as a MATLAB
% expression so it can be evaluated for different values of u
% during the analysis.
a = @(~,state) 2*hCoeff + 2*emiss*stefanBoltz*state.u.^3;
f = 2*hCoeff*ta + 2*emiss*stefanBoltz*ta^4;
d = thick*rho*specificHeat;
specifyCoefficients(pdem,'m',0,'d',0,'c',c,'a',a,'f',f);

==
Boundary Conditions
==
applyBoundaryCondition(pdem,'Edge',1,'u',1000);

==
Initial guess
==
setInitialConditions(pdem,0);

==
Mesh
==
hmax = .1; % element size
msh = generateMesh(pdem,'Hmax',hmax);
figure;
pdeplot(pdem);
axis equal
title 'Plate With Triangular Element Mesh'
xlabel 'X-coordinate, meters'
ylabel 'Y-coordinate, meters'

==
Steady State Solution
==
R = solvepde(pdem);
u = R.NodalSolution;
figure;
pdeplot(pdem,'xydata',u,'contour','on','colormap','jet');
title 'Temperature In The Plate, Steady State Solution'
xlabel 'X-coordinate, meters'
ylabel 'Y-coordinate, meters'
axis equal
p=msh.Nodes;
plotAlongY(p,u,0);
title 'Temperature As a Function of the Y-Coordinate'
xlabel 'X-coordinate, meters'
ylabel 'Temperature, degrees-Kelvin'
fprintf('Temperature at the top edge of the plate = %5.1f degrees-K\n', ...
  u(4));

==
Transient Solution
==
specifyCoefficients(pdem,'m',0,'d',d,'c',c,'a',a,'f',f);
endTime = 5000;
tlist = 0:50:endTime;
numNodes = size(p,2);
% Set the initial temperature of all nodes to ambient, 300 K
u0(1:numNodes) = 300;
% Find all nodes along the bottom edge and set their initial temperature
% to the value of the constant BC, 1000 K
nodesY0 = abs(p(2,) < 1.0e-5;
u0(nodesY0) = 1000;
ic = @(~) u0;
setInitialConditions(pdem,ic);
% Set solver options
pdem.SolverOptions.RelativeTolerance = 1.0e-3;
pdem.SolverOptions.AbsoluteTolerance = 1.0e-4;
% |solvepde| automatically picks the parabolic solver to obtain the solution.
R = solvepde(pdem,tlist);
u = R.NodalSolution;
figure;
plot(tlist,u(3, );
grid on
title 'Temperature Along the Top Edge of the Plate as a Function of Time'
xlabel 'Time, seconds'
ylabel 'Temperature, degrees-Kelvin'
%
figure;
pdeplot(pdem,'xydata',u(:,end),'contour','on','colormap','jet');
title(sprintf('Temperature In The Plate, Transient Solution( %d seconds)\n', ...
  tlist(1,end)));
xlabel 'X-coordinate, meters'
ylabel 'Y-coordinate, meters'
axis equal;
%
fprintf('\nTemperature at the top edge of the plate(t = %5.1f secs) = %5.1f degrees-K\n', ...
  tlist(1,end), u(4,end));
3楼2016-06-22 06:30:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

FMStation

至尊木虫 (知名作家)

【答案】应助回帖

createpde is new in R2015a in the PDE Toolbox.
4楼2016-06-22 06:42:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见