From e626bc603f648b099560b0cc6360f5c2fdb40b33 Mon Sep 17 00:00:00 2001 From: Louis Denis <louis.denis@student.uliege.be> Date: Wed, 18 May 2022 21:57:06 +0200 Subject: [PATCH] comb update --- srcs/longitudinalCombDevice.geo | 71 +++++++++++++++++---------------- 1 file changed, 36 insertions(+), 35 deletions(-) diff --git a/srcs/longitudinalCombDevice.geo b/srcs/longitudinalCombDevice.geo index 2e77d64..098922a 100644 --- a/srcs/longitudinalCombDevice.geo +++ b/srcs/longitudinalCombDevice.geo @@ -1,11 +1,12 @@ scale = 2e-6; // USE WITH MINIMUM 2 FINS, else use longitudinal_comb.geo -N_fins = 7; // number of fins on one side of the comb +N_fins = 3; // number of fins on one side of the comb // MAX 12 si on change ps la longueur // WARNING: when using more fins the pull-in voltage decreases n = 1; // FEM elements density +nBEM = 1; // BEM elements density // mechanical properties and boundary conditions SetNumber("Boundary Conditions/left/ux", 0.); // encastrement @@ -32,7 +33,7 @@ SetNumber("Boundary Conditions/electrode_2/BEM_domain_2/dirichlet", phi_2); SetNumber("Boundary Conditions/outside_2/BEM_domain_2/neumann", 0); SetNumber("Materials/BEM_domain_2/Epsilon", 8.8541878128e-12); // dielectric permittivity -h_tot = 20*scale; +h_tot = 30*scale; h_base = 0.4*scale; h_fin = 2.8*scale; h_space = 1*scale; // space between bout de l'electrode and base of the clamped beam of the comb @@ -41,7 +42,7 @@ h_fin_elec = 2.4*scale; // length of the fins of the electrode, can be longer th //l_bord = 10*scale; //l_tot = 34.4*scale; -l_tot = 64*scale; +l_tot = 40*scale; l_fin = 0.8*scale; l_space = 0.8*scale; t_electrode = 1*scale; // width of one electrode @@ -52,14 +53,14 @@ l_bord = (l_tot - l_fin - (N_fins-1)*l_periodic)/2; unit_l = 0.2*scale; // reference for the transfinite curves // définition des points du contour -Point(1) = {0, -h_base/2, 0, 0.2*scale}; -Point(2) = {0, -h_tot/2, 0, 0.2*scale}; -Point(3) = {l_tot, -h_tot/2, 0, 0.2*scale}; -Point(4) = {l_tot, -h_base/2, 0, 0.2*scale}; -Point(5) = {l_tot, h_base/2, 0, 0.2*scale}; -Point(6) = {l_tot, h_tot/2, 0, 0.2*scale}; -Point(7) = {0, h_tot/2, 0, 0.2*scale}; -Point(8) = {0, h_base/2, 0, 0.2*scale}; +Point(1) = {0, -h_base/2, 0, nBEM*scale}; +Point(2) = {0, -h_tot/2, 0, nBEM*scale}; +Point(3) = {l_tot, -h_tot/2, 0, nBEM*scale}; +Point(4) = {l_tot, -h_base/2, 0, nBEM*scale}; +Point(5) = {l_tot, h_base/2, 0, nBEM*scale}; +Point(6) = {l_tot, h_tot/2, 0, nBEM*scale}; +Point(7) = {0, h_tot/2, 0, nBEM*scale}; +Point(8) = {0, h_base/2, 0, nBEM*scale}; // définition des lignes du contour Line(1) = {1, 2}; Line(2) = {2, 3}; @@ -196,21 +197,21 @@ Physical Curve("BEM_FEM_boundary", 4) = {offsetl1:offsetl1+4*N_fins, offsetl2:of x0_e = l_bord - l_space - t_electrode; // pour faciliter le bazar y0_e = h_base/2 + h_space; offsetp3 = offsetp2 + 4*N_fins; -Point(offsetp3 + 1) = {l_tot - x0_e - t_electrode, -y0_e - h_fin_elec, 0, 0.2*scale}; -Point(offsetp3 + 2) = {l_tot - x0_e - t_electrode, -y0_e, 0, 0.2*scale}; -Point(offsetp3 + 3) = {l_tot - x0_e, -y0_e, 0, 0.2*scale}; -Point(offsetp3 + 4) = {l_tot - x0_e, -y0_e - h_fin_elec - t_electrode, 0, 0.2*scale}; -Point(offsetp3 + 5) = {x0_e, -y0_e - h_fin_elec - t_electrode, 0, 0.2*scale}; -Point(offsetp3 + 6) = {x0_e, -y0_e, 0, 0.2*scale}; -Point(offsetp3 + 7) = {x0_e + t_electrode, -y0_e, 0, 0.2*scale}; -Point(offsetp3 + 8) = {x0_e + t_electrode, -y0_e - h_fin_elec, 0, 0.2*scale}; +Point(offsetp3 + 1) = {l_tot - x0_e - t_electrode, -y0_e - h_fin_elec, 0, nBEM*0.2*scale}; +Point(offsetp3 + 2) = {l_tot - x0_e - t_electrode, -y0_e, 0, nBEM*0.2*scale}; +Point(offsetp3 + 3) = {l_tot - x0_e, -y0_e, 0, nBEM*0.2*scale}; +Point(offsetp3 + 4) = {l_tot - x0_e, -y0_e - h_fin_elec - t_electrode, 0, nBEM*0.2*scale}; +Point(offsetp3 + 5) = {x0_e, -y0_e - h_fin_elec - t_electrode, 0, nBEM*0.2*scale}; +Point(offsetp3 + 6) = {x0_e, -y0_e, 0, nBEM*0.2*scale}; +Point(offsetp3 + 7) = {x0_e + t_electrode, -y0_e, 0, nBEM*0.2*scale}; +Point(offsetp3 + 8) = {x0_e + t_electrode, -y0_e - h_fin_elec, 0, nBEM*0.2*scale}; offsetp4 = offsetp3 + 8; For i In {1:N_fins-1} - Point(offsetp4 + 4*i - 3) = {x0_e + l_periodic*i, -y0_e - h_fin_elec, 0, 0.2*scale}; - Point(offsetp4 + 4*i - 2) = {x0_e + l_periodic*i, -y0_e, 0, 0.2*scale}; - Point(offsetp4 + 4*i - 1) = {x0_e + l_periodic*i + t_electrode, -y0_e, 0, 0.2*scale}; - Point(offsetp4 + 4*i) = {x0_e + l_periodic*i + t_electrode, -y0_e - h_fin_elec, 0, 0.2*scale}; + Point(offsetp4 + 4*i - 3) = {x0_e + l_periodic*i, -y0_e - h_fin_elec, 0, nBEM*0.2*scale}; + Point(offsetp4 + 4*i - 2) = {x0_e + l_periodic*i, -y0_e, 0, nBEM*0.2*scale}; + Point(offsetp4 + 4*i - 1) = {x0_e + l_periodic*i + t_electrode, -y0_e, 0, nBEM*0.2*scale}; + Point(offsetp4 + 4*i) = {x0_e + l_periodic*i + t_electrode, -y0_e - h_fin_elec, 0, nBEM*0.2*scale}; EndFor // définition des lignes générales (indépendantes de N_fins) de la bottom electrode @@ -249,21 +250,21 @@ Physical Curve("outside_1", 8) = {1, 2, 3}; // définition des points de la top electrode offsetp5 = offsetp4 + 4*(N_fins-1); -Point(offsetp5 + 1) = {x0_e + t_electrode, y0_e + h_fin_elec, 0, 0.2*scale}; -Point(offsetp5 + 2) = {x0_e + t_electrode, y0_e, 0, 0.2*scale}; -Point(offsetp5 + 3) = {x0_e, y0_e, 0, 0.2*scale}; -Point(offsetp5 + 4) = {x0_e, y0_e + h_fin_elec + t_electrode, 0, 0.2*scale}; -Point(offsetp5 + 5) = {l_tot - x0_e, y0_e + h_fin_elec + t_electrode, 0, 0.2*scale}; -Point(offsetp5 + 6) = {l_tot - x0_e, y0_e, 0, 0.2*scale}; -Point(offsetp5 + 7) = {l_tot - x0_e - t_electrode, y0_e, 0, 0.2*scale}; -Point(offsetp5 + 8) = {l_tot - x0_e - t_electrode, y0_e + h_fin_elec, 0, 0.2*scale}; +Point(offsetp5 + 1) = {x0_e + t_electrode, y0_e + h_fin_elec, 0, nBEM*0.2*scale}; +Point(offsetp5 + 2) = {x0_e + t_electrode, y0_e, 0, nBEM*0.2*scale}; +Point(offsetp5 + 3) = {x0_e, y0_e, 0, nBEM*0.2*scale}; +Point(offsetp5 + 4) = {x0_e, y0_e + h_fin_elec + t_electrode, 0, nBEM*0.2*scale}; +Point(offsetp5 + 5) = {l_tot - x0_e, y0_e + h_fin_elec + t_electrode, 0, nBEM*0.2*scale}; +Point(offsetp5 + 6) = {l_tot - x0_e, y0_e, 0, nBEM*0.2*scale}; +Point(offsetp5 + 7) = {l_tot - x0_e - t_electrode, y0_e, 0, nBEM*0.2*scale}; +Point(offsetp5 + 8) = {l_tot - x0_e - t_electrode, y0_e + h_fin_elec, 0, nBEM*0.2*scale}; offsetp6 = offsetp5 + 8; For i In {1:N_fins-1} - Point(offsetp6 + 4*i - 3) = {x0_e + l_periodic*i, y0_e + h_fin_elec, 0, 0.2*scale}; - Point(offsetp6 + 4*i - 2) = {x0_e + l_periodic*i, y0_e, 0, 0.2*scale}; - Point(offsetp6 + 4*i - 1) = {x0_e + l_periodic*i + t_electrode, y0_e, 0, 0.2*scale}; - Point(offsetp6 + 4*i) = {x0_e + l_periodic*i + t_electrode, y0_e + h_fin_elec, 0, 0.2*scale}; + Point(offsetp6 + 4*i - 3) = {x0_e + l_periodic*i, y0_e + h_fin_elec, 0, nBEM*0.2*scale}; + Point(offsetp6 + 4*i - 2) = {x0_e + l_periodic*i, y0_e, 0, nBEM*0.2*scale}; + Point(offsetp6 + 4*i - 1) = {x0_e + l_periodic*i + t_electrode, y0_e, 0, nBEM*0.2*scale}; + Point(offsetp6 + 4*i) = {x0_e + l_periodic*i + t_electrode, y0_e + h_fin_elec, 0, nBEM*0.2*scale}; EndFor // définition des lignes générales (indépendantes de N_fins) de la top electrode -- GitLab