public static Results RunExample() { IAssembly elementsAssembly = CreateAssembly(); elementsAssembly.CreateElementsAssembly(); elementsAssembly.ActivateBoundaryConditions = true; double[,] globalStiffnessMatrix = elementsAssembly.CreateTotalStiffnessMatrix(); ISolver newSolu = new StaticSolver(); newSolu.LinearScheme = new PCGSolver(); double[] externalForces = new double[] { 20000, 0, -25000 }; newSolu.AssemblyData = elementsAssembly; newSolu.Solve(externalForces); newSolu.PrintSolution(); return(new Results()); }
public static void RunExample() { IAssembly elementsAssembly = CreateAssembly(); elementsAssembly.CreateElementsAssembly(); elementsAssembly.ActivateBoundaryConditions = true; double[,] globalStiffnessMatrix = elementsAssembly.CreateTotalStiffnessMatrix(); ISolver newSolu = new StaticSolver(); newSolu.LinearScheme = new CholeskyFactorization(); newSolu.NonLinearScheme = new LoadControlledNewtonRaphson(); newSolu.ActivateNonLinearSolver = true; double[] externalForces = new double[] { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -2000000, 0 }; newSolu.AssemblyData = elementsAssembly; newSolu.Solve(externalForces); newSolu.PrintSolution(); }
public static void RunStaticExample() { IAssembly elementsAssembly = CreateAssembly(); elementsAssembly.CreateElementsAssembly(); elementsAssembly.ActivateBoundaryConditions = true; double[,] globalStiffnessMatrix = elementsAssembly.CreateTotalStiffnessMatrix(); ISolver newSolu = new StaticSolver(); newSolu.LinearScheme = new BiCGSTABSolver(); newSolu.NonLinearScheme = new NewtonIterations(); newSolu.ActivateNonLinearSolver = true; newSolu.NonLinearScheme.numberOfLoadSteps = 15; double[] externalForces = new double[] { 0, 0, 0, 0, -4 * 2200000, 0, 0, 0, 0, 0, 0, 0 }; newSolu.AssemblyData = elementsAssembly; newSolu.Solve(externalForces); newSolu.PrintSolution(); }
public static Results RunStaticExample() { IAssembly elementsAssembly = CreateAssembly(); elementsAssembly.CreateElementsAssembly(); elementsAssembly.ActivateBoundaryConditions = true; double[,] globalStiffnessMatrix = elementsAssembly.CreateTotalStiffnessMatrix(); ISolver newSolu = new StaticSolver(); newSolu.LinearScheme = new PCGSolver(); newSolu.NonLinearScheme = new LoadControlledNewtonRaphson(); newSolu.ActivateNonLinearSolver = false; newSolu.NonLinearScheme.numberOfLoadSteps = 10; double[] externalForces = new double[] { 0, 0, 1e9, -1e9, 0, -1e9, 0, 0 }; newSolu.AssemblyData = elementsAssembly; newSolu.Solve(externalForces); newSolu.PrintSolution(); return(new Results()); }
public static Results RunStaticExample() { double T0 = 1.0; double kc = 1.0; IAssembly elementsAssembly = CreateAssembly(); elementsAssembly.CreateElementsAssembly(); elementsAssembly.ActivateBoundaryConditions = true; double[,] globalStiffnessMatrix = elementsAssembly.CreateTotalStiffnessMatrix(); ISolver newSolu = new StaticSolver(); newSolu.LinearScheme = new PCGSolver(); newSolu.ActivateNonLinearSolver = false; double[] externalForces = new double[] { 0.0, 0.0, 0.0, (T0 + Math.Sqrt(3.0) * T0) * kc / 6.0, (2.0 * T0 + Math.Sqrt(3.0) * T0 + T0) * kc / 6.0, (T0 + Math.Sqrt(3.0) * T0) * kc / 6.0 }; newSolu.AssemblyData = elementsAssembly; newSolu.Solve(externalForces); newSolu.PrintSolution(); double[] kati = newSolu.GetSolution(); return(new Results()); }
public void RunStaticExample() { IAssembly elementsAssembly = CreateAssembly(); elementsAssembly.CreateElementsAssembly(); elementsAssembly.ActivateBoundaryConditions = true; //double[,] globalStiffnessMatrix = elementsAssembly.CreateTotalStiffnessMatrix(); ISolver newSolu = new StaticSolver(); newSolu.LinearScheme = new PCGSolver(); newSolu.NonLinearScheme = new LoadControlledNewtonRaphson(); newSolu.ActivateNonLinearSolver = true; newSolu.NonLinearScheme.numberOfLoadSteps = 100; double[] externalForces = new double[462]; for (int i = 441; i <= 462; i += 2) { externalForces[i] = -10000.0; } newSolu.AssemblyData = elementsAssembly; newSolu.Solve(externalForces); newSolu.PrintSolution(); }