Skip to content
Snippets Groups Projects
Select Git revision
  • 8458fc5980f7eadc518b14a43f51df5bb4839e63
  • master default protected
  • relaying
  • overlaps_tags_and_distributed_export
  • alphashapes
  • patches-4.14
  • steplayer
  • bl
  • pluginMeshQuality
  • fixBugsAmaury
  • hierarchical-basis
  • new_export_boris
  • oras_vs_osm
  • reassign_partitions
  • distributed_fwi
  • rename-classes
  • fix/fortran-api-example-t4
  • robust_partitions
  • reducing_files
  • fix_overlaps
  • 3115-issue-fix
  • gmsh_4_14_0
  • gmsh_4_13_1
  • gmsh_4_13_0
  • gmsh_4_12_2
  • gmsh_4_12_1
  • gmsh_4_12_0
  • gmsh_4_11_1
  • gmsh_4_11_0
  • gmsh_4_10_5
  • gmsh_4_10_4
  • gmsh_4_10_3
  • gmsh_4_10_2
  • gmsh_4_10_1
  • gmsh_4_10_0
  • gmsh_4_9_5
  • gmsh_4_9_4
  • gmsh_4_9_3
  • gmsh_4_9_2
  • gmsh_4_9_1
  • gmsh_4_9_0
41 results

concentric_sphere.geo

Blame
  • concentric_sphere.geo 1.47 KiB
    /// sphere_layer.geo
    // sphere of radius r1, centered on the origin
    // with an outer spherical layer of radius r2
    
    lc=0.2;
    r1=0.3;
    r2=0.6;
    
    // inner semicircle points
    Point(1) = {0,0,0,lc};
    Point(2) = {0,0,-r1,lc};
    Point(3) = {0,-r1,0,lc};
    Point(4) = {0,0,r1,lc};
    
    // outer semicircle points
    Point(5) = {0,0,-r2,lc};
    Point(6) = {0,-r2,0,lc};
    Point(7) = {0,0,r2,lc};
    
    // inner semicircle lines
    Line(1) = {1,2};
    Circle(2) = {2,1,3};
    Circle(3) = {3,1,4};
    Line(4) = {4,1};
    
    // outer semicircular slice lines
    Line(5) = {2,5};
    Circle(6) = {5,1,6};
    Circle(7) = {6,1,7};
    Line(8) = {7,4};
    
    // inner semi-circle line loop
    Line Loop(9) = {1,2,3,4};
    // outer slice line loop
    Line Loop(10) = {5,6,7,8,-3,-2};
    
    // inner semi-circular plane
    Plane Surface(12) = {9};
    // outer layer plane
    Plane Surface(13) = {10};
    
    // extrude inner semi-circle to get inner sphere
    v1[] = Extrude { {0.0,0.0,1.0}, {0.0,0.0,0.0},2*Pi/3}{ Surface{12}; };
    v2[] = Extrude { {0.0,0.0,1.0}, {0.0,0.0,0.0},2*Pi/3}{ Surface{v1[0]}; };
    v3[] = Extrude { {0.0,0.0,1.0}, {0.0,0.0,0.0},2*Pi/3}{ Surface{v2[0]}; };
    
    // extrude outer slice to get outer spherical layer
    v4[] = Extrude { {0.0,0.0,1.0}, {0.0,0.0,0.0},2*Pi/3}{ Surface{13}; };
    v5[] = Extrude { {0.0,0.0,1.0}, {0.0,0.0,0.0},2*Pi/3}{ Surface{v4[0]}; };
    v6[] = Extrude { {0.0,0.0,1.0}, {0.0,0.0,0.0},2*Pi/3}{ Surface{v5[0]}; };
    
    //assign volume number 1 to outer layer
    Physical Volume(1) = {v4[1],v5[1],v6[1]};
    
    // assign volume number 2 to inner sphere
    Physical Volume(2) = {v1[1],v2[1],v3[1]};