Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
M
Multiphysics 0471
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Requirements
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Locked files
Build
Pipelines
Jobs
Pipeline schedules
Test cases
Artifacts
Deploy
Releases
Package Registry
Container Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Code review analytics
Issue analytics
Insights
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Denis Louis
Multiphysics 0471
Commits
e626bc60
Commit
e626bc60
authored
2 years ago
by
Denis Louis
Browse files
Options
Downloads
Patches
Plain Diff
comb update
parent
f2165429
No related branches found
No related tags found
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
srcs/longitudinalCombDevice.geo
+36
-35
36 additions, 35 deletions
srcs/longitudinalCombDevice.geo
with
36 additions
and
35 deletions
srcs/longitudinalCombDevice.geo
+
36
−
35
View file @
e626bc60
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 =
2
0*scale;
h_tot =
3
0*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 =
6
4*scale;
l_tot = 4
0
*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
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment