diff --git a/.github/workflows/pylag-package-conda-linux.yml b/.github/workflows/pylag-package-conda-linux.yml index 02a12e3b..9ca368b7 100644 --- a/.github/workflows/pylag-package-conda-linux.yml +++ b/.github/workflows/pylag-package-conda-linux.yml @@ -27,6 +27,11 @@ jobs: run: | conda info conda list + - name: Install local changes + shell: bash -l {0} + run: | + pip install . + python -c "import pylag; print(f'PyLag Git commit: {pylag.version.git_revision}')" # - name: Lint # shell: bash -l {0} # run: | diff --git a/doc/source/documentation/cookbook/initial_positions.ipynb b/doc/source/documentation/cookbook/initial_positions.ipynb index c23ddc77..357303a4 100644 --- a/doc/source/documentation/cookbook/initial_positions.ipynb +++ b/doc/source/documentation/cookbook/initial_positions.ipynb @@ -6,11 +6,11 @@ "source": [ "# Particle initial positions\n", "\n", - "In the *processing* sub-package, a number tools have been provided to help with the creation of particle initial position files. These are described below.\n", + "In the *processing* sub-package, a number tools have been provided to help with the creation of particle initial position files. Some of the key features of these tools are demonstrated below.\n", "\n", "## Release zones\n", "\n", - "To assist with connectivty studies, support for the creation of individual circular *release zones* has been added. In the *processing* sub-package, any number of particles can be placed in a release zone and their positions recorded in an initial positions file. Particles may be either *regularly* or *randomly* distributed within the zone. The former method is discontinuous, and only the latter guarantees that the specified number of particles will be added. If all particles that start out in a given *release zone* are given the same *group ID*, they can easily be tracked as a group. The following code illustrates the two ways in which particles can be scattered within a release zone." + "To assist with connectivty studies, support for the creation of individual circular *release zones* has been added. In the *processing* sub-package, any number of particles can be placed in a release zone and their positions recorded in an initial positions file. Positions may be specified in Cartesian or geographic coordiantes. Particles may be *regularly* or *randomly* distributed within the zone. The former method is discontinuous, and only the latter guarantees that the specified number of particles will be added. If all particles that start out in a given *release zone* are given the same *group ID*, they can be easily tracked as a group. The following code illustrates the two ways in which particles can be scattered within a release zone using cartesian coordinates." ] }, { @@ -20,14 +20,12 @@ "outputs": [ { "data": { - "image/png": "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\n", + "image/png": "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2/h//+//YXBwEI8//jheffVVHHvssbjooovwm9/8Jrbd7t27cdZZZ8Hj8eCpp57C448/jo8//hh33313WmNsaWnBwoUL8cgjj+DPf/4z7rvvPtjtdpx44okTzv+48sorkZ+fj2eeeQYvvPAC8vPzJ3xcv9+Pt956C2ecccaEP9+1axduuOEGXHfddXj11VexYsUKfOc738Ff//rXKWMOhUIIBoNTfk11AszPz8dVV12Fp556Cq+88gpcLhdaWlqwfv16mEwmrF+/fspYEjn99NMhCAL++Mc/zvgxiCi7/OhHP8LRo0fx61//Gr/61a9w6NAhrF27FqFQaMLtbTYbtm/fjpUrV2LOnDnYvn07tm/fjuOOOw5erxdnnHEGnn76aVx//fV4/fXX8e1vfxv3338/LrjggnGP9corr+Cxxx7Dbbfdhj//+c849dRTYz/77ne/C5PJhOeeew633HILfve732H9+vU4//zzccwxx+CFF17AFVdcgQcffBA//elPk3quH3/8Mf7zP/8TP/jBD7Bt2zZ8/etfBxCZI3bppZfimWeewf/93//hO9/5Dn7yk5/ge9/73rjHcDgc+Na3voVvf/vb2Lp1K84991xs2rQJzz77bGybrq4urFq1Cnv27MEvfvELPPPMMxgeHsbVV1897vE2b96M73znO1i6dCleeuklPProo9i9ezdOPvnkcfPZA4EALrjgApx//vl49dVXY/v+0Y9+hCuuuAJXXnllLEFZt24dPvrooylfk9dffx2nnXbahMlSMs81kXSdE6djz549AIDly5fH3W6z2VBRURH7eXTbFStWjHuM6G179+6Nu/3000/H0aNH4x6DRCLxiCCRJKKlle+//74QCASEoaEhYdu2bYLVahVOO+00IRAIxLZdtGiRsHLlyrjbBCFSimez2WJlDRdeeKFQUFAQV7oTCoWEJUuWjCt1ACDcfvvt4+Kqr6+PK/9LptQkGAwKw8PDQkFBgfDoo4+Oe46XX355Uq/JP//5TwGA8Nxzz00Yl16vF44ePRq7bWRkRCgrKxO+973vTfnY9fX1AoApvyZ6TcYKh8PCbbfdJuTl5cXuV1dXJ+zcuXPS+01VWikIglBdXS1cdNFFU8ZARMoy3dLK6LH3vPPOi9vu97//vQBA2L59e+y2K664Qqivr4/bbtWqVcLSpUvjbnv88ccFAMLv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", "text/plain": [ - "
" + "
" ] }, - "metadata": { - "needs_background": "light" - }, + "metadata": {}, "output_type": "display_data" } ], @@ -46,7 +44,7 @@ "group_id = 1 # Particle group ID\n", "n_particles = 100 # Number of particles per release zone\n", "radius = 10.0 # Release zone radius\n", - "centre = [0.0,0.0] # (x,y) coordinates of the release zone's centre\n", + "centre = [0.0,0.0] # (x,y) coordinates of the release zone's centre\n", "depth = 0.0 # Depth of particles\n", "\n", "# Create figure for plotting\n", @@ -54,14 +52,17 @@ "\n", "# Regularly spaced particles (with random=False)\n", "# ----------------------------------------------\n", - "release_zone_reg = create_release_zone(group_id, radius, centre, n_particles,\n", - " depth, random=False)\n", - "\n", - "eastings_reg, northings_reg, depth_reg = release_zone_reg.get_coords()\n", - "ax1.scatter(eastings_reg, northings_reg, c='b', marker='o')\n", + "release_zone_reg = create_release_zone(group_id=group_id,\n", + " radius=radius,\n", + " centre=centre,\n", + " n_particles=n_particles,\n", + " depth=depth,\n", + " random=False)\n", + "\n", + "x_reg, y_reg, _ = release_zone_reg.get_coordinates()\n", + "ax1.scatter(x_reg, y_reg, c='b', marker='o')\n", "ax1.add_patch(plt.Circle(centre, radius=radius, color='k', alpha=0.2))\n", - "ax1.set_title('Regular (n = {})'.format(\n", - " release_zone_reg.get_number_of_particles()))\n", + "ax1.set_title(f'Regular (n = {release_zone_reg.get_number_of_particles()})')\n", "ax1.set_xlim(-radius,radius)\n", "ax1.set_ylim(-radius,radius)\n", "ax1.set_xlabel('x (m)')\n", @@ -69,13 +70,17 @@ "\n", "# Randomly spaced particles (with random=True)\n", "# ----------------------------------------------\n", - "release_zone_rand = create_release_zone(group_id, radius, centre, n_particles, \n", - " depth, random=True)\n", - "eastings_rand, northings_rand, depth_rand = release_zone_rand.get_coords()\n", - "ax2.scatter(eastings_rand, northings_rand, c='r', marker='o')\n", + "release_zone_rand = create_release_zone(group_id=group_id,\n", + " radius=radius,\n", + " centre=centre,\n", + " n_particles=n_particles,\n", + " depth=depth,\n", + " random=True)\n", + "\n", + "x_rand, y_rand, _ = release_zone_rand.get_coordinates()\n", + "ax2.scatter(x_rand, y_rand, c='r', marker='o')\n", "ax2.add_patch(plt.Circle(centre, radius=radius, color='k', alpha=0.2))\n", - "ax2.set_title('Uniform random (n = {})'.format(\n", - " release_zone_rand.get_number_of_particles()))\n", + "ax2.set_title(f'Uniform random (n = {release_zone_rand.get_number_of_particles()})')\n", "ax2.set_xlim(-radius,radius)\n", "ax2.set_ylim(-radius,radius)\n", "ax2.set_xlabel('x (m)')\n", @@ -87,11 +92,13 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "In applied work, it is often desirable to create a set of distinct release zones, each containing some number of particles. In addition to the creation of single release zones, the *processing* sub-package includes functionality that makes it possible to create sets of release zones. Two standard approaches are supported: a) the creation of a set of release zones along a specified cord, and b) the creation of a set of release zones along the edge of a polygon. The latter method has been introduced to make it possible to create sets of adjacent release zones that follow a coastline defined by a given polygon at some spefied fixed distance from the shore. Both approaches are described below.\n", + "## Sets of release zones\n", + "\n", + "In applied work, it is often desirable to create a set of distinct release zones, each containing some number of particles. In addition to the creation of single release zones, the *processing* sub-package includes functionality that makes it possible to create sets of release zones. Two standard approaches are supported: a) the creation of a set of release zones along a specified cord, and b) the creation of a set of release zones along the edge of a polygon. The latter method has been introduced to make it possible to create sets of adjacent release zones that follow the outline of a shape defined by a polygon. This can be particularly useful when wanting to seed particles along a coastline, which can be defined by a polygon which includes a small buffer zone between its perimeter and the shore. Both approaches are described below.\n", "\n", "### Release zones along a cord\n", "\n", - "A set of adjacent, non-overlapping release zones along a cord can be created in the following way." + "A set of adjacent, non-overlapping release zones along a cord - defined by start and end coordinates that are given in geographic coordinates - can be created in the following way." ] }, { @@ -101,9 +108,9 @@ "outputs": [ { "data": { - "image/png": "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YK6mx0zlwVzlobRcWcAtkcI2MovBXE2PmcqDucpDYbnyEDoREZEKsYATERGpEAs4ERGRCvEzcEskSeYegWVirqbHTOXBXOWhsFxZwC2QpLCNzFIwV9NjpvJgrvJQWq48hE5ERKRCLOBEREQqxAJORESkQizgREREKsQCTkREpEIs4ERERCrEAk5ERKRCLOBEREQqxAJORESkQizgREREKsQCTkREpEK8FroFEnq9uYdgkZir6TFTeTBXeSgtV+6BExERqRALOBERkQqxgBMREakQCzgREZEK8SQ2S6Swm85bDOZqesxUHsxVHgrLlQXcAkkK28gsBXM1PWYqD+YqD6XlykPoREREKsQCTkREpEIs4ERERCrEAk5ERKRCLOBEREQqxAJORESkQizgREREKsQCTkREpEIs4ERERCrEAk5ERKRCvJSqBRJCmHsIFom5mh4zlQdzlYfScmUBt0QK28gsBnM1PWYqD+YqD4XlykPoREREKsQCTkREpEIs4ERERCrUYD8DLyrIrbRdCFHxcw5JqvF9YIVeX7Gxhv1UOhYAklXV77uuFeaVW84S5mRUPzLP6c5cqxxLJctVO5YG+P90t0wr9KOiORndj4xzMjbXKvtR2JyU8P9UlJ9Tq35MNacK6wulnVZXD5R2U3YiIqLKeHh44Pz585U+1iD3wBvgexYiIrIw/AyciIhIhVjAiYiIVIgFnIiISIVYwImIiFSIBVxhzp49Czs7O4wdO7bSx998801069YNDg4O6NChA958880KyyxZsgQdOnSAvb09vL29kZGRAaD05L3o6Gi4ublhypQpAICSkhJoNBocPnzYsH5CQgIkSarQ5uXlZcqpmk1dM962bRs8PDzg6+uLzMxMAEB0dDQmT55sWKa4uBj29vaVth06dEiGWdW/6nLcs2cPHnroITg6OqJ9+/Z37Wffvn2QJAmvvPKKoe3GjRsYMWIEWrVqhQULFgAALl26BEmSkJ2dbVhuwYIFlbY98sgjdZydeVSXqRACs2bNgrOzM5ydnTFz5sxyJ+V+//336NWrF+655x507NgRq1atKrduQ33+1yXXjIwMhIWFoUWLFnByckJwcDDS09MN65pzW2UBV5gpU6agT58+d31cCIF169YhJycHO3fuxLJly7Bx40bD46tXr8ZHH32EpKQkFBYWYtu2bXBxcQEA7Nq1CwDw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\n", + "image/png": "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", "text/plain": [ - "
" + "
" ] }, "metadata": {}, @@ -121,8 +128,18 @@ "from pylag.processing.release_zone import create_release_zones_along_cord\n", "from pylag.processing.plot import create_figure\n", "\n", - "def plot_release_zone_locations(release_zones, extents, epsg_code):\n", "\n", + "def plot_release_zone_locations(release_zones, extents):\n", + " \"\"\" Plot the location of particles in each release zone\n", + " \n", + " Parameters\n", + " ----------\n", + " release_zones : list\n", + " List of release zones\n", + " \n", + " extents : list\n", + " List of extents for the plot [xmin, xmax, ymin, ymax]\n", + " \"\"\" \n", " # Create figure\n", " font_size = 12\n", " projection = ccrs.PlateCarree()\n", @@ -131,7 +148,7 @@ "\n", " # Plot the location of particles in each release zone\n", " for zone in release_zones:\n", - " lons, lats = lonlat_from_utm(zone.get_eastings(), zone.get_northings(), epsg_code=epsg_code)\n", + " lons, lats, _ = zone.get_coordinates()\n", " ax.scatter(lons, lats, zorder=2, transform=projection, marker='x', color='r') \n", "\n", " # Tidy up the plot\n", @@ -152,34 +169,33 @@ " gl.left_labels=True\n", " gl.xformatter = LONGITUDE_FORMATTER\n", " gl.yformatter = LATITUDE_FORMATTER\n", - " \n", + "\n", + "\n", "# Define some common properties for release zones\n", "n_particles = 1000 # Number of particles per release zone\n", "radius = 400.0 # Release zone radius (m)\n", "depth = 0.0 # Depth that particles will be released at\n", "\n", + "# Specify that we are now working in geographic coordinates\n", + "coordinate_system = 'geographic'\n", + "\n", "# Position vector of a point toward the LHS of the Tamar Estuary (lon, lat)\n", "coords_lhs = np.array([-4.19, 50.315])\n", "\n", "# Position vector of a point toward the RHS of the Tamar Estuary (lon, lat)\n", "coords_rhs = np.array([-4.11, 50.325])\n", "\n", - "# Convert to UTM coordinates\n", - "epsg_code = '32630'\n", - "eastings, northings, _ = utm_from_lonlat([coords_lhs[0], coords_rhs[0]],\n", - " [coords_lhs[1], coords_rhs[1]],\n", - " epsg_code=epsg_code)\n", - "\n", - "# Position vectors in UTM coordinates\n", - "coords_utm_lhs = np.array([eastings[0], northings[0]])\n", - "coords_utm_rhs = np.array([eastings[1], northings[1]])\n", - "\n", "# Create release zones\n", - "release_zones = create_release_zones_along_cord(coords_utm_lhs, coords_utm_rhs, radius=radius, \n", - " n_particles=n_particles, depth=depth, random=True)\n", + "release_zones = create_release_zones_along_cord(coords_lhs,\n", + " coords_rhs,\n", + " coordinate_system=coordinate_system,\n", + " radius=radius,\n", + " n_particles=n_particles,\n", + " depth=depth,\n", + " random=True)\n", "\n", "# Plot\n", - "plot_release_zone_locations(release_zones, [-4.3, -4.0, 50.2, 50.5], epsg_code)\n", + "plot_release_zone_locations(release_zones, [-4.3, -4.0, 50.2, 50.5])\n", "\n", "plt.show()" ] @@ -192,7 +208,7 @@ "\n", "### Release zones around an arbitrary polygon\n", "\n", - "A second practical case is the need to create release zones around an arbitrary shape such as an island or country. To demonstrate this functionality, we use an example shapefile which follows the coast of the UK at a distance of 10 km. The shapefile was created using [QGIS](https://www.qgis.org/en/site/) and version 2.3.3 of the [GSHHG dataset](https://www.ngdc.noaa.gov/mgg/shorelines/)." + "A second practical case is the need to create release zones around an arbitrary shape such as an island or country. Given a single polygon that represents the shape in question, we can first create a buffer zone of a given size around the object. Using this buffer zone, we can create a set of adjacent, circular release zones around its perimeter, or some portion of it. To demonstrate this functionality, we use land boundary data from the Natural Earth dataset. We create a 10 km buffer zone around the Southwest UK coastline. Along this line, we create a set of release zones, each with a radius of 1 km and containing 100 particles. In full, the release zones extend 200 km around the coast in a clockwise direction." ] }, { @@ -202,9 +218,9 @@ "outputs": [ { "data": { - "image/png": "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\n", + "image/png": "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", "text/plain": [ - "
" + "
" ] }, "metadata": {}, @@ -212,31 +228,104 @@ } ], "source": [ - "import shapefile\n", + "import os\n", + "import subprocess\n", + "import zipfile\n", + "import geopandas as gpd\n", + "from shapely.geometry import Point\n", "\n", - "from pylag.processing.release_zone import create_release_zones_around_shape_section\n", + "from pylag.processing.release_zone import create_release_zones_around_shape\n", "\n", - "start = (-4.0, 50.3) # Lon/Lat coordinates for the approximate location of the\n", - " # first release zone to be created\n", - "target_length = 2.0e5 # Target length of path along which to create release\n", - " # zones (m)\n", - "radius = 2.0e3 # Release zone radius (m)\n", - "n_particles = 1000 # No. of particles per release zone\n", - "group_id = 1 # The Group ID\n", + "# Download shapefile data\n", + "# -----------------------\n", "\n", - "# Sample shapefile covering mainland UK\n", - "shp = shapefile.Reader('../resources/ref_shapefile')\n", - "shape_obj = shp.shape(0)\n", + "# We will use 50 m resolution land data from the Natural Earth website\n", + "land_product_name = \"ne_50m_land\"\n", + "land_data_dir = f\"./{land_product_name}\"\n", + "land_data_file_name = f\"{land_data_dir}/{land_product_name}.shp\"\n", "\n", - "# Create release zones\n", - "epsg_code = '32630'\n", - "release_zones = create_release_zones_around_shape_section(shape_obj, start, \n", - " target_length, group_id, radius, n_particles, epsg_code=epsg_code, check_overlaps=True)\n", + "# Only download the data if it hasn't been downloaded already\n", + "if not os.path.isfile(f\"{land_data_file_name}\"):\n", "\n", - "# Plot\n", - "plot_release_zone_locations(release_zones, [-6.0, -3.0, 49.5, 51.0], epsg_code=epsg_code)\n", + " # Download the data?\n", + " zip_file = f\"{land_product_name}.zip\"\n", + " if not os.path.isfile(f\"./{zip_file}\"):\n", + " url = (f\"https://www.naturalearthdata.com/http/\"\n", + " f\"/www.naturalearthdata.com/download/50m/\"\n", + " f\"physical/{zip_file}\")\n", + " download = subprocess.run([\"wget\", f\"{url}\"],\n", + " capture_output=True,\n", + " encoding='utf-8')\n", + " download.check_returncode()\n", "\n", - "plt.show()" + " # Unzip the data\n", + " with zipfile.ZipFile(f\"./{zip_file}\", \"r\") as zip_ref:\n", + " zip_ref.extractall(land_data_dir)\n", + "\n", + "\n", + "# Define characteristics of the release zones\n", + "# -------------------------------------------\n", + "\n", + "# Specify that we are working in geographic coordinates\n", + "coordinate_system = 'geographic'\n", + "\n", + "# Location where we want to start creating release zones\n", + "start_loc = Point(-4., 50.3)\n", + "\n", + "# Target length of path along which to create release zones (200 km)\n", + "target_length = 2.0e5\n", + "\n", + "# Radius of release zones (1000 m)\n", + "radius = 1000.0\n", + "\n", + "# Number of particles to release per release zone\n", + "n_particles = 100\n", + "\n", + "\n", + "# Read in the data\n", + "# ----------------\n", + "gdf = gpd.read_file(land_data_file_name)\n", + "\n", + "# Extract data for Ireland and UK\n", + "gdf = gdf.cx[-10.0:0.0, 50.0:60.0]\n", + "\n", + "\n", + "# Determine the closest polygon to the start location\n", + "# ---------------------------------------------------\n", + "\n", + "# Convert shapefile to UTM coordinates, EPSG:32630\n", + "utm_epsg_code = '32630'\n", + "gdf = gdf.to_crs(epsg=utm_epsg_code)\n", + "\n", + "# Create a copy of the data\n", + "gdf_buffered = gdf.copy()\n", + "\n", + "# Add 10,000 m buffer\n", + "buffer_size = 1.e4\n", + "gdf_buffered['geometry'] = gdf_buffered.buffer(buffer_size)\n", + "\n", + "# Find closest polygon\n", + "closest_polygon = gdf_buffered.distance(start_loc).idxmin()\n", + "\n", + "# Convert back to lon/lat\n", + "gdf = gdf.to_crs(epsg=4326)\n", + "gdf_buffered = gdf_buffered.to_crs(epsg=4326)\n", + "\n", + "# Extract the closest polygon\n", + "poly = gdf_buffered.loc[closest_polygon, 'geometry']\n", + "\n", + "# Create release zones\n", + "# --------------------\n", + "release_zones = create_release_zones_around_shape(poly,\n", + " start_loc,\n", + " coordinate_system=coordinate_system,\n", + " target_length=target_length,\n", + " release_zone_radius=radius,\n", + " n_particles=n_particles)\n", + "\n", + "# Plot the release zones\n", + "# ----------------------\n", + "plot_release_zone_locations(release_zones, [-6.0, -3.5, 49.5, 51.])" ] }, { @@ -272,7 +361,7 @@ "# ------------\n", "\n", "# Output filename\n", - "file_name = '{}/initial_positions_single_group.dat'.format(test_dir)\n", + "file_name = f'{test_dir}/initial_positions_single_group.dat'\n", "\n", "# Write test data to file\n", "n_particles = 2\n", @@ -291,7 +380,7 @@ "# -----------\n", "\n", "# Output filename\n", - "file_name = '{}/initial_positions_multi_group.dat'.format(test_dir)\n", + "file_name = f'{test_dir}/initial_positions_multi_group.dat'\n", "\n", "# Here, we reuse the release zone object created previously\n", "create_initial_positions_file_multi_group(file_name, release_zones)" @@ -314,7 +403,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.10" + "version": "3.11.4" } }, "nbformat": 4, diff --git a/doc/source/documentation/resources/ref_shapefile.dbf b/doc/source/documentation/resources/ref_shapefile.dbf deleted file mode 100644 index 1a829702..00000000 Binary files a/doc/source/documentation/resources/ref_shapefile.dbf and /dev/null differ diff --git a/doc/source/documentation/resources/ref_shapefile.prj b/doc/source/documentation/resources/ref_shapefile.prj deleted file mode 100644 index a30c00a5..00000000 --- a/doc/source/documentation/resources/ref_shapefile.prj +++ /dev/null @@ -1 +0,0 @@ -GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]] \ No newline at end of file diff --git a/doc/source/documentation/resources/ref_shapefile.qpj b/doc/source/documentation/resources/ref_shapefile.qpj deleted file mode 100644 index 5fbc831e..00000000 --- a/doc/source/documentation/resources/ref_shapefile.qpj +++ /dev/null @@ -1 +0,0 @@ -GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]] diff --git a/doc/source/documentation/resources/ref_shapefile.shp b/doc/source/documentation/resources/ref_shapefile.shp deleted file mode 100644 index 19c2c22b..00000000 Binary files a/doc/source/documentation/resources/ref_shapefile.shp and /dev/null differ diff --git a/doc/source/documentation/resources/ref_shapefile.shx b/doc/source/documentation/resources/ref_shapefile.shx deleted file mode 100644 index 0aee969b..00000000 Binary files a/doc/source/documentation/resources/ref_shapefile.shx and /dev/null differ diff --git a/doc/source/examples/arakawa_a_forward_tracking.ipynb b/doc/source/examples/arakawa_a_forward_tracking.ipynb index 6a8907b5..5a044f0b 100644 --- a/doc/source/examples/arakawa_a_forward_tracking.ipynb +++ b/doc/source/examples/arakawa_a_forward_tracking.ipynb @@ -66,10 +66,6 @@ "lat = 50.32\n", "lon = -4.17\n", "\n", - "# Convert to UTM coordinates\n", - "epsg_code = '32630'\n", - "easting, northing, _ = utm_from_lonlat([lon], [lat], epsg_code=epsg_code)\n", - "\n", "# Release zone radius (m)\n", "radius = 200.0\n", "\n", @@ -84,7 +80,8 @@ "# Create the release zone\n", "surface_release_zone = create_release_zone(group_id = group_id,\n", " radius = radius,\n", - " centre = [easting, northing],\n", + " centre = [lon, lat],\n", + " coordinate_system = 'geographic',\n", " n_particles = n_particles_target,\n", " depth = depth_below_surface,\n", " random = False)\n", @@ -92,23 +89,18 @@ "# Get the actual number of particles\n", "n_particles = surface_release_zone.get_number_of_particles()\n", "\n", - "# Convert to lat/lon coordinates\n", - "lons, lats = lonlat_from_utm(surface_release_zone.get_eastings(),\n", - " surface_release_zone.get_northings(),\n", - " epsg_code=epsg_code)\n", - "\n", - "# Get depths\n", - "depths = surface_release_zone.get_depths()\n", + "# Get coordinates\n", + "lons, lats, depths = surface_release_zone.get_coordinates()\n", "\n", "# Create input sub-directory\n", - "input_dir = '{}/input'.format(simulation_dir)\n", + "input_dir = f'{simulation_dir}/input'\n", "try:\n", " os.makedirs(input_dir)\n", "except FileExistsError:\n", " pass\n", "\n", "# Output filename\n", - "file_name = '{}/initial_positions.dat'.format(input_dir)\n", + "file_name = f'{input_dir}/initial_positions.dat'\n", "\n", "# Write data to file\n", "create_initial_positions_file_single_group(file_name,\n", @@ -246,7 +238,8 @@ "# Create figure\n", "font_size = 15\n", "cmap = colourmap('h_r')\n", - "fig, ax = create_figure(figure_size=(26., 26.), projection=ccrs.PlateCarree(), font_size=font_size, bg_color='gray')\n", + "fig, ax = create_figure(figure_size=(26., 26.), projection=ccrs.PlateCarree(),\n", + " font_size=font_size, bg_color='gray')\n", "\n", "# Configure plotter\n", "plotter = ArakawaAPlotter(grid_metrics_file_name,\n", @@ -261,8 +254,9 @@ "plotter.scatter(ax, [-4.17], [50.25], marker='o', c='r')\n", "x, y = ax.projection.transform_point(-4.17, 50.25, src_crs=ccrs.PlateCarree())\n", "ax.annotate('L4', xy=(x, y), xytext=(0.2, 0.35), textcoords='axes fraction',\n", - " arrowprops=dict(facecolor='red', edgecolor='red', width=1, headwidth=10, headlength=20, shrink=0.05),\n", - " fontsize=font_size, color='red')\n", + " arrowprops=dict(facecolor='red', edgecolor='red', width=1, headwidth=10,\n", + " headlength=20, shrink=0.05),\n", + " fontsize=font_size, color='red')\n", "plotter.set_title(ax, 'Full grid (without grid lines)')\n", "\n", "# Grid subset (centered on Rame Head)\n", @@ -271,7 +265,8 @@ "# Create figure\n", "font_size = 15\n", "cmap = colourmap('h_r')\n", - "fig, ax = create_figure(figure_size=(26., 26.), projection=ccrs.PlateCarree(), font_size=font_size, bg_color='gray')\n", + "fig, ax = create_figure(figure_size=(26., 26.), projection=ccrs.PlateCarree(),\n", + " font_size=font_size, bg_color='gray')\n", "\n", "# Configure plotter\n", "plotter = ArakawaAPlotter(grid_metrics_file_name,\n", @@ -496,7 +491,8 @@ "# Plot extents\n", "extents = np.array([-4.3, -4.05, 50.25, 50.4], dtype=float)\n", "\n", - "fig, ax = create_figure(figure_size=(26., 26.), projection=ccrs.PlateCarree(), font_size=font_size, bg_color='gray')\n", + "fig, ax = create_figure(figure_size=(26., 26.), projection=ccrs.PlateCarree(),\n", + " font_size=font_size, bg_color='gray')\n", "\n", "# Create plot of release \n", "plotter = ArakawaAPlotter(grid_metrics_file_name,\n", @@ -549,7 +545,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.15" + "version": "3.11.4" } }, "nbformat": 4, diff --git a/doc/source/examples/fvcom_backward_tracking.ipynb b/doc/source/examples/fvcom_backward_tracking.ipynb index d1de4c1f..1f953f13 100644 --- a/doc/source/examples/fvcom_backward_tracking.ipynb +++ b/doc/source/examples/fvcom_backward_tracking.ipynb @@ -65,10 +65,6 @@ "lat = 50.32\n", "lon = -4.17\n", "\n", - "# Convert to UTM coordinates\n", - "epsg_code = get_epsg_code(lon, lat)\n", - "easting, northing, _ = utm_from_lonlat([lon], [lat], epsg_code=epsg_code)\n", - "\n", "# Release zone radius (m)\n", "radius = 200.0\n", "\n", @@ -83,7 +79,8 @@ "# Create the release zone\n", "surface_release_zone = create_release_zone(group_id = group_id,\n", " radius = radius,\n", - " centre = [easting, northing],\n", + " centre = [lon, lat],\n", + " coordinate_system = 'geographic',\n", " n_particles = n_particles_target,\n", " depth = depth_below_surface,\n", " random = False)\n", @@ -91,6 +88,13 @@ "# Get the actual number of particles\n", "n_particles = surface_release_zone.get_number_of_particles()\n", "\n", + "# Get coordinates of the particles. NB - we're going to run\n", + "# the model in cartesian coordinates. Objects of type\n", + "# ReleaseZone have a method that allows one to transform\n", + "# geographic coordinates into UTM coordinates with units\n", + "# of m. We use this here.\n", + "eastings, northings, depths, epsg_code = surface_release_zone.get_utm_coordinates()\n", + "\n", "# Create input sub-directory\n", "input_dir = f\"{simulation_dir}/input\"\n", "try:\n", @@ -105,9 +109,9 @@ "create_initial_positions_file_single_group(file_name,\n", " n_particles,\n", " group_id,\n", - " surface_release_zone.get_eastings(),\n", - " surface_release_zone.get_northings(),\n", - " surface_release_zone.get_depths())" + " eastings,\n", + " northings,\n", + " depths)" ] }, { @@ -123,18 +127,7 @@ "cell_type": "code", "execution_count": 3, "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "'/home/jcl/code/git/PyLag/PyLag/doc/source/examples/simulations/fvcom_backward/input/grid_metrics.nc'" - ] - }, - "execution_count": 3, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "from shutil import copyfile\n", "\n", @@ -210,7 +203,18 @@ "cell_type": "code", "execution_count": 5, "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "Starting ensemble member 1 ...\n", + "Progress:\n", + "100% |###########################################|\n" + ] + } + ], "source": [ "# Change to the run directory\n", "os.chdir(f\"{simulation_dir}\")\n", @@ -282,7 +286,8 @@ "# Plot extents\n", "extents = np.array([-4.3, -4.05, 50.25, 50.4], dtype=float)\n", "\n", - "fig, ax = create_figure(figure_size=(26., 26.), projection=ccrs.PlateCarree(), font_size=font_size, bg_color='gray')\n", + "fig, ax = create_figure(figure_size=(26., 26.), projection=ccrs.PlateCarree(),\n", + " font_size=font_size, bg_color='gray')\n", "\n", "# Configure plotter\n", "plotter = FVCOMPlotter(grid_metrics_file_name,\n", @@ -329,7 +334,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -343,7 +348,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.8.5" + "version": "3.11.4" } }, "nbformat": 4, diff --git a/doc/source/examples/fvcom_forward_tracking.ipynb b/doc/source/examples/fvcom_forward_tracking.ipynb index 4d6b2b1e..de328a87 100644 --- a/doc/source/examples/fvcom_forward_tracking.ipynb +++ b/doc/source/examples/fvcom_forward_tracking.ipynb @@ -157,10 +157,6 @@ "lat = 50.32\n", "lon = -4.17\n", "\n", - "# Convert to UTM coordinates\n", - "epsg_code = get_epsg_code(lon, lat)\n", - "easting, northing, _ = utm_from_lonlat([lon], [lat], epsg_code=epsg_code)\n", - "\n", "# Release zone radius (m)\n", "radius = 200.0\n", "\n", @@ -175,7 +171,8 @@ "# Create the release zone\n", "surface_release_zone = create_release_zone(group_id = group_id,\n", " radius = radius,\n", - " centre = [easting, northing],\n", + " centre = [lon, lat],\n", + " coordinate_system = 'geographic',\n", " n_particles = n_particles_target,\n", " depth = depth_below_surface,\n", " random = False)\n", @@ -183,6 +180,13 @@ "# Get the actual number of particles\n", "n_particles = surface_release_zone.get_number_of_particles()\n", "\n", + "# Get coordinates of the particles. NB - we're going to run\n", + "# the model in cartesian coordinates. Objects of type\n", + "# ReleaseZone have a method that allows one to transform\n", + "# geographic coordinates into UTM coordinates with units\n", + "# of m. We use this here.\n", + "eastings, northings, depths, epsg_code = surface_release_zone.get_utm_coordinates() \n", + "\n", "# Create input sub-directory\n", "input_dir = f\"{simulation_dir}/input\"\n", "try:\n", @@ -197,9 +201,9 @@ "create_initial_positions_file_single_group(file_name,\n", " n_particles,\n", " group_id,\n", - " surface_release_zone.get_eastings(),\n", - " surface_release_zone.get_northings(),\n", - " surface_release_zone.get_depths())\n" + " eastings,\n", + " northings,\n", + " depths)" ] }, { @@ -226,10 +230,8 @@ } ], "source": [ - "# Convert utm coords to degrees\n", - "lons, lats = lonlat_from_utm(surface_release_zone.get_eastings(),\n", - " surface_release_zone.get_northings(),\n", - " epsg_code=epsg_code)\n", + "# Get lon/lat coordinates\n", + "lons, lats, _ = surface_release_zone.get_coordinates()\n", "\n", "# Create figure\n", "font_size = 15\n", @@ -244,8 +246,8 @@ "\n", "# Plot bathymetry\n", "extents = np.array([-4.21, -4.15, 50.30, 50.33], dtype=float)\n", - "ax, plot = plotter.plot_field(ax, bathy, extents=extents, add_colour_bar=True, cb_label='Depth (m)',\n", - " vmin=-60., vmax=0., cmap=cmap)\n", + "ax, plot = plotter.plot_field(ax, bathy, extents=extents, add_colour_bar=True,\n", + " cb_label='Depth (m)', vmin=-60., vmax=0., cmap=cmap)\n", "\n", "# Overlay grid\n", "plotter.draw_grid(ax, linewidth=1.0)\n", @@ -377,7 +379,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 7, "metadata": {}, "outputs": [], "source": [ @@ -473,8 +475,8 @@ " font_size=font_size)\n", "\n", "# Plot the bathymetry again. We'll overlay pathlines on top of this.\n", - "plotter.plot_field(ax, bathy, extents=extents, add_colour_bar=True, cb_label='Depth (m)',\n", - " vmin=-60., vmax=0., cmap=cmap)\n", + "plotter.plot_field(ax, bathy, extents=extents, add_colour_bar=True,\n", + " cb_label='Depth (m)', vmin=-60., vmax=0., cmap=cmap)\n", "\n", "# Dataset holding particle positions\n", "viewer = Viewer(file_name, time_rounding=900)\n", @@ -537,7 +539,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.15" + "version": "3.11.4" } }, "nbformat": 4, diff --git a/doc/source/examples/global_arakawa_a_forward_tracking.ipynb b/doc/source/examples/global_arakawa_a_forward_tracking.ipynb index c2ec3368..112e1ef0 100644 --- a/doc/source/examples/global_arakawa_a_forward_tracking.ipynb +++ b/doc/source/examples/global_arakawa_a_forward_tracking.ipynb @@ -74,11 +74,6 @@ "lat = 28.5\n", "lon = -78.7\n", "\n", - "# Convert to UTM coordinates\n", - "easting, northing, epsg_code = utm_from_lonlat([lon], [lat])\n", - "easting = easting[0]\n", - "northing = northing[0]\n", - "\n", "# Release zone radius (m)\n", "radius = 10000.0\n", "\n", @@ -91,7 +86,8 @@ "# Create the release zone\n", "surface_release_zone = create_release_zone(group_id = group_id,\n", " radius = radius,\n", - " centre = [easting, northing],\n", + " centre = [lon, lat],\n", + " coordinate_system = 'geographic',\n", " n_particles = n_particles_target,\n", " depth = depth_below_surface,\n", " random = True)\n", @@ -100,12 +96,7 @@ "n_particles = surface_release_zone.get_number_of_particles()\n", "\n", "# Convert to lat/lon coordinates\n", - "lons, lats = lonlat_from_utm(surface_release_zone.get_eastings(),\n", - " surface_release_zone.get_northings(),\n", - " epsg_code)\n", - "\n", - "# Get depths\n", - "depths = surface_release_zone.get_depths()\n", + "lons, lats, depths = surface_release_zone.get_coordinates()\n", "\n", "# Output filename\n", "file_name = '{}/initial_positions.dat'.format(input_dir)\n", @@ -412,14 +403,14 @@ "extents = np.array([-90, -30, 20, 50], dtype=float)\n", "\n", "# Projection\n", - "#projection = ccrs.NearsidePerspective(central_longitude=-60.0, central_latitude=35.0, satellite_height=35785800)\n", "projection = ccrs.PlateCarree()\n", "\n", "# Plot positions after 180 and 360 days\n", "for tof in [180, 360]:\n", "\n", " # Create figure\n", - " fig, ax1 = create_figure(figure_size=(26., 26.), projection=projection, font_size=font_size, bg_color='white')\n", + " fig, ax1 = create_figure(figure_size=(26., 26.), projection=projection,\n", + " font_size=font_size, bg_color='white')\n", "\n", " # Create plotter \n", " plotter = ArakawaAPlotter(grid_metrics_file_name,\n", @@ -469,7 +460,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.7" + "version": "3.11.4" } }, "nbformat": 4, diff --git a/doc/source/examples/roms_txla.ipynb b/doc/source/examples/roms_txla.ipynb index 3226daae..8651929f 100644 --- a/doc/source/examples/roms_txla.ipynb +++ b/doc/source/examples/roms_txla.ipynb @@ -139,9 +139,6 @@ "lat = 29.2\n", "lon = -91.8\n", "\n", - "# Convert to UTM coordinates\n", - "easting, northing, epsg_code = utm_from_lonlat([lon], [lat])\n", - "\n", "# Release zone radius (m)\n", "radius = 10000.0\n", "\n", @@ -156,7 +153,8 @@ "# Create the release zone\n", "surface_release_zone = create_release_zone(group_id = group_id,\n", " radius = radius,\n", - " centre = [easting, northing],\n", + " centre = [lon, lat],\n", + " coordinate_system = 'geographic',\n", " n_particles = n_particles_target,\n", " depth = depth_below_surface,\n", " random = False)\n", @@ -164,13 +162,8 @@ "# Get the actual number of particles\n", "n_particles = surface_release_zone.get_number_of_particles()\n", "\n", - "# Convert to lat/lon coordinates\n", - "lons, lats = lonlat_from_utm(surface_release_zone.get_eastings(),\n", - " surface_release_zone.get_northings(),\n", - " epsg_code)\n", - "\n", - "# Get depths\n", - "depths = surface_release_zone.get_depths()\n", + "# Get coordinates\n", + "lons, lats, depths = surface_release_zone.get_coordinates()\n", "\n", "# Create input sub-directory\n", "input_dir = f'{simulation_dir}/input'\n", @@ -21700,7 +21693,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.10" + "version": "3.11.4" } }, "nbformat": 4, diff --git a/doc/source/examples/stokes_drift_and_leeway.ipynb b/doc/source/examples/stokes_drift_and_leeway.ipynb index cf98d5f2..9fba1c3a 100644 --- a/doc/source/examples/stokes_drift_and_leeway.ipynb +++ b/doc/source/examples/stokes_drift_and_leeway.ipynb @@ -292,14 +292,6 @@ "lon = -4.17\n", "lat = 50.25\n", "\n", - "# Convert to UTM coordinates\n", - "epsg_code = get_epsg_code(lon, lat)\n", - "easting, northing, _ = utm_from_lonlat(lon, lat, epsg_code=epsg_code)\n", - "\n", - "# utm_from_lonlat returns lists - take the first element only\n", - "easting = easting[0]\n", - "northing = northing[0]\n", - "\n", "# Release zone radius (m)\n", "radius = 500.0\n", "\n", @@ -312,18 +304,14 @@ "# Create the release zone\n", "surface_release_zone = create_release_zone(group_id = group_id,\n", " radius = radius,\n", - " centre = [easting, northing],\n", + " centre = [lon, lat],\n", + " coordinate_system = 'geographic',\n", " n_particles = n_particles,\n", " depth = depth_below_surface,\n", " random = True)\n", "\n", - "# Convert to lat/lon coordinates\n", - "lons, lats = lonlat_from_utm(surface_release_zone.get_eastings(),\n", - " surface_release_zone.get_northings(),\n", - " epsg_code=epsg_code)\n", - "\n", - "# Get depths\n", - "depths = surface_release_zone.get_depths()\n", + "# Get coordinates\n", + "lons, lats, depths = surface_release_zone.get_coordinates()\n", "\n", "# Write data to file\n", "file_name = f'{input_dir}/initial_positions.dat'.format(input_dir)\n", @@ -699,7 +687,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.15" + "version": "3.11.4" } }, "nbformat": 4, diff --git a/pylag/exceptions.py b/pylag/exceptions.py index 86e4e4b1..1cf13aa6 100644 --- a/pylag/exceptions.py +++ b/pylag/exceptions.py @@ -15,6 +15,10 @@ class PyLagRuntimeError(PyLagException): pass +class PyLagAttributeError(PyLagException): + pass + + class PyLagValueError(PyLagException): pass diff --git a/pylag/processing/input.py b/pylag/processing/input.py index bc7da937..35a68b88 100644 --- a/pylag/processing/input.py +++ b/pylag/processing/input.py @@ -91,10 +91,9 @@ def create_initial_positions_file_multi_group(filename, release_zones): f = open(filename, 'w') f.write(str(n) + '\n') for release_zone in release_zones: - eastings = release_zone.get_eastings() - northings = release_zone.get_northings() - depths = release_zone.get_depths() - for x, y, z in zip(eastings, northings, depths): - line = str(release_zone.get_group_id()) + ' ' + str(x) + ' ' + str(y) + ' ' + str(z) + '\n' + x_arr, y_arr, z_arr = release_zone.get_coordinates() + for x, y, z in zip(x_arr, y_arr, z_arr): + line = (str(release_zone.group_id) + + ' ' + str(x) + ' ' + str(y) + ' ' + str(z) + '\n') f.write(line) f.close() diff --git a/pylag/processing/release_zone.py b/pylag/processing/release_zone.py index 7e29d647..86d97359 100644 --- a/pylag/processing/release_zone.py +++ b/pylag/processing/release_zone.py @@ -5,11 +5,13 @@ from __future__ import division, print_function import numpy as np -import numbers from scipy.spatial import ConvexHull +from typing import Optional -from pylag.exceptions import PyLagRuntimeError -from pylag.processing.coordinate import utm_from_lonlat, lonlat_from_utm, get_epsg_code +from pylag.exceptions import PyLagAttributeError +from pylag.processing.coordinate import utm_from_lonlat +from pylag.processing.coordinate import lonlat_from_utm +from pylag.processing.coordinate import get_epsg_code have_shapely = True try: @@ -26,48 +28,94 @@ class ReleaseZone(object): Parameters ---------- - group_id : int - Group ID associated with the release zone + group_id : int, optional + Group ID associated with the release zone. Optional, + defaults to 1. - radius : float - The radius of the release zone in m. - - centre : array_like - Two element array giving the coordinates of the centre of the release zone. + radius : float, optional + The radius of the release zone in m. Optional, defaults to 100.0 m. + + centre : array_like, optional + Two element array giving the coordinates of the centre of the + release zone. Optional, defaults to [0.0, 0.0]. + + coordinate_system : str, optional + Coordinate system used to interpret the given `centre` coordinates. + The options are 'geographic' or 'cartesian' (default). If 'geographic' + is given, the coordinates are assumed to be in lon/lat. If 'cartesian' + is given, the coordinates are assumed to be in x/y. + + epsg_code : str, optional + EPSG code which should be used to covert to UTM coordiantes. If + not given, the EPSG code will be inferred from `centre`. If working + in cartesian coordinates, this argument is ignored. """ - def __init__(self, group_id=1, radius=100.0, centre=[0.0, 0.0]): + def __init__(self, group_id: Optional[int] = 1, + radius: Optional[float] = 100.0, + centre = [0.0, 0.0], + coordinate_system: Optional[str]='cartesian', + epsg_code: Optional[str]=None): self.__group_id = group_id self.__radius = radius - self.__centre = centre + self.__coordinate_system = coordinate_system + self.__epsg_code = epsg_code + + if self.__coordinate_system == 'geographic': + eastings, northings, epsg_code_centre = utm_from_lonlat( + centre[0], centre[1]) + + self.__centre = [eastings[0], northings[0]] + + if epsg_code is None: + self.__epsg_code = epsg_code_centre + + elif self.__coordinate_system == 'cartesian': + self.__centre = [centre[0], centre[1]] + self.__epsg_code = None + + else: + raise ValueError(f"Unrecognised coordinate system " + f"{self.__coordinate_system}. " + f"Options are 'geographic' or 'cartesian'.") + + # The particle set is a list of tuples of the form (x, y, z) + # where x, y and z are the particle coordinates. Initially, the + # particle set is empty. Particles are added to the set using + # the add_particle method. self.__particle_set = [] - def create_particle_set(self, n_particles=100, z=0.0, random=True): + def create_particle_set(self, n_particles: Optional[int]=100, + z: Optional[float]=0.0, + random: Optional[bool]=True): """ Create a new particle set - Create a new particle set (`n=n_particles`). The spatial coordinates of - each particle are computed. If random is true, exactly n, random, - uniformly distributed particles will be created. If false, particles are - uniformly distributed on a cartesian grid, which is then filtered for - the area encompassed by the release zone, which is determined from the - radius. The latter algorithm yields a particle set with `n <= n_particles` - where `|n - n_particles| / n -> 1` for large n. The former guarantees - that positions for exactly n particles are created. However, for small n - the particle distribution with be patchy. All particles are created are - given the same depth coordinates. + Create a new particle set (`n=n_particles`). The spatial coordinates + of each particle are computed. If random is true, exactly n, random, + uniformly distributed particles will be created. If false, particles + are uniformly distributed on a cartesian grid, which is then filtered + for the area encompassed by the release zone, which is determined + from the radius. The latter algorithm yields a particle set with + `n <= n_particles` where `|n - n_particles| / n -> 1` for large n. + The former guarantees that positions for exactly n particles are + created. However, for small n the particle distribution with be + patchy. All particles created are given the same depth + coordinates. Parameters ---------- n_particles : int, optional - The number of particles to be created and added to the release zone. + The number of particles to be created and added to the + release zone. Defaults to 100. z : float, optional - The depth of the particles. + The depth of the particles. Defaults to 0.0 m. random : bool, optional If True (default) create particle positions at random. This guarantees that n_particles will be added to the release zone. If - False, particles are regularly spaced on a Cartesian grid, which is - then filtered for the area of the circle. + False, particles are regularly spaced on a Cartesian grid, which + is then filtered for the area of the circle. Optional, defaults to + True. Returns ------- @@ -80,7 +128,9 @@ def create_particle_set(self, n_particles=100, z=0.0, random=True): # If random, create a set of n randomly distributed particles. if random: - radii = self.__radius * np.sqrt(np.random.uniform(0.0, 1.0, n_particles)) + radii = self.__radius * np.sqrt(np.random.uniform(0.0, + 1.0, + n_particles)) angles = np.random.uniform(0.0, 2.0 * np.pi, n_particles) for r, theta in zip(radii, angles): x = r * np.cos(theta) + self.__centre[0] @@ -88,17 +138,21 @@ def create_particle_set(self, n_particles=100, z=0.0, random=True): self.add_particle(x, y, z) return - # Filtered cartesian grid. Assume each particle sits at the centre of a square - # of length delta, which is then equivalent to the particle separation. - delta = np.sqrt(self.get_area() / float(n_particles)) + # Filtered cartesian grid. Assume each particle sits at the centre + # of a square of length delta, which is then equivalent to the + # particle separation. + delta = np.sqrt(self.area / float(n_particles)) n_coords_xy = int(2.0 * self.__radius / delta) # Form a regular square grid of particle positions centered on centre - x_vals = np.linspace(self.__centre[0] - self.__radius, self.__centre[0] + self.__radius, n_coords_xy) - y_vals = np.linspace(self.__centre[1] - self.__radius, self.__centre[1] + self.__radius, n_coords_xy) + x_vals = np.linspace(self.__centre[0] - self.__radius, + self.__centre[0] + self.__radius, n_coords_xy) + y_vals = np.linspace(self.__centre[1] - self.__radius, + self.__centre[1] + self.__radius, n_coords_xy) x_coords, y_coords = np.meshgrid(x_vals, y_vals) - # Now filter for points lying inside the arc of C (handled by add_particle) + # Now filter for points lying inside the arc of C (handled by + # add_particle) for x, y in zip(x_coords.flatten(), y_coords.flatten()): try: self.add_particle(x, y, z) @@ -106,72 +160,174 @@ def create_particle_set(self, n_particles=100, z=0.0, random=True): pass return - def get_group_id(self): - """ Return the group ID - - Returns - ------- - : int - The group ID. - """ + @property + def group_id(self): return self.__group_id + + @group_id.setter + def group_id(self, value: Optional[int]): + self.__group_id = value - def set_group_id(self, id): - """ Set the group ID + @property + def radius(self): + return self.__radius + + @radius.setter + def radius(self, value: Optional[float]): + raise PyLagAttributeError("Radius is immutable.") - Parameters - ---------- - id : int - The group ID. + @property + def area(self): + return np.pi * self.__radius * self.__radius - Returns - ------- - : None - """ - self.__group_id = id + @property + def centre(self): + return [x for x in self.__centre] - def get_radius(self): - """ Get the radius + @centre.setter + def centre(self, value: Optional[list]): + raise PyLagAttributeError("Centre is immutable.") - Returns - ------- - : float - The radius of the relase zone + @property + def coordinate_system(self): + return self.__coordinate_system - """ - return self.__radius + @coordinate_system.setter + def coordinate_system(self, value: Optional[str]): + raise PyLagAttributeError("Coordinate system is immutable.") - def get_area(self): - """ Get the area + @property + def epsg_code(self): + if self.__coordinate_system == 'geographic': + return self.__epsg_code + else: + raise PyLagAttributeError("No EPSG code available for " + "release zones defined in " + "cartesian coordinates.") - Returns - ------- - : float - The area of the release zone + @epsg_code.setter + def epsg_code(self, value: Optional[str]): + raise PyLagAttributeError("EPSG code is immutable.") - """ - return np.pi * self.__radius * self.__radius + @property + def particle_set(self): + return [p for p in self.__particle_set] + + @particle_set.setter + def particle_set(self, value: Optional[list]): + raise PyLagAttributeError("Particle set is immutable.") + + # Methods used to get the coordinates of particles in the release zone + # --------------------------------------------------------------------- + + @property + def x_coordinates(self): + if self.__coordinate_system == 'cartesian': + return [coords[0] for coords in self.__particle_set] + else: + x = [coords[0] for coords in self.__particle_set] + y = [coords[1] for coords in self.__particle_set] + lons, _ = lonlat_from_utm(x, y, self.__epsg_code) + + return lons + + @x_coordinates.setter + def x_coordinates(self, value: Optional[list]): + raise PyLagAttributeError("X coordinates are immutable.") + + @property + def y_coordinates(self): + if self.__coordinate_system == 'cartesian': + return [coords[1] for coords in self.__particle_set] + else: + x = [coords[0] for coords in self.__particle_set] + y = [coords[1] for coords in self.__particle_set] + _, lats = lonlat_from_utm(x, y, self.__epsg_code) + + return lats + + @y_coordinates.setter + def y_coordinates(self, value: Optional[list]): + raise PyLagAttributeError("Y coordinates are immutable.") + + @property + def z_coordinates(self): + return [coords[2] for coords in self.__particle_set] - def get_centre(self): - """ Get the central coordinates + @z_coordinates.setter + def z_coordinates(self, value: Optional[list]): + raise PyLagAttributeError("Z coordinates are immutable.") + + def get_coordinates(self): + """ Get particle coordinates Returns ------- - : array_list - Array of central coordinates [x, y]. + : array_like + Particle x-coordinates + + : array_like + Particle y-coordinates + : array_like + Particle z-coordinates """ - return self.__centre + return self.x_coordinates, self.y_coordinates, self.z_coordinates - def get_particle_set(self): - """ Get the particle set + def get_centre_utm_coordinates(self): + """ Get UTM transformed centre coordinates + """ + if self.coordinate_system == 'geographic': + # Transform centre coordinates to UTM + easting, northing, _ = utm_from_lonlat(self.__centre[0], + self.__centre[1], + self.__epsg_code) + return [easting[0], northing[0]] + else: + raise PyLagAttributeError("Cannot return UTM coordinates for " + "release zones defined in cartesian " + "coordinates.") + + def get_utm_coordinates(self): + """ Get particle UTM coordinates + + Return UTM coordiantes for all particles in the set. This + method will raise an exception if the release zone is defined + in cartesian coordinates. For release zones defined in + geographic coordinates, convert these coordinates to UTM + coordiantes and return. The returned coordinates are in the + form (eastings, northings, depths). The EPSG code used to + transform from geographic to UTM coordinates is also returned. + + Parameters + ---------- + N/A Returns ------- - : list[tuple] - List of tuples of particle coordinates + eastings : array_like + Eastings in m. + + northings : array_like + Northings in m. + + depths : array_like + Depths in m. + + epsg_code : str + EPSG code used to transform from geographic to UTM + coordinates. """ - return self.__particle_set + if self.__coordinate_system == "geographic": + eastings = [coords[0] for coords in self.__particle_set] + northings = [coords[1] for coords in self.__particle_set] + depths = [coords[2] for coords in self.__particle_set] + + return eastings, northings, depths, self.__epsg_code + else: + raise PyLagAttributeError("Cannot return UTM coordinates for " + "release zones defined in cartesian " + "coordinates.") def add_particle(self, x, y, z): """ Add a particle to the release zone @@ -191,10 +347,14 @@ def add_particle(self, x, y, z): ------- : None """ - if np.sqrt((x-self.__centre[0]) * (x-self.__centre[0]) + (y-self.__centre[1]) * (y-self.__centre[1])) <= self.__radius: + delta_x = x - self.__centre[0] + delta_y = y - self.__centre[1] + if np.sqrt(delta_x * delta_x + delta_y * delta_y) <= self.__radius: self.__particle_set.append((x, y, z)) return - raise ValueError('Particle coordinates lie outside of the release zone') + + raise ValueError('Particle coordinates lie outside of the ' + 'release zone') def get_number_of_particles(self): """ Get the total number of particles @@ -206,52 +366,6 @@ def get_number_of_particles(self): """ return np.shape(self.__particle_set)[0] - def get_coords(self): - """ Get particle coordinates - - Returns - ------- - : array_like - Eastings - - : array_like - Northings - - : array_like - Depths - """ - return self.get_eastings(), self.get_northings(), self.get_depths() - - def get_eastings(self): - """ - - Returns - ------- - : array_like - Eastings - """ - return [particle_coords[0] for particle_coords in self.__particle_set] - - def get_northings(self): - """ Get northings - - Returns - ------- - : array_like - Northings - """ - return [particle_coords[1] for particle_coords in self.__particle_set] - - def get_depths(self): - """ Get depths - - Returns - ------- - : array_like - Depths - """ - return [particle_coords[2] for particle_coords in self.__particle_set] - def get_zone_polygon(self): """ Make a polygon of the points in the zone (based on its convex hull) @@ -262,7 +376,8 @@ def get_zone_polygon(self): """ if not have_shapely: - raise ImportError('Cannot create a polygon for this release zone as we do not have shapely installed.') + raise ImportError('Cannot create a polygon for this release ' + 'zone as we do not have shapely installed.') points = np.asarray([np.asarray(i) for i in self.get_particle_set()]) qhull = ConvexHull(points[:, :-1]) # skip depths for the convex hull @@ -275,73 +390,117 @@ def get_zone_polygon(self): return poly -def create_release_zone(group_id=1, radius=100.0, centre=[0.0, 0.0], - n_particles=100, depth=0.0, random=True): +def create_release_zone(group_id: Optional[int] = 1, + radius: Optional[float] = 100.0, + centre = [0.0, 0.0], + coordinate_system: Optional[str] = 'cartesian', + epsg_code: Optional[str] = None, + n_particles: Optional[int] = 100, + depth: Optional[float] = 0.0, + random: Optional[bool] = True) -> ReleaseZone: """ Create a new release zone Parameters ---------- group_id : integer, optional - Group identifier. + Group identifier. Optional, defaults to 1. radius : float, optional - Radius of the circle in meters. + Radius of the circle in meters. Optional, defaults to 100.0 m. centre : ndarray [float, float], optional - x, y coordinates of the circle centre in meters. + x, y coordinates of the circle centre in meters. Optional, + defaults to [0.0, 0.0]. - n_particles : integer, optional - The number of particles. + coordinate_system : str, optional + Coordinate system used to interpret the given `centre` coordinates. + The options are 'geographic' or 'cartesian' (default). If 'geographic' + is given, the coordinates are assumed to be in lon/lat. If 'cartesian' + is given, the coordinates are assumed to be in x/y. + epsg_code : str, optional + EPSG code which should be used to covert to UTM coordiantes. If + not given, the EPSG code will be inferred from `centre`. If working + in cartesian coordinates, this argument is ignored. + + n_particles : integer, optional + The number of particles. Optional, defaults to 100. + depth : float, optional - Zone depth in m (default 0.0m). + Zone depth in m. Optional, defaults to 0.0 m. random : boolean, optional - Assign x/y positions randomly (default). + Assign x/y positions randomly. Optional, defaults to True. Returns ------- release_zone : ReleaseZone ReleaseZone object. - """ - if ~isinstance(radius, numbers.Real): - radius = float(radius) - - if ~isinstance(depth, numbers.Real): - depth = float(depth) - + """ # Create a new release zone given its radius and centre - release_zone = ReleaseZone(group_id, radius, centre) + release_zone = ReleaseZone(group_id=group_id, + radius=radius, + centre=centre, + coordinate_system=coordinate_system, + epsg_code=epsg_code) # Create a new particle set of n_particles at the given depth - release_zone.create_particle_set(n_particles, depth, random) + release_zone.create_particle_set(n_particles=n_particles, + z=depth, + random=random) return release_zone -def create_release_zones_along_cord(r1, r2, group_id=1, radius=100.0, - n_particles=100, depth=0.0, random=True, verbose=False): +def create_release_zones_along_cord( + start_point, end_point, + coordinate_system: Optional[str] = 'cartesian', + epsg_code: Optional[str] = None, + group_id: Optional[int] = 1, + radius: Optional[float] = 100.0, + n_particles: Optional[int] = 100, + depth: Optional[float] = 0.0, + random: Optional[bool] = True, + verbose: Optional[bool] = False) -> list: """ Generate a set of release zones along a cord - Return particle positions along a line `r3`, defined by the position vectors `r1` and - `r2`. Particles are packed into circlular zones of radius radius, running along `r3`. - Positions for approximately n particles (`= n` if random is `True`) are returned per - zone. If `2*radius` is `> |r3|`, no zones are created. + Return particle positions along a line `r`, defined by the + position vectors `start_point` and `end_point`. + `start_point` and `end_point` may be defined in Cartesian or geographic + coordinates. Optionally, a epsg_code code can be provided. + If provided, this will be used to convert geographic coordinates into + UTM coordinates so distances can be calculated.Particles are packed into + circlular zones of radius `radius`, running along `r`. Positions + for approximately `n` particles (`= n` if random is `True`) are + returned per zone. If `2*radius` is `> |r|`, no zones are created. Parameters ---------- - r1 : ndarray [float, float] - Two component position vector in cartesian coordinates (x,y). + start_point : array_like [float, float] + Two component position vector in cartesian or geographic + coordinates (x,y or lon/lat) that defines the start of the + cord. - r2 : ndarray [float, float] - Two component position vector in cartesian coordinates (x,y). + end_point : array_like [float, float] + Two component position vector in cartesian coordinates or + geographic coordinates (x,y or lon/lat) that defines the + end of the cord. + + coordinate_system : str, optional + Coordinate system used to interpret the given `r1` and `r2` + coordinates. The options are 'geographic' or 'cartesian'. + + epsg_code : str, optional + EPSG code which should be used to covert to UTM coordiantes. If + not given, the EPSG code will be inferred from `start_point`. + If working in cartesian coordinates, this argument is ignored. group_id : integer, optional Group id for the 1st release zone created along the cord. radius : float, optional - Zone radius in m. + The radius of each zone m. n_particles : integer, optional Number of particles per zone. @@ -350,16 +509,39 @@ def create_release_zones_along_cord(r1, r2, group_id=1, radius=100.0, Zone depth in m. random : boolean, optional - If true create a random uniform distribution of particles within each zone (default). + If true create a random uniform distribution of particles within + each zone (default). verbose : boolean, optional Hide warnings and progress details (default). Returns ------- - zones : object, iterable + zones : list List of release zone objects along the cord. """ + if coordinate_system not in ['geographic', 'cartesian']: + raise ValueError(f"Unrecognised coordinate system " + f"{coordinate_system}. Options are " + f"'geographic' or 'cartesian'.") + + if coordinate_system == 'geographic': + if epsg_code is None: + epsg_code = get_epsg_code(start_point[0], start_point[1]) + + x1, y1, _ = utm_from_lonlat(start_point[0], + start_point[1], + epsg_code=epsg_code) + + x2, y2, _ = utm_from_lonlat(end_point[0], + end_point[1], + epsg_code) + + r1 = np.array([x1[0], y1[0]], dtype=float) + r2 = np.array([x2[0], y2[0]], dtype=float) + else: + r1 = np.array(start_point, dtype=float) + r2 = np.array(end_point, dtype=float) # Use the line vector running between the position vectors r1 and r2 # to calculate the no. of release zones. @@ -373,304 +555,326 @@ def create_release_zones_along_cord(r1, r2, group_id=1, radius=100.0, f"yields {n_zones} release zones.") if n_zones == 0: - print("WARNING: zero release zones have been created. Try reducing the zone radius.") + print("WARNING: zero release zones have been created. Try " + "reducing the zone radius.") return None - # Move along in the direction of r3 generating release zones every (2.0*radius) m. + # Move along in the direction of r3 generating release zones + # every (2.0*radius) m. release_zones = [] for n in np.arange(n_zones, dtype=int): - r3_prime = (2.0 * float(n) * radius + radius + buffer_zone/2.0)*r3_unit_vector - centre = r1 + r3_prime - release_zone = create_release_zone(group_id, radius, centre, n_particles, depth, random) + r3_prime = (2.0 * float(n) * radius + + radius + buffer_zone/2.0) * r3_unit_vector + centre_xy = r1 + r3_prime + + if coordinate_system == 'geographic': + centre_lon, centre_lat = lonlat_from_utm(centre_xy[0], + centre_xy[1], + epsg_code) + centre = np.array([centre_lon[0], centre_lat[0]]) + else: + centre = np.array(centre_xy[0], centre_xy[1]) + + release_zone = create_release_zone( + group_id=group_id, + radius=radius, + centre=centre, + coordinate_system=coordinate_system, + epsg_code=epsg_code, + n_particles=n_particles, + depth=depth, + random=random) + if verbose: - n_particles_in_release_zone = release_zone.get_number_of_particles() - print(f"Zone {n} (group_id = {group_id}) contains {n_particles_in_release_zone} particles.") + particles = release_zone.get_number_of_particles() + print(f"Zone {n} (group_id = {group_id}) contains {particles} particles.") release_zones.append(release_zone) group_id += 1 return release_zones -def create_release_zones_around_shape(shape_obj, start, target_length, group_id, - radius, n_particles, depth=0.0, random=True, - epsg_code=None, maximum_vertex_separation=None, - return_end_zone=True, verbose=False, ax=None): - """ Create a set of adjacent release zones around an arbitrary polygon. +def create_release_zones_around_shape( + polygon: shapely.geometry.Polygon, + start_point: shapely.geometry.Point, + coordinate_system: Optional[str] = 'cartesian', + epsg_code: Optional[str] = None, + target_length: Optional[float] = None, + release_zone_radius: Optional[float] = 100.0, + n_particles: Optional[int] = 100, + group_id: Optional[int] = 0, + depth: Optional[float] = 0.0, + random: Optional[bool] = True, + check_overlaps: Optional[bool] = False, + overlap_tol: Optional[float] = 0.0001, + verbose: Optional[bool] = False) -> list: + """ Create a set of adjacent release zones around a shape + + This function will create a set of release zones around the + perimeter of a polygon. The release zones are created by stepping + around the perimeter of the polygon, starting at the point + `start_point`. `start_point` does not need to be exactly on the + perimeter of the polygon - the method will find the nearest + vertex and use this as the actual start point. The release zones + are created such that they are adjacent to one another, + and each release zone is given a unique groud ID. + + The coordinates used to defined the polygon and the start point + should be the same, and consistent with the `coordinate_system` + argument. Valid options for `coordinate_system` are + 'geographic' or 'cartesian'. If 'geographic' is given, the + coordinates are assumed to be in lon/lat. To compute distances, + lon/lat coordinates are converted to UTM coordinates using the + EPSG code given by `epsg_code`. If `epsg_code` is not given, the + EPSG code is inferred from the start point coordinates. If + 'cartesian' is given, the coordinates are assumed to be in x/y + and not further coordinate transformations are performed. + + The argument `target_length` can be used to specify the length of the + polygon section around which release zones should be created. If None, + the release zones will be created around the full perimeter of the + polygon. The argument `release_zone_radius` specifies the radius + of each release zone. Parameters ---------- - shape_obj : _Shape from module shapefile, np.ndarray - Shapefile describing a given landmass or an array of points (n, 2) as (x, y). - - start : tuple(float,float) - Approximate starting point (lon,lat) in degrees - - target_length : float - Distance along which to position release zones - - group_id : integer - Group identifier. + polygon : shapely.geometry.Polygon + Polygon describing a given landmass or object. + All points in lon/lat coordinates. - radius : float - Zone radius in m. - - n_particles : integer - Number of particles per zone. - - depth : float, optional - Zone depth in m. + start_point : shapely.geometry.Point + Approximate start point for release zones in lon/lat + coordinates. The actual start point will be the nearest + vertex on the polygon to the given coordinates. - random : boolean, optional - If true create a random uniform distribution of particles within each - zone (default). + coordinate_system : str, optional + Coordinate system used to interpret the coordinates of + the `polygon` and `start_point` objects. The options are + 'geographic' or 'cartesian'. Optional, defaults to 'cartesian'. epsg_code : str, optional - EPSG code to which to force all coordinates. This is useful if you've - got a large model domain. - - maximum_vertex_separation : float, optional - Skip sections of the shapefile which have a length in excess of this - value. Helps skip parts of a domain which are very simple. - - return_end_zone : bool, optional - If False, do not return the last zone. Defaults to True (do return it). This is useful when chaining release - zones along a shapefile with a fixed distance and we want to use the end of one chain as the start of another. - - verbose : boolean, optional - Hide warnings and progress details (default). - - """ - raise PyLagRuntimeError('Function has not been tested.') - -# # Use all points from the shapefile. -# if hasattr(shape_obj, 'points'): -# points = np.array(shape_obj.points) -# else: -# points = np.array(shape_obj) -# -# # Use shapely to do all the heavy lifting. Work in cartesian coordinates so distances make sense. -# xx, yy, _ = utm_from_lonlat(points[:, 0], points[:, 1], epsg_code=epsg_code) -# # Calculate the section lengths so we can drop points which are separated by more than that distance. -# close_enough = [True] * len(xx) -# if maximum_vertex_separation is not None: -# close_enough = [True] + [np.hypot(i[0], i[1]) <= maximum_vertex_separation for i in zip(xx[:-1] - xx[1:], yy[:-1] - yy[1:])] -# -# # Reorder the coordinates so we start from the last point after the first jump in distance. This should make -# # the polygon more sensibly stored (i.e. the beginning will be after the first long stretch.). -# big_sections = np.argwhere(~np.asarray(close_enough)) -# if np.any(big_sections): -# if is_clockwise_ordered(points): -# reorder_idx = big_sections[-1][0] + 1 -# else: -# reorder_idx = big_sections[0][0] - 1 -# -# xx = np.array(xx[reorder_idx:].tolist() + xx[:reorder_idx].tolist()) -# yy = np.array(yy[reorder_idx:].tolist() + yy[:reorder_idx].tolist()) -# # Redo the close_enough no we've reordered things so the indexing works OK. -# close_enough = [True] + [np.hypot(i[0], i[1]) <= maximum_vertex_separation for i in zip(xx[:-1] - xx[1:], yy[:-1] - yy[1:])] -# -# xx = xx[close_enough] -# yy = yy[close_enough] -# -# # Split our line into sections of length target_length. Then, on each of those, further split them into sections -# # radius * 2 long. On each of those sections, create release zones. Return the lot as a single list. -# -# # For reasons I can't fathom, using shapely.ops.split() doesn't work with the polygon line. The issue is that -# # "not polygon_line.relate_patten(splitter, '0********')" returns True, which means shapely.ops.split() just -# # returns the whole line as a list (which is then bundled into a GeometryCollection). This is not what I want! -# # So, I'll manually split the line after we've put zones all the way along it. This isn't as neat :( -# line = shapely.geometry.LineString(np.array((xx, yy)).T) -# # Create release zones at radius * 2 distance along the current line. -# zone_centres = [line.interpolate(i) for i in np.arange(1, line.length, radius * 2)] -# release_zones = [create_release_zone(group_id, radius, i.coords[0], n_particles, depth, random) for i in zone_centres] -# -# # Now, we'll split these into groups of target_length and increment each group ID. -# zone_separations = [0] + [get_length(i[0].get_centre(), i[1].get_centre()) for i in zip(release_zones[:-1], release_zones[1:])] -# # Find the indices where we've exceeded the target_length. -# split_indices = np.argwhere(np.diff(np.mod(np.cumsum(zone_separations), target_length)) < 0).ravel() -# split_indices = np.append(split_indices, -1) -# split_indices = np.append([0], split_indices) -# -# new_zones = [] -# for start_index, end_index in zip(split_indices[:-1], split_indices[1:]): -# # Get a set of release zones and increment their group ID. -# current_zones = release_zones[start_index:end_index] -# _ = [i.set_group_id(group_id) for i in current_zones] -# n_points = len(current_zones * n_particles) -# if verbose: -# print(f'Group {group_id} contains {n_points} particles.') -# -# group_id += 1 -# new_zones += current_zones -# -# # Plot the release zones. -# if ax is not None: -# ax.plot(*current_zones[0].get_centre(), 'ro', zorder=10) -# ax.text(*current_zones[0].get_centre(), f'Group {current_zones[0].get_group_id()} start', zorder=1000) -# -# release_zones = new_zones -# -# if not return_end_zone: -# release_zones = release_zones[:-1] -# -# return release_zones - - -def create_release_zones_around_shape_section(shape_obj, start, target_length, group_id, - radius, n_particles, depth=0.0, epsg_code=None, - random=True, check_overlaps=False, - overlap_tol=0.0001, verbose=False): - """ Create a set of adjacent release zones around a some part of an arbritray poloygon. - - This function is distinct from the function `create_release_zones_around_shape` in - the sense that it a) only creates release zones around a specified length of the - polygon, and b) gives each release zone a separate individual ID tag. - - Parameters - ---------- - shape_obj : _Shape from module shapefile - Shapefile describing a given landmass - - start : tuple(float,float) - Approximate starting point (lon,lat) in degrees + EPSG code which should be used to covert to UTM coordiantes. If + not given, the EPSG code will be inferred from `start_point`. - target_length : float - Distance along which to position release zones + target_length : float, optional + Distance along which to position release zones in m. Optional, + defaults to None. If None, the release zones will be created + around the full perimeter of the polygon. - group_id : integer - Group identifier. + release_zone_radius : float, optional + Radius of each circular release zone in m. Optional, defaults + to 100.0 m. - radius : float - Zone radius in m. - - n_particles : integer - Number of particles per zone. + n_particles : integer, optional + Number of particles per release zone. Optional, defaults to 100. - depth : float - Zone depth in m. + group_id : integer, optional + ID of the first release zone created. All subsequent release zones + will have an ID of group_id + 1, group_id + 2, etc. Optional, + defaults to 0. - epsg_code : str, optional - EPSG code within which to calculate lat/lon coordinates + depth : float, optional + Zone depth in m. Defaults to a depth of 0.0 m. - random : boolean + random : boolean, optional If true create a random uniform distribution of particles within each - zone (default). + zone. Optional, defaults to True. - check_overlaps : boolean + check_overlaps : boolean, optional If true check for overlaps between non-adjacent release zones that may result from jagged features. NOT YET IMPLEMENTED. - overlap_tol : float - Overlap tolerance, ratio ((target-act)/target < overlap_tol). Assists - in avoiding false positives, which can arise from rounding issues. + overlap_tol : float, optional + Overlap tolerance. This can be increased to permit small overlaps + between adjacent release zones. Optional, defaults to 0.0001. - verbose : boolean - Hide warnings and progress details (default). + verbose : boolean, optional + Hide warnings and progress details. Optional, default False. + + Returns + ------- + release_zones : list + List of release zone objects. TODO ---- - 1) Allow users to provide a set of finish coordinates as an alternative to a - length, which can then be used to determine the location of the last release - zone to be created. + 1) Allow users to provide a set of finish coordinates as an + alternative to a length, which can then be used to determine the + location of the last release zone to be created. """ - # If len(parts) > 1, use points for the first "part" only - points = np.array(shape_obj.points) - if len(shape_obj.parts) > 1: - parts = shape_obj.parts.tolist() - points = points[:parts[1]] - - # Total number of points in this part - n_points = np.shape(points)[0] + # Check the given coordinate system is valid + if coordinate_system not in ['geographic', 'cartesian']: + raise ValueError(f"Unrecognised coordinate system " + f"{coordinate_system}. Options are " + f"'geographic' or 'cartesian'.") + + # Extract the points that make up the polygon. + points = np.array(polygon.exterior.xy).T + + # Create a second 'working' copy of of the points array. If the original + # points array is specified in geographic coordinates, transform these + # to UTM coordinates. + if coordinate_system == 'geographic': + if epsg_code is None: + epsg_code = get_epsg_code(start_point.x, start_point.y) + + # Convert start_point to UTM coordinates + start_point_x, start_point_y, _ = utm_from_lonlat(start_point.x, + start_point.y, + epsg_code=epsg_code) + + # Convert points to UTM coordinates + x, y, _ = utm_from_lonlat(points[:, 0], points[:, 1], + epsg_code=epsg_code) + points_xy = np.array([x, y]).T + else: + start_point_x = start_point.x + start_point_y = start_point.y + points_xy = points.copy() - # Establish whether or not the shapefile is ordered in a clockwise or anticlockwise manner - clockwise_ordering = _is_clockwise_ordered(points) + # Total number of points + n_points = points_xy.shape[0] - # Set the epsg_code from the start coordinates if it has not been set already. - if epsg_code is None: - epsg_code = get_epsg_code(start[0], start[1]) + # Establish whether or not the shapefile is ordered in a clockwise + # or anticlockwise manner + clockwise_ordering = _is_clockwise_ordered(points_xy) - # Find starting location - start_idx = _find_start_index(points, start[0], start[1], epsg_code=epsg_code) + # Find starting location using the working points array + start_idx = _find_start_index(points_xy, start_point_x, start_point_y) - # Form the first release zone centred on the point corresponding to start_idx + # Form the first release zone centred on the point for start_idx + # -------------------------------------------------------------- release_zones = [] idx = start_idx - n_points if clockwise_ordering else start_idx - x, y, _ = utm_from_lonlat(points[idx, 0], points[idx, 1], epsg_code=epsg_code) - centre_ref = np.array([x[0], y[0]]) # Coordinates of zone centre, saved for release zone separation calculation - release_zone = create_release_zone(group_id, radius, centre_ref, n_particles, depth, random) + + # Coordinates of zone centre (NB from the original points array) + centre_ref = np.array([points[idx, 0], points[idx, 1]]) + centre_ref_xy = np.array([points_xy[idx, 0], points_xy[idx, 1]]) + release_zone = create_release_zone(group_id=group_id, + radius=release_zone_radius, + coordinate_system=coordinate_system, + centre=centre_ref, + n_particles=n_particles, + depth = depth, + random = random) if verbose: n_particles_in_release_zone = release_zone.get_number_of_particles() - print(f"Zone (group_id = {group_id}) contains {n_particles_in_release_zone} particles.") + print(f"Zone (group_id = {group_id}) contains " + f"{n_particles_in_release_zone} particles.") release_zones.append(release_zone) - # Now step through vertices in shape_obj creating new release zones en route - target_separation = 2.0 * radius # Target separation of adjacent release zones (i.e. touching circles) - distance_travelled = 0.0 # Cumulative distance travelled around shape_obj (exit when >target_length) - last_vertex = centre_ref # Coordinates of the last vertex, used for length calculation - group_id += 1 # Update group id - idx = _update_idx(idx, clockwise_ordering) # Update the current index - counter = 1 # Loop counter + # Now step through shape vertices creating new release zones en route + # ------------------------------------------------------------------- + # Target separation of adjacent release zones (i.e. touching circles) + target_separation = 2.0 * release_zone_radius + + # Cumulative distance travelled around polygon (exit when >target_length) + distance_travelled = 0.0 + + # Coordinates of the last vertex, used for length calculation + last_vertex = centre_ref_xy + + # Update group id + group_id += 1 + + # Update the current index + idx = _update_idx(idx, clockwise_ordering) + + # Loop until we've either run out of points or we've exceeded the + # target length. + counter = 1 while True: - if counter > n_points or distance_travelled > target_length: - break + if target_length is None: + if counter > n_points: + # Full perimeter has been traversed. Break. + break + else: + if counter > n_points or distance_travelled > target_length: + break + + current_vertex = np.array([points_xy[idx, 0], points_xy[idx, 1]]) + + # Compute current separation + current_separation = _get_length(centre_ref_xy, current_vertex) - x, y, zone = utm_from_lonlat(points[idx, 0], points[idx, 1], epsg_code=epsg_code) - if _get_length(centre_ref, np.array([x[0], y[0]])) >= target_separation: - # Track back along the last cord in order to find the point + if current_separation >= target_separation: + # Track back along the last cord to find the point # giving a release zone separation of 2*radius. - # - # Approach: - # At present we know position vectors r1 (=centre_ref, coords for centre of the last - # release zone), r2 (=last_vertex, coords for the last vertex - # in the polygon, and r3 (the current vertex in the polygon [x, y]). We - # also know that |r4-r1| must equal target_separation (i.e. 2x the radius - # of a relase zone). The task is then to find r4, which lies on the line - # joining r2 and r3. This is managed by the method find_release_zone_location(). - r4 = _find_release_zone_location(centre_ref, last_vertex, np.array([x[0], y[0]]), target_separation) - - # Create location - release_zone = create_release_zone(group_id, radius, r4, n_particles, depth, random) + centre_xy = _find_release_zone_location(centre_ref_xy, last_vertex, + current_vertex, + target_separation) + + # Convert back to lon/lat if necessary + if coordinate_system == 'geographic': + centre_lon, centre_lat = lonlat_from_utm( + centre_xy[0], centre_xy[1], epsg_code) + centre = np.array([centre_lon[0], centre_lat[0]]) + else: + centre = np.array(centre_xy[0], centre_xy[1]) + + # Create the release zone + release_zone = create_release_zone( + group_id=group_id, + radius=release_zone_radius, + centre=centre, + coordinate_system=coordinate_system, + epsg_code=epsg_code, + n_particles=n_particles, + depth=depth, + random=random) + if verbose: - n_particles_in_release_zone = release_zone.get_number_of_particles() - print(f"Zone (group_id = {group_id}) contains {n_particles_in_release_zone} particles.") + n = release_zone.get_number_of_particles() + print(f"Zone (group_id = {group_id}) contains {n} particles.") # Check if the new release zone overlaps with non-adjacent zones if check_overlaps: for zone_test in release_zones: - centre_test = zone_test.get_centre() - zone_separation = _get_length(r4, centre_test) - if (target_separation - zone_separation) / target_separation > overlap_tol: - print(f"WARNING: Area overlap detected between release zones {zone_test.get_group_id()} " - f"and {release_zone.get_group_id()}. Target separation = {target_separation}. " + # Get centre + centre_test = zone_test.centre + if coordinate_system == 'geographic': + easting, northing, _ = utm_from_lonlat( + centre_test[0], centre_test[1], epsg_code) + centre_test = np.array([easting[0], northing[0]]) + + # Computer separation + zone_separation = _get_length(centre_xy, centre_test) + offset = (target_separation - zone_separation) + if offset / target_separation > overlap_tol: + print(f"WARNING: Area overlap detected between " + f"release zones {zone_test.group_id} " + f"and {release_zone.group_id}. " + f"Target separation = {target_separation}. " f"Actual separation = {zone_separation}.") # Append the new release zone to the current set. release_zones.append(release_zone) # Update references and counters - centre_ref = r4 + centre_ref_xy = centre_xy group_id += 1 else: # Update counters - distance_travelled += _get_length(last_vertex, np.array([x[0], y[0]])) - last_vertex = np.array([x[0], y[0]]) + distance_travelled += _get_length(last_vertex, current_vertex) + last_vertex = current_vertex idx = _update_idx(idx, clockwise_ordering) counter += 1 return release_zones -def _is_clockwise_ordered(points): +def _is_clockwise_ordered(points: np.ndarray) -> bool: """ Check to see if a set of points are clockwise ordered - Establish the index of the left most point in x, then check for rising or falling y. + Establish the index of the left most point in x, then check for + rising or falling y. Parameters ---------- points: ndarray - 2D array (n,2) containing lon/lat coordinates for n locations. Ordering - is critical, and must adhere to points[:, 0] -> lon values, points[:, 1] - -> lat values. + 2D array (n,2) containing lon/lat coordinates for n locations. + Ordering is critical, and must adhere to points[:, 0] -> + lon values, points[:, 1] -> lat values. Returns ------- @@ -683,16 +887,18 @@ def _is_clockwise_ordered(points): if have_shapely: # Use shapely to figure this out more robustly. poly = shapely.geometry.Polygon(points) - # Make a clockwise ordered polygon from our points and compare against what we've been given. If they're the - # same, then we've got a clockwise one, otherwise, we've got anti-clockwise. + # Make a clockwise ordered polygon from our points and compare against + # what we've been given. If they're the same, then we've got a + # clockwise one, otherwise, we've got anti-clockwise. ordered_poly = shapely.geometry.polygon.orient(poly, sign=1.0) ordered_points = np.array(ordered_poly.exterior.xy).T if not np.all(ordered_points == points): is_clockwise = True else: idx = np.argmin(points[:, 0]) - # This fails if the minimum occurs as the last point in the array. If that's the case, reverse the check (i.e. - # search for smaller latitudes at the index beforehand). + # This fails if the minimum occurs as the last point in the array. + # If that's the case, reverse the check (i.e. search for smaller + # latitudes at the index beforehand). if idx + 1 == np.shape(points)[0]: if points[idx - 1, 1] < points[idx, 1]: is_clockwise = True @@ -703,60 +909,54 @@ def _is_clockwise_ordered(points): return is_clockwise -def _find_start_index(points, lon, lat, tolerance=None, epsg_code=None) -> int: +def _find_start_index(points: np.ndarray, x: float, y: float, + tolerance: Optional[float] = None) -> int: """ Find start index for release zone creation. Parameters ---------- points: ndarray - 2D array (n,2) containing lon/lat coordinates for n locations. Ordering - is criticial, and must adhere to points[:,0] -> lon values, points[:,1] - -> lat values. + 2D array (n,2) containing x/y coordinates for n locations. Ordering + is criticial, and must adhere to points[:,0] -> x values, points[:,1] + -> y values. - lon: float - Target longitude + x: float + Target x - lat: float - Target latitude + y: float + Target y tolerance: float, optional - Raise ValueError if the target lat/lon values lie beyond this distance + Raise ValueError if the target x/y values lie beyond this distance (in m) from the shape_obj. - epsg_code : str, optional - Give a EPSG code to use when transforming lat and lon coordinates to m. - If not provided, the supplied lat and lon values are used to infer the - EPSG code. Useful for large domains which spread over multiple UTM zones. - Returns ------- start_idx: integer Start index in array points[start_idx,:]. """ - if epsg_code is None: - epsg_code = get_epsg_code(lon, lat) - - x_start, y_start, _ = utm_from_lonlat(lon, lat, epsg_code=epsg_code) - - x_points, y_points, _ = utm_from_lonlat(points[:, 0], points[:, 1], epsg_code=epsg_code) + x_points = points[:, 0] + y_points = points[:, 1] - # Find the position on the boundary closest to the supplied lat/lon values. - distances = np.hypot(x_points - x_start[0], y_points - y_start[0]) + # Find the position on the boundary closest to the supplied x/y values. + distances = np.hypot(x_points - x, y_points - y) distance_min = np.min(distances) - if tolerance: + if tolerance is not None: if distance_min < tolerance: start_idx = np.argmin(distances) else: - raise ValueError('Supplied lat/lon values lie outside of the given tolerance range.') + raise ValueError(f"Supplied x/y values are further away than " + f"{tolerance} m to the nearest vertex of the " + f"supplied shape.") else: start_idx = np.argmin(distances) return start_idx -def _get_length(r1, r2): - """ Return the length of the line vector joining the position vectors r1 and r2. +def _get_length(r1: np.ndarray, r2: np.ndarray) -> float: + """ Return the length of the line vector joining r1 and r2. Parameters ---------- @@ -772,22 +972,17 @@ def _get_length(r1, r2): Length in m. """ - if ~isinstance(r1, np.ndarray): - r1 = np.array(r1) - if ~isinstance(r2, np.ndarray): - r2 = np.array(r2) - r12 = r2 - r1 return np.sqrt((r12*r12).sum()) -def _update_idx(idx, clockwise_ordering): +def _update_idx(idx: int, clockwise_ordering: bool) -> int: """ Update idx, depending on the value of clockwise_ordering. Parameters ---------- - idx: integer + idx: int Current index. clockwise_ordering: boolean @@ -802,7 +997,10 @@ def _update_idx(idx, clockwise_ordering): return idx + 1 if clockwise_ordering else idx - 1 -def _find_release_zone_location(r1, r2, r3, r14_length): +def _find_release_zone_location(r1: np.ndarray, + r2: np.ndarray, + r3: np.ndarray, + r14_length: float) -> np.ndarray: """ Find release zone location Find the position vector r4 that sits on the line joining the position @@ -824,16 +1022,8 @@ def _find_release_zone_location(r1, r2, r3, r14_length): The position vector r4. """ - if ~isinstance(r1, np.ndarray): - r1 = np.array(r1) - if ~isinstance(r2, np.ndarray): - r2 = np.array(r2) - if ~isinstance(r3, np.ndarray): - r3 = np.array(r3) - # Vector running from r1 to r2 r12 = r2 - r1 - r12_length = np.sqrt((r12 * r12).sum()) # Vector running from r2 to r3 r23 = r3 - r2 @@ -877,9 +1067,11 @@ def _find_release_zone_location(r1, r2, r3, r14_length): # Error checking if r24_length_a_is_valid and r24_length_b_is_valid: - raise ValueError('Two apparently valid roots identified: a) {:f} and b) {:f}.'.format(r24_length_a[0], r24_length_b[0])) + raise ValueError(f"Two apparently valid roots identified: a) " + f"{r24_length_a[0]:f} and b) {r24_length_b[0]:f}.") if not r24_length_a_is_valid and not r24_length_b_is_valid: - raise ValueError('No valid roots found: a) {:f} and b) {:f}.'.format(r24_length_a[0], r24_length_b[0])) + raise ValueError(f"No valid roots found: a) {r24_length_a[0]:f} " + f"and b) {r24_length_b[0]:f}.") # Set r24_length equal to the valid root if r24_length_a_is_valid: @@ -888,4 +1080,3 @@ def _find_release_zone_location(r1, r2, r3, r14_length): r24_length = r24_length_b return r2 + (r24_length / r23_length) * r23 - diff --git a/pylag/tests/test_release_zone_creator.py b/pylag/tests/test_release_zone_creator.py index af2ff992..d4407f73 100644 --- a/pylag/tests/test_release_zone_creator.py +++ b/pylag/tests/test_release_zone_creator.py @@ -25,22 +25,22 @@ def tearDown(self): def test_get_group_id(self): release_zone = ReleaseZone(self.group_id, self.radius, self.centre) - group_id = release_zone.get_group_id() + group_id = release_zone.group_id test.assert_equal(self.group_id, group_id) def test_get_radius(self): release_zone = ReleaseZone(self.group_id, self.radius, self.centre) - radius = release_zone.get_radius() + radius = release_zone.radius test.assert_almost_equal(self.radius, radius) def test_get_area(self): release_zone = ReleaseZone(self.group_id, self.radius, self.centre) - area = release_zone.get_area() + area = release_zone.area test.assert_almost_equal(np.pi*self.radius*self.radius, area) def test_get_centre(self): release_zone = ReleaseZone(self.group_id, self.radius, self.centre) - centre = release_zone.get_centre() + centre = release_zone.centre test.assert_almost_equal(self.centre[0], centre[0]) test.assert_almost_equal(self.centre[1], centre[1]) @@ -71,7 +71,7 @@ def test_get_coords(self): z = 0.0 release_zone = ReleaseZone(self.group_id, self.radius, self.centre) release_zone.add_particle(x, y, z) - x_coords, y_coords, z_coords = release_zone.get_coords() + x_coords, y_coords, z_coords = release_zone.get_coordinates() test.assert_array_almost_equal(x, x_coords) test.assert_array_almost_equal(y, y_coords) test.assert_array_almost_equal(z, z_coords) @@ -90,7 +90,7 @@ def test_find_start_index(self): lon_start = 0.1 lat_start = 1.1 points = np.array([[0.0, 0.0], [0.0, 1.0], [1.0, 1.0], [1.0, 0.0], [0.0, 0.0]]) - start_idx = find_start_index(points, lon_start, lat_start, epsg_code=self.epsg_code) + start_idx = find_start_index(points, lon_start, lat_start) test.assert_equal(1, start_idx) def test_get_length(self):