internal void GridSizeChanged(GridSizes size) { mostSparseToolStripMenuItem.Checked = size == GridSizes.Large; gridSize2ToolStripMenuItem.Checked = size == GridSizes.Medium; gridSize3ToolStripMenuItem.Checked = size == GridSizes.Small; mostPreciseToolStripMenuItem.Checked = size == GridSizes.Tiny; }
internal void ChangeGridSize(GridSizes size, bool notifyUser = true) { if (Grid == null) { return; } Grid.ChangeSize(size, notifyUser); }
public void Test2DVolumeConvergenceUnstructured() { int[] orders = Enumerable.Range(0, 6).ToArray(); GridSizes[] sizes = new GridSizes[] { GridSizes.Small, GridSizes.Normal, GridSizes.Large }; double[,] results = new double[sizes.Length, orders.Length]; var rootFindingAlgorithm = new LineSegment.SafeGuardedNewtonMethod(1e-14); for (int i = 0; i < sizes.Length; i++) { ITestCase testCase = new MinGibou1EllipseArea(sizes[i], GridTypes.PseudoStructured); testCase.ScaleShifts(0.5 * testCase.GridSpacing); Program app = new Program(testCase); app.Init(null); app.SetUpEnvironment(); app.SetInitial(); testCase.ProceedToNextShift(); double referenceValue = app.SetUpConfiguration(); for (int j = 0; j < orders.Length; j++) { var result = app.PerformConfiguration( Modes.HMFClassic, orders[j], rootFindingAlgorithm: rootFindingAlgorithm); results[i, j] = Math.Abs(result.Item1 - referenceValue); } } double[] xValues = sizes.Select(s => - Math.Log(2.0) * (int)s).ToArray(); for (int j = 0; j < orders.Length; j++) { double[] yValues = new double[sizes.Length]; for (int i = 0; i < sizes.Length; i++) { yValues[i] = Math.Log(results[i, j]); } double eoc = Regression(xValues, yValues); Console.WriteLine(eoc); Assert.That( eoc > orders[j] + 1, "Convergence order too low for order " + orders[j]); } }
/// <summary> /// Changes the spacing width of the display grid. /// </summary> /// <param name="size">Size specified</param> /// <param name="notifyUser">Inform user on change</param> internal void ChangeSize(GridSizes size, bool notifyUser = true) { size = ClampSize(size); if (Size == size) { return; } Size = size; if (configValue != null) { configValue.Value = (int)Size; } if (notifyUser) { NotificationManager.ShowMessageMassive("Grid Size: " + size, 1000); } GameBase.EditorControl.GridSizeChanged(size); }
public ConstantIntegrandSingleCellSphereCutout3DTestCase(GridSizes gridSize, GridTypes gridType) : base(gridSize, gridType) { }
public Smereka2EllipseArcLength(GridSizes gridSize, GridTypes gridType) : base(gridSize, gridType) { }
internal Grid(Editor editor, GridSizes size) { this.editor = editor; ChangeSize(size, false); }
public StarTestCase(GridSizes gridSize, GridTypes gridType) : base(gridSize, gridType) { }
public MinGibou4StarArea(GridSizes gridSize, GridTypes gridType) : base(gridSize, gridType) { }
public Smereka1SquareArcLength(GridSizes gridSize, GridTypes gridType) : base(gridSize, gridType) { }
public MinGibou1EllipseArea(GridSizes gridSize, GridTypes gridType) : base(gridSize, gridType) { }
public ConstantIntgreandSphereSurfaceIntegral3DTestCase(GridSizes gridSize, GridTypes gridType) : base(gridSize, gridType) { }
/// <summary> /// Constructs a new test case. /// </summary> /// <param name="gridSize"> /// <see cref="ITestCase.GridSize"/> /// </param> /// <param name="gridType"> /// <see cref="ITestCase.GridType"/> /// </param> public TestCase(GridSizes gridSize, GridTypes gridType) { this.GridSize = gridSize; this.GridType = gridType; }
public TorusVolume3DTestCase(GridSizes gridSize, GridTypes gridType) : base(gridSize, gridType) { }
public GenericTorus3DTestCase(GridSizes gridSize, GridTypes gridType) : base(gridSize, gridType) { }
public InverseConeVolume3DTestCase(GridSizes gridSize, GridTypes gridType) : base(gridSize, gridType) { }
public SphereVolume3DNonSignedDistanceTestCase(GridSizes gridSize, GridTypes gridType) : base(gridSize, gridType) { }
public SphereVolume3DTestCase(GridSizes gridSize, GridTypes gridType) : base(gridSize, gridType) { }
public Smereka4EllipsoidSurface(GridSizes gridSize, GridTypes gridType) : base(gridSize, gridType) { }
public MinGibou3TorusQuadraticIntegrand(GridSizes gridSize, GridTypes gridType) : base(gridSize, gridType) { }
public Smereka5SphereQuadraticIntegrand(GridSizes gridSize, GridTypes gridType) : base(gridSize, gridType) { }
public SingleCubeTestCase(GridSizes gridSize, GridTypes gridType) : base(gridSize, gridType) { }
public MinGibou2EllipsoidVolume(GridSizes gridSize, GridTypes gridType) : base(gridSize, gridType) { }
public SingleCubeParaboloidVolumeTestCase(GridSizes gridSize, GridTypes gridType) : base(gridSize, gridType) { }
public MinGibou3StarArcLength(GridSizes gridSize, GridTypes gridType) : base(gridSize, gridType) { }
public SingleCubeParaboloidSurfaceAreaTestCase(GridSizes gridSize, GridTypes gridType) : base(gridSize, gridType) { }
public ChengFriesSinusoidalLength(GridSizes gridSize, GridTypes gridType) : base(gridSize, gridType) { }
public SingleTetraSurfaceTestCase(GridSizes gridSize, GridTypes gridType) : base(gridSize, gridType) { }
public SingleTetraVolumeTestCase(GridSizes gridSize, GridTypes gridType) : base(gridSize, gridType) { }
/// <summary> /// Gets the next grid size in the cycle wrapping around if next size is too big /// </summary> /// <returns>Next grid size</returns> internal static GridSizes NextGridSize(GridSizes size) { GridSizes nextSize = (GridSizes)((int)size * 2); return(nextSize <= GridSizes.Large ? nextSize : GridSizes.Tiny); }