nodes0 = mesh0.getNodes() nodes1 = mesh1.getNodes() rho = 7854.0 E = 2.0 * math.pow(10, 11) nu = 0.31 if fvm.atype == 'tangent': metricsCalculator.setTangentCoords(0, 7, 1) flowFields = models.FlowFields('flow') structureFields = models.StructureFields('structure') electricFields = models.ElectricFields('elec') smodel = models.StructureModelA(geomFields, structureFields, meshes0) dmodel = models.StructureDeformationModelA(geomFields, structureFields, meshes0) movingMeshModel = models.MovingMeshModelA(meshes1, geomFields, flowFields) emodel = models.ElectricModelA(geomFields, electricFields, meshes1) movingMeshModel.init() bcMap = smodel.getBCMap() #left (mesh0) bcID = 6 if bcID in bcMap: bc = smodel.getBCMap()[bcID] bc.bcType = 'SpecifiedDeformation' bc['specifiedXDeformation'] = 0 bc['specifiedYDeformation'] = 0 bc['specifiedZDeformation'] = 0
pd.solidBoundaryMetricsCalculator = models.MeshMetricsCalculatorA( pd.geomFields, pd.solidBoundaryMeshes) pd.solidMetricsCalculator.init() pd.fluidMetricsCalculator.init() pd.solidBoundaryMetricsCalculator.init() ### structure model and boundary condition ### pd.structureFields = models.StructureFields('structure') pd.smodel = models.StructureModelA(pd.geomFields, pd.structureFields, pd.solidMeshes) pd.dmodel = models.StructureDeformationModelA(pd.geomFields, pd.structureFields, pd.solidMeshes) sbcMap = pd.smodel.getBCMap() for id in fixedBeam: bc = sbcMap[id] bc.bcType = 'SpecifiedDeformation' bc['specifiedXDeformation'] = 0.0 bc['specifiedYDeformation'] = 0.0 bc['specifiedZDeformation'] = 0.0 for id in [beamTopID, beamBotID, beamSideID]: bc = sbcMap[id] bc.bcType = 'SpecifiedForce' vcMap = pd.smodel.getVCMap()