# -*- coding: utf-8 -*-

###
### This file is generated automatically by SALOME v8.2.0 with dump python functionality
###

import sys
import salome

salome.salome_init()
theStudy = salome.myStudy

import salome_notebook
notebook = salome_notebook.NoteBook(theStudy)
sys.path.insert( 0, r'/home/lgarelli/RUNS/Code_Saturne/Bruno_VAWT/Mesh')

###
### GEOM component
###

import GEOM
from salome.geom import geomBuilder
import math
import SALOMEDS


geompy = geomBuilder.New(theStudy)

O = geompy.MakeVertex(0, 0, 0)
OX = geompy.MakeVectorDXDYDZ(1, 0, 0)
OY = geompy.MakeVectorDXDYDZ(0, 1, 0)
OZ = geompy.MakeVectorDXDYDZ(0, 0, 1)
Circle_1 = geompy.MakeCircle(None, None, 0.25)
Circle_2 = geompy.MakeCircle(None, None, 1)
Face_1 = geompy.MakeFaceHW(0.2, 0.025, 1)
Face_2 = geompy.MakeFaceWires([Circle_1], 1)
Face_3 = geompy.MakeFaceWires([Circle_2], 1)
Cut_1 = geompy.MakeCutList(Face_2, [Face_1], True)
Cut_2 = geompy.MakeCutList(Face_3, [Face_2], True)
Rotor = geompy.MakePrismDXDYDZ(Cut_1, 0, 0, 0.1)
[Face_8,Face_9,Face_10,Face_11,Face_12,Face_13,Face_14] = geompy.ExtractShapes(Rotor, geompy.ShapeType["FACE"], True)
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["VERTEX"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["VERTEX"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["VERTEX"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["VERTEX"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["EDGE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["EDGE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["EDGE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["EDGE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["EDGE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["EDGE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["EDGE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["EDGE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["EDGE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["EDGE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["EDGE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["EDGE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["EDGE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["EDGE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["EDGE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["EDGE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Rotor, geompy.ShapeType["EDGE"])
Stator = geompy.MakePrismDXDYDZ(Cut_2, 0, 0, 0.1)
[Face_4,Face_5,Face_6,Face_7] = geompy.ExtractShapes(Stator, geompy.ShapeType["FACE"], True)
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["VERTEX"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["VERTEX"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["VERTEX"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["VERTEX"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["FACE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["VERTEX"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["VERTEX"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["EDGE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["EDGE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["EDGE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["EDGE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["EDGE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["EDGE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["EDGE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["EDGE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["EDGE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["EDGE"])
listSubShapeIDs = geompy.SubShapeAllIDs(Stator, geompy.ShapeType["EDGE"])
Interface = geompy.CreateGroup(Rotor, geompy.ShapeType["FACE"])
geompy.UnionIDs(Interface, [3])
Top_r = geompy.CreateGroup(Rotor, geompy.ShapeType["FACE"])
geompy.UnionIDs(Top_r, [41])
Bottom_r = geompy.CreateGroup(Rotor, geompy.ShapeType["FACE"])
geompy.UnionIDs(Bottom_r, [38])
Rect = geompy.CreateGroup(Rotor, geompy.ShapeType["FACE"])
geompy.UnionIDs(Rect, [20, 27, 10, 34])
Interface_1 = geompy.CreateGroup(Stator, geompy.ShapeType["FACE"])
geompy.UnionIDs(Interface_1, [10])
Top_s = geompy.CreateGroup(Stator, geompy.ShapeType["FACE"])
geompy.UnionIDs(Top_s, [20])
Bottom_s = geompy.CreateGroup(Stator, geompy.ShapeType["FACE"])
geompy.UnionIDs(Bottom_s, [17])
External = geompy.CreateGroup(Stator, geompy.ShapeType["FACE"])
geompy.UnionIDs(External, [3])
z_axis_s = geompy.CreateGroup(Stator, geompy.ShapeType["EDGE"])
geompy.UnionIDs(z_axis_s, [12, 5])
z_axis_r = geompy.CreateGroup(Rotor, geompy.ShapeType["EDGE"])
geompy.UnionIDs(z_axis_r, [5, 29, 22, 15, 12])
geompy.addToStudy( O, 'O' )
geompy.addToStudy( OX, 'OX' )
geompy.addToStudy( OY, 'OY' )
geompy.addToStudy( OZ, 'OZ' )
geompy.addToStudy( Circle_1, 'Circle_1' )
geompy.addToStudy( Circle_2, 'Circle_2' )
geompy.addToStudy( Face_1, 'Face_1' )
geompy.addToStudy( Face_2, 'Face_2' )
geompy.addToStudy( Face_3, 'Face_3' )
geompy.addToStudy( Cut_1, 'Cut_1' )
geompy.addToStudy( Cut_2, 'Cut_2' )
geompy.addToStudy( Rotor, 'Rotor' )
geompy.addToStudy( Stator, 'Stator' )
geompy.addToStudyInFather( Stator, Face_4, 'Face_4' )
geompy.addToStudyInFather( Stator, Face_5, 'Face_5' )
geompy.addToStudyInFather( Stator, Face_6, 'Face_6' )
geompy.addToStudyInFather( Stator, Face_7, 'Face_7' )
geompy.addToStudyInFather( Rotor, Face_8, 'Face_8' )
geompy.addToStudyInFather( Rotor, Face_9, 'Face_9' )
geompy.addToStudyInFather( Rotor, Face_10, 'Face_10' )
geompy.addToStudyInFather( Rotor, Face_11, 'Face_11' )
geompy.addToStudyInFather( Rotor, Face_12, 'Face_12' )
geompy.addToStudyInFather( Rotor, Face_13, 'Face_13' )
geompy.addToStudyInFather( Rotor, Face_14, 'Face_14' )
geompy.addToStudyInFather( Rotor, Interface, 'Interface' )
geompy.addToStudyInFather( Rotor, Top_r, 'Top_r' )
geompy.addToStudyInFather( Rotor, Bottom_r, 'Bottom_r' )
geompy.addToStudyInFather( Rotor, Rect, 'Rect' )
geompy.addToStudyInFather( Stator, Interface_1, 'Interface' )
geompy.addToStudyInFather( Stator, Top_s, 'Top_s' )
geompy.addToStudyInFather( Stator, Bottom_s, 'Bottom_s' )
geompy.addToStudyInFather( Stator, External, 'External' )
geompy.addToStudyInFather( Stator, z_axis_s, 'z_axis_s' )
geompy.addToStudyInFather( Rotor, z_axis_r, 'z_axis_r' )

###
### SMESH component
###

import  SMESH, SALOMEDS
from salome.smesh import smeshBuilder

smesh = smeshBuilder.New(theStudy)
Rotor_1 = smesh.Mesh(Rotor)
Prism_3D = Rotor_1.Prism()
Regular_1D = Rotor_1.Segment(geom=z_axis_r)
z_axis_r_1 = Regular_1D.NumberOfSegments(1)
NETGEN_2D = Rotor_1.Triangle(algo=smeshBuilder.NETGEN_1D2D,geom=Top_r)
NETGEN_2D_Simple_Parameters_1 = NETGEN_2D.Parameters(smeshBuilder.SIMPLE)
NETGEN_2D_Simple_Parameters_1.SetLocalLength( 0.01 )
NETGEN_2D_Simple_Parameters_1.LengthFromEdges()
NETGEN_2D_Simple_Parameters_1.SetAllowQuadrangles( 1 )
Quadrangle_2D = Rotor_1.Quadrangle(algo=smeshBuilder.QUADRANGLE,geom=Interface)
Quadrangle_2D_1 = Rotor_1.Quadrangle(algo=smeshBuilder.QUADRANGLE,geom=Rect)
Projection_1D2D = Rotor_1.Projection1D2D(geom=Bottom_r)
Source_Face_1 = Projection_1D2D.SourceFace(Top_r,Rotor_1,None,None,None,None)
isDone = Rotor_1.Compute()
Interface_2 = Rotor_1.GroupOnGeom(Interface,'Interface',SMESH.FACE)
Top_r_1 = Rotor_1.GroupOnGeom(Top_r,'Top_r',SMESH.FACE)
Bottom_r_1 = Rotor_1.GroupOnGeom(Bottom_r,'Bottom_r',SMESH.FACE)
Rect_1 = Rotor_1.GroupOnGeom(Rect,'Rect',SMESH.FACE)
Stator_1 = smesh.Mesh(Stator)
Prism_3D_1 = Stator_1.Prism()
Regular_1D_1 = Stator_1.Segment(geom=z_axis_s)
status = Stator_1.AddHypothesis(z_axis_r_1,z_axis_s)
NETGEN_2D_1 = Stator_1.Triangle(algo=smeshBuilder.NETGEN_1D2D,geom=Top_s)
NETGEN_2D_Simple_Parameters_2 = NETGEN_2D_1.Parameters(smeshBuilder.SIMPLE)
NETGEN_2D_Simple_Parameters_2.SetLocalLength( 0.02 )
NETGEN_2D_Simple_Parameters_2.LengthFromEdges()
NETGEN_2D_Simple_Parameters_2.SetAllowQuadrangles( 1 )
Quadrangle_2D_2 = Stator_1.Quadrangle(algo=smeshBuilder.QUADRANGLE,geom=Interface_1)
Quadrangle_2D_3 = Stator_1.Quadrangle(algo=smeshBuilder.QUADRANGLE,geom=External)
Projection_1D2D_1 = Stator_1.Projection1D2D(geom=Bottom_s)
Source_Face_2 = Projection_1D2D_1.SourceFace(Top_s,Stator_1,None,None,None,None)
isDone = Stator_1.Compute()
Interface_3 = Stator_1.GroupOnGeom(Interface_1,'Interface',SMESH.FACE)
Top_s_1 = Stator_1.GroupOnGeom(Top_s,'Top_s',SMESH.FACE)
Bottom_s_1 = Stator_1.GroupOnGeom(Bottom_s,'Bottom_s',SMESH.FACE)
External_1 = Stator_1.GroupOnGeom(External,'External',SMESH.FACE)
smesh.SetName(Stator_1, 'Stator')

Rotor_2 = Rotor_1.GroupOnGeom(Rotor,'Rotor',SMESH.VOLUME)
smesh.SetName(Rotor_1, 'Rotor')

Sub_mesh_1 = Regular_1D.GetSubMesh()
Sub_mesh_2 = NETGEN_2D.GetSubMesh()
Sub_mesh_3 = Quadrangle_2D.GetSubMesh()
Sub_mesh_4 = Quadrangle_2D_1.GetSubMesh()
Sub_mesh_5 = Projection_1D2D.GetSubMesh()
Sub_mesh_6 = Regular_1D_1.GetSubMesh()
Sub_mesh_7 = NETGEN_2D_1.GetSubMesh()
Sub_mesh_8 = Quadrangle_2D_2.GetSubMesh()
Sub_mesh_9 = Quadrangle_2D_3.GetSubMesh()
Sub_mesh_10 = Projection_1D2D_1.GetSubMesh()


## Set names of Mesh objects
smesh.SetName(Prism_3D.GetAlgorithm(), 'Prism_3D')
smesh.SetName(NETGEN_2D.GetAlgorithm(), 'NETGEN_2D')
smesh.SetName(Regular_1D.GetAlgorithm(), 'Regular_1D')
smesh.SetName(Projection_1D2D.GetAlgorithm(), 'Projection_1D2D')
smesh.SetName(NETGEN_2D_Simple_Parameters_1, 'NETGEN 2D Simple Parameters_1')
smesh.SetName(Source_Face_1, 'Source Face_1')
smesh.SetName(Quadrangle_2D.GetAlgorithm(), 'Quadrangle_2D')
smesh.SetName(z_axis_r_1, 'z_axis_r')
smesh.SetName(NETGEN_2D_Simple_Parameters_2, 'NETGEN 2D Simple Parameters_2')
smesh.SetName(Interface_2, 'Interface')
smesh.SetName(Source_Face_2, 'Source Face_2')
smesh.SetName(Top_r_1, 'Top_r')
smesh.SetName(Bottom_r_1, 'Bottom_r')
smesh.SetName(Rect_1, 'Rect')
smesh.SetName(Sub_mesh_2, 'Sub-mesh_2')
smesh.SetName(Sub_mesh_8, 'Sub-mesh_8')
smesh.SetName(Sub_mesh_5, 'Sub-mesh_5')
smesh.SetName(Sub_mesh_9, 'Sub-mesh_9')
smesh.SetName(Sub_mesh_3, 'Sub-mesh_3')
smesh.SetName(Sub_mesh_7, 'Sub-mesh_7')
smesh.SetName(Sub_mesh_6, 'Sub-mesh_6')
smesh.SetName(Sub_mesh_10, 'Sub-mesh_10')
smesh.SetName(Rotor_1.GetMesh(), 'Rotor')
smesh.SetName(Stator_1.GetMesh(), 'Stator')
smesh.SetName(Sub_mesh_4, 'Sub-mesh_4')
smesh.SetName(Sub_mesh_1, 'Sub-mesh_1')
smesh.SetName(Rotor_2, 'Rotor')
smesh.SetName(External_1, 'External')
smesh.SetName(Bottom_s_1, 'Bottom_s')
smesh.SetName(Top_s_1, 'Top_s')
smesh.SetName(Interface_3, 'Interface')


if salome.sg.hasDesktop():
  salome.sg.updateObjBrowser(True)
