Esempio n. 1
0
        protected override void AddAnalysisToXMLOutput(CAD.AssemblyType cadassembly)
        {
            base.AddAnalysisToXMLOutput(cadassembly);
            CAD.AnalysesType cadanalysis = GetCADAnalysis(cadassembly);

            CAD.CFDType cfdanalysis = new CAD.CFDType();
            cfdanalysis._id        = UtilityHelpers.MakeUdmID();
            cfdanalysis.AnalysisID = AnalysisID;

            List <CAD.MetricType> metrics = MetricsToCADXMLOutput(Computations, cadassembly.ConfigurationID);

            if (metrics.Count > 0)
            {
                cfdanalysis.Metrics        = new CAD.MetricsType();
                cfdanalysis.Metrics._id    = UtilityHelpers.MakeUdmID();
                cfdanalysis.Metrics.Metric = metrics.ToArray();
            }

            // Hydrostatics solver setting will go to the CadAssembly.xml as it is interpreted by CadCreateAssembly.exe
            foreach (var config in cfdConfigs.Where(cfg => cfg is CFDConfig.HydrostaticsSolverSettings))
            {
                CFDConfig.HydrostaticsSolverSettings hconfig = config as CFDConfig.HydrostaticsSolverSettings;
                cfdanalysis.HydrostaticsSolverSettings    = new CAD.HydrostaticsSolverSettingsType[1];
                cfdanalysis.HydrostaticsSolverSettings[0] = new CAD.HydrostaticsSolverSettingsType()
                {
                    VehicleVelocity    = 1,
                    FluidMaterial      = hconfig.FluidMaterial.ToString(),
                    FluidTemperature   = hconfig.FluidTemperature,
                    PitchAngleStart    = hconfig.PitchAngleStart,
                    PitchAngleEnd      = hconfig.PitchAngleEnd,
                    PitchAngleStepSize = hconfig.PitchAngleStep,
                    RollAngleStart     = hconfig.RollAngleStart,
                    RollAngleEnd       = hconfig.RollAngleEnd,
                    RollAngleStepSize  = hconfig.RollAngleStep
                };
            }

            cadanalysis.CFD = new CAD.CFDType[] { cfdanalysis };

            AddStaticAnalysisMetrics(cadassembly);
        }
Esempio n. 2
0
        protected override void AddAnalysisToXMLOutput(CAD.AssemblyType cadassembly)
        {
            base.AddAnalysisToXMLOutput(cadassembly);
            CAD.AnalysesType cadanalysis = GetCADAnalysis(cadassembly);
            
            CAD.CFDType cfdanalysis = new CAD.CFDType();
            cfdanalysis._id = UtilityHelpers.MakeUdmID();
            cfdanalysis.AnalysisID = AnalysisID;

            List<CAD.MetricType> metrics = MetricsToCADXMLOutput(Computations, cadassembly.ConfigurationID);
            if (metrics.Count > 0)
            {
                cfdanalysis.Metrics = new CAD.MetricsType();
                cfdanalysis.Metrics._id = UtilityHelpers.MakeUdmID();
                cfdanalysis.Metrics.Metric = metrics.ToArray();
            }

            // Hydrostatics solver setting will go to the CadAssembly.xml as it is interpreted by CadCreateAssembly.exe
            foreach (var config in cfdConfigs.Where(cfg => cfg is CFDConfig.HydrostaticsSolverSettings))
            {
                CFDConfig.HydrostaticsSolverSettings hconfig = config as CFDConfig.HydrostaticsSolverSettings;
                cfdanalysis.HydrostaticsSolverSettings = new CAD.HydrostaticsSolverSettingsType[1];
                cfdanalysis.HydrostaticsSolverSettings[0] = new CAD.HydrostaticsSolverSettingsType()
                {
                    VehicleVelocity = 1,
                    FluidMaterial = hconfig.FluidMaterial.ToString(),
                    FluidTemperature = hconfig.FluidTemperature,
                    PitchAngleStart = hconfig.PitchAngleStart,
                    PitchAngleEnd = hconfig.PitchAngleEnd,
                    PitchAngleStepSize = hconfig.PitchAngleStep,
                    RollAngleStart = hconfig.RollAngleStart,
                    RollAngleEnd = hconfig.RollAngleEnd,
                    RollAngleStepSize = hconfig.RollAngleStep
                };
            }

            cadanalysis.CFD = new CAD.CFDType[] { cfdanalysis };

            AddStaticAnalysisMetrics(cadassembly);
        }