private CartesianAnomaly CreateAnomaly(MeshParameters mesh, LateralDimensions lateral) { _logger.WriteStatus("\tCreating anomaly ..."); var size = new Size2D(mesh.Nx, mesh.Ny); var layers = new CartesianAnomalyLayer[mesh.Nz]; var zFragmentation = mesh.CreateAnomalyFragmentation(_minZ, _maxZ); WriteZFragmentation(zFragmentation); _logger.WriteStatus("\tCreating anomaly layers ..."); for (int i = 0; i < layers.Length; i++) { layers[i] = new CartesianAnomalyLayer(zFragmentation[i], zFragmentation[i + 1] - zFragmentation[i]); } var anomaly = new CartesianAnomaly(size, layers); anomaly.CreateSigma(); _logger.WriteStatus("Anomaly structure created"); FillModelDueToTopography(lateral, anomaly); return(anomaly); }
private CartesianAnomaly ConvertAnomaly(LateralDimensions lateral, CartesianSection1D section1D, decimal[] anomalyZSegmentation) { var allLayers = new CartesianAnomalyLayer[anomalyZSegmentation.Length - 1]; for (int k = 0; k < allLayers.Length; k++) { decimal zStart = anomalyZSegmentation[k]; decimal zEnd = anomalyZSegmentation[k + 1]; var thickness = zEnd - zStart; allLayers[k] = new CartesianAnomalyLayer(zStart, thickness); } var anomaly = new CartesianAnomaly(new Size2D(LocalNxLength, lateral.Ny), allLayers); if (_createSigma) { anomaly.CreateSigma(); FillSigma(section1D, anomaly, lateral); } return(anomaly); }