Beispiel #1
0
        public MonteCarloAnalyzerStiffnessMatrixFactoryWithStochasticMaterial(Model model, IAnalyzerProvider provider, IAnalyzer embeddedAnalyzer, IDictionary <int, ISolverSubdomain> subdomains, GaussianFileStochasticCoefficientsProvider coefficientsProvider, int expansionOrder, int simulations)
        {
            this.childAnalyzer  = embeddedAnalyzer;
            this.provider       = provider;
            this.model          = model;
            this.subdomains     = subdomains;
            this.expansionOrder = expansionOrder;
            this.simulations    = simulations;
            this.childAnalyzer.ParentAnalyzer = this;
            //this.matrices = new Dictionary<int, IMatrix2D<double>>(subdomains.Count);
            this.matrices             = new Dictionary <int, IMatrix2D <double> > [expansionOrder + 1];
            this.randomNumbers        = new double[simulations][];
            this.coefficientsProvider = coefficientsProvider;
            //this.stochasticDomain = stochasticDomain;

            NormalDistribution n = new NormalDistribution();

            n.Mu    = 0;
            n.Sigma = 1;
            string[] randoms = new string[simulations];
            for (int i = 0; i < simulations; i++)
            {
                randomNumbers[i] = new double[expansionOrder];
                for (int j = 0; j < expansionOrder; j++)
                {
                    randomNumbers[i][j] = n.NextDouble();
                }
                randoms[i] = randomNumbers[i][0].ToString();
            }
            //File.WriteAllLines(String.Format(@"randoms.txt", expansionOrder), randoms);
        }
 public MonteCarloAnalyzerWithStochasticMaterial(Model model, IAnalyzerProvider provider, IAnalyzer embeddedAnalyzer, IDictionary <int, ISolverSubdomain> subdomains, IStochasticMaterialCoefficientsProvider coefficientsProvider, int expansionOrder, int simulations)
 {
     this.childAnalyzer  = embeddedAnalyzer;
     this.provider       = provider;
     this.model          = model;
     this.subdomains     = subdomains;
     this.expansionOrder = expansionOrder;
     this.simulations    = simulations;
     this.childAnalyzer.ParentAnalyzer = this;
     //this.matrices = new Dictionary<int, IMatrix2D<double>>(subdomains.Count);
     this.matrices             = new Dictionary <int, IMatrix2D <double> > [expansionOrder + 1];
     this.coefficientsProvider = coefficientsProvider;
     //this.stochasticDomain = stochasticDomain;
 }
Beispiel #3
0
 public StochasticElasticMaterial3D(IStochasticMaterialCoefficientsProvider coefficientsProvider)
 {
     this.coefficientsProvider = coefficientsProvider;
 }
 public MonteCarloAnalyzerWithStochasticMaterial(Model model, IAnalyzerProvider provider, IAnalyzer embeddedAnalyzer, IDictionary <int, ISolverSubdomain> subdomains, IStochasticMaterialCoefficientsProvider coefficientsProvider,
                                                 int expansionOrder, int simulations, int blockSize, StiffnessMatrixProductionMode stiffnessMatrixProductionMode, string fileNameForLogging, string stiffnessMatrixPath, string randomsReadFileName,
                                                 int simulationStartFrom)
     : this(model, provider, embeddedAnalyzer, subdomains, coefficientsProvider, expansionOrder, simulations, blockSize, stiffnessMatrixProductionMode, fileNameForLogging, stiffnessMatrixPath)
 {
     this.randomsReadFileName = randomsReadFileName;
     this.simulationStartFrom = simulationStartFrom;
 }
 public MonteCarloAnalyzerWithStochasticMaterial(Model model, IAnalyzerProvider provider, IAnalyzer embeddedAnalyzer, IDictionary <int, ISolverSubdomain> subdomains, IStochasticMaterialCoefficientsProvider coefficientsProvider,
                                                 int expansionOrder, int simulations, StiffnessMatrixProductionMode stiffnessMatrixProductionMode, string fileNameForLogging, string stiffnessMatrixPath)
     : this(model, provider, embeddedAnalyzer, subdomains, coefficientsProvider, expansionOrder, simulations, fileNameForLogging)
 {
     this.stiffnessMatrixPath           = stiffnessMatrixPath;
     this.stiffnessMatrixProductionMode = stiffnessMatrixProductionMode;
 }
 public MonteCarloAnalyzerWithStochasticMaterial(Model model, IAnalyzerProvider provider, IAnalyzer embeddedAnalyzer, IDictionary <int, ISolverSubdomain> subdomains, IStochasticMaterialCoefficientsProvider coefficientsProvider,
                                                 int expansionOrder, int simulations, string fileNameForLogging)
     : this(model, provider, embeddedAnalyzer, subdomains, coefficientsProvider, expansionOrder, simulations)
 {
     this.fileNameForLogging = fileNameForLogging;
 }
 public VRFMonteCarloAnalyzerWithStochasticMaterial(Model model, IAnalyzerProvider provider, IAnalyzer embeddedAnalyzer, IDictionary <int, ISolverSubdomain> subdomains, PowerSpectrumTargetEvaluatorCoefficientsProvider coefficientsProvider, IStochasticMaterialCoefficientsProvider approximateCoefficientsProvider,
                                                    int expansionOrder, int simulations, int blockSize, StiffnessMatrixProductionMode stiffnessMatrixProductionMode, string fileNameForLogging, string stiffnessMatrixPath)
     : this(model, provider, embeddedAnalyzer, subdomains, coefficientsProvider, approximateCoefficientsProvider, expansionOrder, simulations, stiffnessMatrixProductionMode, fileNameForLogging, stiffnessMatrixPath)
 {
     this.blockSize = blockSize;
 }