Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement discards #65

Open
1 of 10 tasks
gustavdelius opened this issue Apr 3, 2024 · 0 comments
Open
1 of 10 tasks

Implement discards #65

gustavdelius opened this issue Apr 3, 2024 · 0 comments
Labels
enhancement New feature or request

Comments

@gustavdelius
Copy link
Member

gustavdelius commented Apr 3, 2024

In addition to the selectivity curve which, when combined with the size distribution of the species, determines the size distribution of the catches, there should also be a selectivity curve that models which of the caught fish are selected to be landed. The size distribution of the landed catch would then be obtained as the product of the size distribution of the catch with this additional landings selectivity curve. I propose that this curve should simply be a sigmoidal curve, parametrised by new gear parameters retained_l50 and retained_l25. These new parameters will be used by getYield() but will be irrelevant for the calculation of the fishing mortality.

We will want to extend tuneParams() to allow tuning of the new gear params landings_l50 and landings_l25.

  • Add function plotCatchVsSize() that is like plotYieldVsSize() but takes a dataframe with both landings and discards and plots them individually as well as their sum and similarly plots three model curves, one for discards, one for landings and one for total catch.
  • In getYieldGear() check if there is a gear parameter retained_l50. If so, set default for retained_l25 if necessary, calculate the landings sigmoid that gives the proportion of the catch that is landed and multiply the current yield by this function before returning.
  • Add getDiscardsGear() and getDiscards() functions.
  • Add an include_discards = FALSE argument to plotYield(). If called with include_discards = TRUE, add an extra curve for the discards.
  • In plotYieldVsSpecies() change the calculation of yield_model to take the landings ogive into account.
  • In the documentation for gear_params() mention the new optional retained_l50 and retained_l25 parameters.
  • In catchTab() use plotCatchVsSize() instead of plotYieldVsSize().
  • In catchTab() change calculation of output$yield_total.
  • In fishingControl.R add controls for retained_l50 and retained_l25.
  • Search for any use of getFMort() that might be used to implement a yield calculation bypassing getYield(). If found, this needs to be changed.

Once everything works, this should probably go into its own extension "mizerDiscards".

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant