pafor matlab,Comsol with Matlab 应用实例(4)

a4c26d1e5885305701be709a3d33442f.png

a4c26d1e5885305701be709a3d33442f.png

function out = model

%

% An

example about specify point loading on a structure.

%

CopyRight to mxio at Shanghai University.

% See more http://blog.sina.com.cn/mxio

%

%--------------------------------------------------------------------

import com.comsol.model.*

import com.comsol.model.util.*

model = ModelUtil.create('Model');

model.modelNode.create('mod1');

%--------------------------------------------------------------------

% Set

up for Points, position and load

num_point = 3;

%

Position

point_pos = [0.6, 0.05; 0.7, 0.05; 0.9, 0.05];

%

Load

point_load = {'1' '2' '0';'1' '2' '0';'1' '2' '0';};

%--------------------------------------------------------------------

%

Set-up for geometry

model.geom.create('geom1',

2);

model.geom('geom1').feature.create('r1',

'Rectangle');

model.geom('geom1').feature('r1').set('size',

{'1' '0.05'});

for pt_idx = 1:num_point

pt_name = ['pt', num2str(pt_idx)];

model.geom('geom1').feature.create(pt_name,

'Point');

model.geom('geom1').feature(pt_name).set('p',

point_pos(pt_idx,:));

model.geom('geom1').feature(pt_name).set('createselection',

true);

end

model.geom('geom1').run;

%--------------------------------------------------------------------

%

set-up for physics

model.physics.create('solid',

'SolidMechanics',

'geom1');

model.physics('solid').feature.create('fix1',

'Fixed', 1);

model.physics('solid').feature('fix1').selection.set([1]);

for pl_idx = 1:num_point

pl_name = ['pl',num2str(pl_idx)];

model.physics('solid').feature.create(pl_name,

'PointLoad', 0);

sl_pt_name = ['geom1_pt',num2str(pl_idx),'_pnt'];model.physics('solid').feature(pl_name).selection.named(sl_pt_name);

model.physics('solid').feature(pl_name).set('Fp',point_load(pl_idx,:));

end

model.physics('solid').feature('lemm1').set('E_mat',

1, 'userdef');

model.physics('solid').feature('lemm1').set('nu_mat',

1, 'userdef');

model.physics('solid').feature('lemm1').set('rho_mat',

1, 'userdef');

model.physics('solid').feature('lemm1').set('E',

1, '300e9[Pa]');

model.physics('solid').feature('lemm1').set('nu',

1, '0.222');

model.physics('solid').feature('lemm1').set('rho',

1, '3900');

%--------------------------------------------------------------------

%

set-up for mesh

model.mesh.create('mesh1',

'geom1');

%--------------------------------------------------------------------

model.study.create('std1');

model.study('std1').feature.create('stat',

'Stationary');

out = model;

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值