% COMSOL Multiphysics Model M-file % Generated by COMSOL 3.5a (COMSOL 3.5.0.608, $Date: 2009/05/11 07:38:49 $) flclear xfem % COMSOL version clear vrsn vrsn.name = 'COMSOL 3.5'; vrsn.ext = 'a'; vrsn.major = 0; vrsn.build = 608; vrsn.rcs = '$Name: v35ap $'; vrsn.date = '$Date: 2009/05/11 07:38:49 $'; xfem.version = vrsn; % Geometry 2 g1=rect2('400e-6','1500e-6','base','center','pos',{'0','0'},'rot','0'); g5=rect2('400e-6','25e-6','base','corner','pos',{'-200e-6','725e-6'},'rot','0'); g6=rect2('400e-6','25e-6','base','corner','pos',{'-200e-6','-750e-6'},'rot','0'); g7=extrude(g5,'distance',[1e-6],'scale',[1;1],'displ',[0;0],'twist',[0],'face','none','wrkpln',[0 1 0;0 0 1;0 0 0]); g8=extrude(g6,'distance',[1e-6],'scale',[1;1],'displ',[0;0],'twist',[0],'face','none','wrkpln',[0 1 0;0 0 1;0 0 0]); g9=extrude(g1,'distance',[-10e-6],'scale',[1;1],'displ',[0;0],'twist',[0],'face','none','wrkpln',[0 1 0;0 0 1;0 0 0]); % Geometry 1 flclear fem % Analyzed geometry clear s s.objs={g7,g8,g9}; s.name={'EXT1','EXT2','EXT3'}; s.tags={'g7','g8','g9'}; fem.draw=struct('s',s); fem.geom=geomcsg(fem); xfem.fem{1}=fem; % Geometry 2 flclear fem % Geometry objects clear s s.objs={g1,g5,g6}; s.name={'R1','R2','R3'}; s.tags={'g1','g5','g6'}; fem.draw=struct('s',s); xfem.fem{2}=fem; % COMSOL Multiphysics Model M-file % Generated by COMSOL 3.5a (COMSOL 3.5.0.608, $Date: 2009/05/11 07:38:49 $) % Geometry 2 fem=xfem.fem{2}; % Geometry objects clear s s.objs={g1,g6,g5}; s.name={'R1','R3','R2'}; s.tags={'g1','g6','g5'}; fem.draw=struct('s',s); xfem.fem{2}=fem; % COMSOL Multiphysics Model M-file % Generated by COMSOL 3.5a (COMSOL 3.5.0.608, $Date: 2009/05/11 07:38:49 $) % Constants xfem.const = {}; % Geometry 2 fem=xfem.fem{2}; % Geometry objects clear s s.objs={g1,g6,g5}; s.name={'R1','R3','R2'}; s.tags={'g1','g6','g5'}; fem.draw=struct('s',s); xfem.fem{2}=fem; % COMSOL Multiphysics Model M-file % Generated by COMSOL 3.5a (COMSOL 3.5.0.608, $Date: 2009/05/11 07:38:49 $) % Geometry 2 g2=rect2(4.0E-4,6.0E-4,'base','corner','pos',[-2.0E-4,-3.0E-4]); g3=extrude(g2,'distance',[50e-6],'scale',[1;1],'displ',[0;0],'twist',[0],'face','none','wrkpln',[0 1 0;0 0 1;0 0 0]); % Geometry 1 % Geometry 2 g4=extrude(g2,'distance',[100e-6],'scale',[1;1],'displ',[0;0],'twist',[0],'face','none','wrkpln',[0 1 0;0 0 1;0 0 0]); % Geometry 1 fem=xfem.fem{1}; % Analyzed geometry clear s s.objs={g9,g7,g8,g4}; s.name={'EXT3','EXT1','EXT2','EXT4'}; s.tags={'g9','g7','g8','g4'}; fem.draw=struct('s',s); fem.geom=geomcsg(fem); xfem.fem{1}=fem; % Geometry 2 fem=xfem.fem{2}; % Geometry objects clear s s.objs={g1,g6,g5,g2}; s.name={'R1','R3','R2','R4'}; s.tags={'g1','g6','g5','g2'}; fem.draw=struct('s',s); xfem.fem{2}=fem; % COMSOL Multiphysics Model M-file % Generated by COMSOL 3.5a (COMSOL 3.5.0.608, $Date: 2009/05/11 07:38:49 $) % Geometry 2 fem=xfem.fem{2}; % Geometry objects clear s s.objs={g2,g1,g6,g5}; s.name={'R4','R1','R3','R2'}; s.tags={'g2','g1','g6','g5'}; fem.draw=struct('s',s); xfem.fem{2}=fem; % COMSOL Multiphysics Model M-file % Generated by COMSOL 3.5a (COMSOL 3.5.0.608, $Date: 2009/05/11 07:38:49 $) % Geometry 2 fem=xfem.fem{2}; % Geometry objects clear s s.objs={g2,g1,g6,g5}; s.name={'R4','R1','R3','R2'}; s.tags={'g2','g1','g6','g5'}; fem.draw=struct('s',s); xfem.fem{2}=fem; % COMSOL Multiphysics Model M-file % Generated by COMSOL 3.5a (COMSOL 3.5.0.608, $Date: 2009/05/11 07:38:49 $) % Geometry 2 fem=xfem.fem{2}; % Geometry objects clear s s.objs={g2,g1,g6,g5}; s.name={'R4','R1','R3','R2'}; s.tags={'g2','g1','g6','g5'}; fem.draw=struct('s',s); xfem.fem{2}=fem; % COMSOL Multiphysics Model M-file % Generated by COMSOL 3.5a (COMSOL 3.5.0.608, $Date: 2009/05/11 07:38:49 $) % Geometry 2 fem=xfem.fem{2}; % Geometry objects clear s s.objs={g2,g1,g6,g5}; s.name={'R4','R1','R3','R2'}; s.tags={'g2','g1','g6','g5'}; fem.draw=struct('s',s); xfem.fem{2}=fem; % COMSOL Multiphysics Model M-file % Generated by COMSOL 3.5a (COMSOL 3.5.0.608, $Date: 2009/05/11 07:38:49 $) % Geometry 2 fem=xfem.fem{2}; % Geometry objects clear s s.objs={g2,g1,g6,g5}; s.name={'R4','R1','R3','R2'}; s.tags={'g2','g1','g6','g5'}; fem.draw=struct('s',s); xfem.fem{2}=fem; % COMSOL Multiphysics Model M-file % Generated by COMSOL 3.5a (COMSOL 3.5.0.608, $Date: 2009/05/11 07:38:49 $) % Geometry 2 fem=xfem.fem{2}; % Geometry objects clear s s.objs={g2,g1,g6,g5}; s.name={'R4','R1','R3','R2'}; s.tags={'g2','g1','g6','g5'}; fem.draw=struct('s',s); xfem.fem{2}=fem; % COMSOL Multiphysics Model M-file % Generated by COMSOL 3.5a (COMSOL 3.5.0.608, $Date: 2009/05/11 07:38:49 $) % Geometry 2 fem=xfem.fem{2}; % Geometry objects clear s s.objs={g2,g1,g6,g5}; s.name={'R4','R1','R3','R2'}; s.tags={'g2','g1','g6','g5'}; fem.draw=struct('s',s); xfem.fem{2}=fem; % (Default values are not included) fem=xfem.fem{1}; % Application mode 1 clear appl appl.mode.class = 'PiezoSolid3'; appl.module = 'SME'; appl.shape = {'shlag(2,''lm1'')','shlag(2,''lm2'')','shlag(2,''lm3'')','shlag(2,''lm4'')','shlag(2,''u'')','shlag(2,''v'')','shlag(2,''w'')','shlag(2,''V'')'}; appl.gporder = {30,10,4}; appl.cporder = 2; appl.assignsuffix = '_smpz3d'; clear prop prop.analysis='time'; prop.largedef='on'; clear weakconstr weakconstr.value = 'on'; weakconstr.dim = {'lm1','lm2','lm3','lm4'}; prop.weakconstr = weakconstr; prop.constrtype='non-ideal'; appl.prop = prop; clear pnt pnt.wcshape = [1;2;3;4]; pnt.ind = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1]; appl.pnt = pnt; clear edg edg.wcshape = [1;2;3;4]; edg.ind = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, ... 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1]; appl.edg = edg; clear bnd bnd.electrictype = {'nD0','V0','cont','V'}; bnd.wcshape = [1;2;3;4]; bnd.V0 = {0,0,0,'4000*sin(1000000*t)'}; bnd.wcgporder = 2; bnd.ind = [1,1,1,1,2,3,1,4,1,1,1,1,1,1,1,1,4,3,1,1,2,1,1,1,1]; appl.bnd = bnd; clear equ equ.nu = {0.33,'mat3_nu',0.33,'mat1_nu'}; equ.gporder = 3; equ.rho = {7500,'mat3_rho',7500,'mat1_rho'}; equ.wcshape = [1;2;3;4]; equ.shape = [5;6;7;8]; equ.wcgporder = 3; equ.E = {2.0e11,'mat3_E',2.0e11,'mat1_E'}; equ.sigma = {5.99e7,'mat3_sigma',5.99e7,'mat1_sigma'}; equ.usage = {1,1,0,1}; equ.ind = [1,2,3,4]; appl.equ = equ; appl.var = {'freq','1e6', ... 'Qtot','Qes_tot_smpz3d'}; fem.appl{1} = appl; % Application mode 2 clear appl appl.mode.class = 'GeneralLaminarFlow'; appl.dim = {'u2','v2','w2','p2','phi','psi','nxw','nyw','nzw'}; appl.module = 'MEMS'; appl.shape = {'shlag(2,''lm5'')','shlag(2,''lm6'')','shlag(2,''lm7'')','shlag(1,''lm8'')','shlag(2,''u2'')','shlag(2,''v2'')','shlag(2,''w2'')','shlag(1,''p2'')'}; appl.gporder = {10,4,2}; appl.cporder = {2,1}; appl.assignsuffix = '_mmglf'; clear prop prop.cornersmoothing='On'; clear weakconstr weakconstr.value = 'on'; weakconstr.dim = {'lm5','lm6','lm7','lm8','lm9','lm10'}; prop.weakconstr = weakconstr; prop.constrtype='non-ideal'; appl.prop = prop; clear bnd bnd.type = {'int','inlet','walltype','walltype','outlet'}; bnd.ww = {0,0,0,'w_t_smpz3d',0}; bnd.wcshape = [1;2;3;4]; bnd.vw = {0,0,0,'v_t_smpz3d',0}; bnd.U0in = {1,1e-8,1,1,1}; bnd.wcgporder = 1; bnd.walltype = {'noslip','noslip','noslip','lwall','noslip'}; bnd.uw = {0,0,0,'u_t_smpz3d',0}; bnd.ind = [1,1,1,1,1,1,1,1,1,2,3,4,3,3,1,1,1,1,1,1,1,1,1,5,1]; appl.bnd = bnd; clear equ equ.gporder = {{2;2;2;3}}; equ.cporder = {{1;1;1;2}}; equ.shape = [5;6;7;8]; equ.usage = {0,1}; equ.ind = [1,1,2,1]; appl.equ = equ; fem.appl{2} = appl; fem.frame = {'ref'}; fem.border = 1; clear units; units.basesystem = 'SI'; fem.units = units; xfem.fem{1} = fem; fem=xfem.fem{2}; fem.sdim = {'x','y'}; fem.border = 1; clear units; units.basesystem = 'SI'; fem.units = units; xfem.fem{2} = fem; % Library materials clear lib lib.mat{1}.name='Cu'; lib.mat{1}.varname='mat1'; lib.mat{1}.variables.nu='0.34'; lib.mat{1}.variables.E='120e9[Pa]'; lib.mat{1}.variables.sigma='58.1e6[S/m]'; lib.mat{1}.variables.alpha='16.5e-6[1/K]'; lib.mat{1}.variables.C='384[J/(kg*K)]'; lib.mat{1}.variables.rho='8960[kg/m^3]'; lib.mat{1}.variables.k='401[W/(m*K)]'; lib.mat{2}.name='Cu_1'; lib.mat{2}.varname='mat2'; lib.mat{2}.variables.nu='0.34'; lib.mat{2}.variables.E='120e9[Pa]'; lib.mat{2}.variables.sigma='58.1e6[S/m]'; lib.mat{2}.variables.alpha='16.5e-6[1/K]'; lib.mat{2}.variables.C='384[J/(kg*K)]'; lib.mat{2}.variables.rho='8960[kg/m^3]'; lib.mat{2}.variables.k='401[W/(m*K)]'; lib.mat{3}.name='Cu_2'; lib.mat{3}.varname='mat3'; lib.mat{3}.variables.nu='0.34'; lib.mat{3}.variables.E='120e9[Pa]'; lib.mat{3}.variables.sigma='58.1e6[S/m]'; lib.mat{3}.variables.alpha='16.5e-6[1/K]'; lib.mat{3}.variables.C='384[J/(kg*K)]'; lib.mat{3}.variables.rho='8960[kg/m^3]'; lib.mat{3}.variables.k='401[W/(m*K)]'; xfem.lib = lib; % ODE Settings clear ode clear units; units.basesystem = 'SI'; ode.units = units; xfem.ode=ode; % Multiphysics xfem=multiphysics(xfem); return; %%%%%%%%%%% END OF HISTORY %%%%%%%%%%%%%%%%%%%%%%% % % % M-file below is used when resetting the model. % % % %%%%%%%%%%%%%% START OF RESET HISTORY %%%%%%%%%%%%%%%%%%%% % COMSOL Multiphysics Model M-file % Generated by COMSOL 3.5a (COMSOL 3.5.0.608, $Date: 2009/05/11 07:38:49 $) flclear xfem % COMSOL version clear vrsn vrsn.name = 'COMSOL 3.5'; vrsn.ext = 'a'; vrsn.major = 0; vrsn.build = 608; vrsn.rcs = '$Name: v35ap $'; vrsn.date = '$Date: 2009/05/11 07:38:49 $'; xfem.version = vrsn; % Geometry 2 g1=rect2('400e-6','1500e-6','base','center','pos',{'0','0'},'rot','0'); g5=rect2('400e-6','25e-6','base','corner','pos',{'-200e-6','725e-6'},'rot','0'); g6=rect2('400e-6','25e-6','base','corner','pos',{'-200e-6','-750e-6'},'rot','0'); g7=extrude(g5,'distance',[1e-6],'scale',[1;1],'displ',[0;0],'twist',[0],'face','none','wrkpln',[0 1 0;0 0 1;0 0 0]); g8=extrude(g6,'distance',[1e-6],'scale',[1;1],'displ',[0;0],'twist',[0],'face','none','wrkpln',[0 1 0;0 0 1;0 0 0]); g9=extrude(g1,'distance',[-10e-6],'scale',[1;1],'displ',[0;0],'twist',[0],'face','none','wrkpln',[0 1 0;0 0 1;0 0 0]); % Geometry 1 flclear fem % Analyzed geometry clear s s.objs={g7,g8,g9}; s.name={'EXT1','EXT2','EXT3'}; s.tags={'g7','g8','g9'}; fem.draw=struct('s',s); fem.geom=geomcsg(fem); xfem.fem{1}=fem; % Geometry 2 flclear fem % Geometry objects clear s s.objs={g1,g5,g6}; s.name={'R1','R2','R3'}; s.tags={'g1','g5','g6'}; fem.draw=struct('s',s); xfem.fem{2}=fem; % COMSOL Multiphysics Model M-file % Generated by COMSOL 3.5a (COMSOL 3.5.0.608, $Date: 2009/05/11 07:38:49 $) % Geometry 2 fem=xfem.fem{2}; % Geometry objects clear s s.objs={g1,g6,g5}; s.name={'R1','R3','R2'}; s.tags={'g1','g6','g5'}; fem.draw=struct('s',s); xfem.fem{2}=fem; % COMSOL Multiphysics Model M-file % Generated by COMSOL 3.5a (COMSOL 3.5.0.608, $Date: 2009/05/11 07:38:49 $) % Constants xfem.const = {}; % Geometry 2 fem=xfem.fem{2}; % Geometry objects clear s s.objs={g1,g6,g5}; s.name={'R1','R3','R2'}; s.tags={'g1','g6','g5'}; fem.draw=struct('s',s); xfem.fem{2}=fem; % COMSOL Multiphysics Model M-file % Generated by COMSOL 3.5a (COMSOL 3.5.0.608, $Date: 2009/05/11 07:38:49 $) % Geometry 2 g2=rect2(4.0E-4,6.0E-4,'base','corner','pos',[-2.0E-4,-3.0E-4]); g3=extrude(g2,'distance',[50e-6],'scale',[1;1],'displ',[0;0],'twist',[0],'face','none','wrkpln',[0 1 0;0 0 1;0 0 0]); % Geometry 1 % Geometry 2 g4=extrude(g2,'distance',[100e-6],'scale',[1;1],'displ',[0;0],'twist',[0],'face','none','wrkpln',[0 1 0;0 0 1;0 0 0]); % Geometry 1 fem=xfem.fem{1}; % Analyzed geometry clear s s.objs={g9,g7,g8,g4}; s.name={'EXT3','EXT1','EXT2','EXT4'}; s.tags={'g9','g7','g8','g4'}; fem.draw=struct('s',s); fem.geom=geomcsg(fem); xfem.fem{1}=fem; % Geometry 2 fem=xfem.fem{2}; % Geometry objects clear s s.objs={g1,g6,g5,g2}; s.name={'R1','R3','R2','R4'}; s.tags={'g1','g6','g5','g2'}; fem.draw=struct('s',s); xfem.fem{2}=fem; % COMSOL Multiphysics Model M-file % Generated by COMSOL 3.5a (COMSOL 3.5.0.608, $Date: 2009/05/11 07:38:49 $) % Geometry 2 fem=xfem.fem{2}; % Geometry objects clear s s.objs={g2,g1,g6,g5}; s.name={'R4','R1','R3','R2'}; s.tags={'g2','g1','g6','g5'}; fem.draw=struct('s',s); xfem.fem{2}=fem; % COMSOL Multiphysics Model M-file % Generated by COMSOL 3.5a (COMSOL 3.5.0.608, $Date: 2009/05/11 07:38:49 $) % Geometry 2 fem=xfem.fem{2}; % Geometry objects clear s s.objs={g2,g1,g6,g5}; s.name={'R4','R1','R3','R2'}; s.tags={'g2','g1','g6','g5'}; fem.draw=struct('s',s); xfem.fem{2}=fem; % COMSOL Multiphysics Model M-file % Generated by COMSOL 3.5a (COMSOL 3.5.0.608, $Date: 2009/05/11 07:38:49 $) % Geometry 2 fem=xfem.fem{2}; % Geometry objects clear s s.objs={g2,g1,g6,g5}; s.name={'R4','R1','R3','R2'}; s.tags={'g2','g1','g6','g5'}; fem.draw=struct('s',s); xfem.fem{2}=fem; % COMSOL Multiphysics Model M-file % Generated by COMSOL 3.5a (COMSOL 3.5.0.608, $Date: 2009/05/11 07:38:49 $) % Geometry 2 fem=xfem.fem{2}; % Geometry objects clear s s.objs={g2,g1,g6,g5}; s.name={'R4','R1','R3','R2'}; s.tags={'g2','g1','g6','g5'}; fem.draw=struct('s',s); xfem.fem{2}=fem; % COMSOL Multiphysics Model M-file % Generated by COMSOL 3.5a (COMSOL 3.5.0.608, $Date: 2009/05/11 07:38:49 $) % Geometry 2 fem=xfem.fem{2}; % Geometry objects clear s s.objs={g2,g1,g6,g5}; s.name={'R4','R1','R3','R2'}; s.tags={'g2','g1','g6','g5'}; fem.draw=struct('s',s); xfem.fem{2}=fem; % COMSOL Multiphysics Model M-file % Generated by COMSOL 3.5a (COMSOL 3.5.0.608, $Date: 2009/05/11 07:38:49 $) % Geometry 2 fem=xfem.fem{2}; % Geometry objects clear s s.objs={g2,g1,g6,g5}; s.name={'R4','R1','R3','R2'}; s.tags={'g2','g1','g6','g5'}; fem.draw=struct('s',s); xfem.fem{2}=fem; % COMSOL Multiphysics Model M-file % Generated by COMSOL 3.5a (COMSOL 3.5.0.608, $Date: 2009/05/11 07:38:49 $) % Geometry 2 fem=xfem.fem{2}; % Geometry objects clear s s.objs={g2,g1,g6,g5}; s.name={'R4','R1','R3','R2'}; s.tags={'g2','g1','g6','g5'}; fem.draw=struct('s',s); xfem.fem{2}=fem;