O software de cálculo estrutural RFEM 6 é a base de um sistema de software composto por módulos. O programa principal RFEM 6 é utilizado para definir estruturas, materiais e ações para sistemas estruturais planos e espaciais constituídos por lajes, paredes, cascas e barras. O programa também permite criar estruturas combinadas, bem como modelar sólidos e elementos de contacto.
O RSTAB 9 é um programa de cálculo de estruturas reticuladas e pórticos 3D que reflete o estado atual da tecnologia e ajuda os engenheiros de estruturas a cumprir os requisitos da engenharia civil moderna.
Costuma perder muito tempo a calcular secções? A Dlubal Software e o programa autónomo RSECTION facilitam-lhe o trabalho determinando propriedades de secções e efetuando análises de tensões para diferentes secções.
Sabe sempre de onde vem o vento? Da direção da inovação, é claro! Com o RWIND 2, dispõe de um programa que utiliza um túnel de vento digital para a simulação numérica de fluxos de vento. O programa fornece estes fluxos em torno de eventuais geometrias de edifícios e determina as cargas de vento nas superfícies.
Procura uma vista geral de zonas de cargas de neve, velocidades de vento e cargas sísmicas? Então, está no sítio certo. Os mapas de zonas de carga são adequados para a determinação rápida e fácil de cargas de neve, velocidades de vento e cargas sísmicas de acordo com o Eurocódigo e outras normas internacionais.
Gostaria de experimentar o poder dos programas da Dlubal Software? Esta é a sua oportunidade! Com a versão completa gratuita de 90 dias, pode testar exaustivamente todos os nossos programas.
As deformações das barras podem ser lidas através da função "GetMemberDeformations()", por exemplo. Esta função espera um número, o tipo de método de contagem para barras (número de barra/número na lista) e qual o sistema de coordenadas que deve ser utilizado. Pode selecionar se é utilizado o sistema de eixos local, o sistema de eixos principal ou o sistema de coordenadas global:
Sub test_results_member_axis()Dim iApp As RFEM5.ApplicationSet iApp = GetObject(, "RFEM5.Application")iApp.LockLicenseDim iMod As RFEM5.IModel3Set iMod = iApp.GetActiveModelOn Error GoTo e'get interface for calculationDim iCalc As RFEM5.ICalculation2Set iCalc = iMod.GetCalculation'get interface for resultsDim iRes As RFEM5.IResults2Set iRes = iCalc.GetResultsInFeNodes(LoadCaseType, 1)'get deformations in local coordinate systemDim memDefs_L() As RFEM5.MemberDeformationsmemDefs_L = iRes.GetMemberDeformations(1, AtNo, LocalMemberAxes)'get deformations in global coordinate systemDim memDefs_G() As RFEM5.MemberDeformationsmemDefs_G = iRes.GetMemberDeformations(1, AtNo, GlobalAxes)'get deformations in principal coordinate systemDim memDefs_P() As RFEM5.MemberDeformationsmemDefs_P = iRes.GetMemberDeformations(1, AtNo, LocalPrincipalAxes)e:If Err.Number <> 0 Then MsgBox Err.description, vbCritical, Err.SourceiMod.GetApplication.UnlockLicenseSet iMod = NothingEnd Sub
O programa pequeno lê as deformações locais (memDefs_L) nos eixos da barra e nos eixos principais (memDefs_P) e as deformações globais nos eixos da barra (memDefs_G).
Um apoio nodal tem as propriedades "ReferenceSystem" e "UserDefinedReferenceSystem" ao programar com a interface COM. A propriedade "ReferenceSystem" permite definir o tipo de sistema de coordenadas definido pelo utilizador (por exemplo, "Rodado" ou "Sistema de coordenadas"). Dependendo do que foi selecionado, o tipo é então definido através de "UserDefinedReferenceSystem".
No exemplo a seguir, foi selecionado o tipo "Sistema de coordenadas" e também criado um sistema de coordenadas definido pelo utilizador:
// create user defined coordinate systemIGuideObjects iGuide = iModel.GetGuideObjects();// delete cosy No 2UserCoordinateSystem[] csList = iGuide.GetCoordinateSystems();if (csList.Length > 1){for (int i = 0; i < csList.Length; ++i){if (csList[i].No == 2){iGuide.PrepareModification();iGuide.DeleteObjects(GuideObjectType.CoordinateSystemObject, "2");iGuide.FinishModification();}}}// define new cosy No 2UserCoordinateSystem uCs = new UserCoordinateSystem();uCs.Name = "test";uCs.Comment = "test";uCs.No = 2;uCs.IsValid = true;uCs.Origin.X = 1;uCs.Origin.Y = 0;uCs.Origin.Z = 1;uCs.Point1.X = 2;uCs.Point1.Y = 0;uCs.Point1.Z = 1;uCs.Point2.X = 1;uCs.Point2.Y = 1;uCs.Point2.Z = 2;// set cosy No 2iGuide.PrepareModification();iGuide.SetCoordinateSystem(uCs);iGuide.FinishModification();// create nodal support with user defined cosyNodalSupport ns = new NodalSupport();ns.SupportConstantX = -1;ns.SupportConstantY = -1;ns.SupportConstantZ = -1;ns.RestraintConstantX = -1;ns.RestraintConstantY = 0;ns.RestraintConstantZ = -1;ns.Comment = "user defined cosy";ns.NodeList = "1";ns.ReferenceSystem = ReferenceSystemType.UserDefinedSystemType;ns.UserDefinedReferenceSystem.ObjectNo = 2;ns.UserDefinedReferenceSystem.Type = UserDefinedAxisSystemType.DefinedCoordinateSystemType;iModData.PrepareModification();iModData.SetNodalSupport(ns);iModData.FinishModification();
Para poder criar o sistema de coordenadas, é necessária a interface para os objetos auxiliares: 'IGuideObjects'. Com a função "DeleteObjects ()", é eliminado um sistema de coordenadas existente com o número 2 e é criado um novo com "SetCoordinateSystem ()". Tenha em atenção o bloco "Prepare/Finish-Modification" para poder transferir o novo elemento.
O apoio nodal é transferido através da interface "IModelData". O bloco "Prepare/Finish-Modification" também será necessário aqui.