Code Monkey home page Code Monkey logo

dabom's People

Contributors

kevinsee avatar mackerman44 avatar ryankinzer avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar

dabom's Issues

Don't drop Fall Chinook tags

Because fall Chinook are included in STADEM estimates, any valid tags from fall Chinook should NOT be excluded before running DABOM. Presumably they all end up in the main black box, but that should be checked.

Installation and Set-up

After cleaning up the "Installation and Setup" instructions in the DABOM vignette, perhaps we could move those to a fragment to be included in both the vignette and the README file.

Asotin weir moved

In the Asotin, in 2010 and 2011, the Asotin weir (ASOTIC) was located upstream of the instream array ACB. After that, it has been placed downstream of ACB. DABOM should reverse the ASOTIC and ACB nodes if being run in 2010 and 2011.

Add options to defineRepGrps

Add an argument to this function to have different versions: TRT, GSI, etc.

Probably move this function to PITcleanr, so it can be used to summarize biological information

Make these functions generic

The following functions have separate versions for each version of DABOM (_xxx). Seems worth attempting to consolidate them into a single generic function:

  • createJAGSinputs_xxx: look to createJAGSinputs_PRO() for a possible starting point.
  • compileTransProbs_xxx: look to compileTransProbs_PRO() for an example that doesn't require a renameTransParams_xxx() function. Using a parent-child table of sites, can we build a loop that goes through each parent site and multiplies the child transitions by the parent transition?
  • setBranchNums_xxx: ensure that the generic setBranchNums() works for all versions
  • setSavedParams_xxx: I believe that the generic setSavedParams() works for all versions, so the others can be deleted

Write vignettes

Include at least 2 vignettes in the package:

  • Walk a user through how to use the package to generate escapement estimates for a single spawn year.
  • Detail all the updates needed if a new site is added to the model
    • Which functions need to be updated?
    • How should each of them be changed?
    • Try to provide a checklist somewhere

Fixing some phi's to 0

For versions of DABOM with wild and hatchery fish (e.g. Priest Rapids steelhead), the createJAGSinputs_PRA() function sets some of the Dirichlet priors on all the multinomials to 0, if no fish moved along that branch. It allows those priors to be different for hatchery and wild fish, so it can turn a branch "off" for hatchery fish but "on" for wild fish.

However, the fixNoFishNodes() function doesn't do something similar for the phi parameters. If no fish are observed past a node with a phi parameter leading up to it, then it sets that phi parameter to 0. However, if some wild fish but no hatchery fish are observed at that node, the phi parameters for both wild and hatchery fish will be estimated. This is inconsistent with the multinomial nodes described above, and could be corrected for consistency.

Mismatch week numbers

When STADEM drops some weeks due to window and trap seem to be closed, the week number labels from STADEM output won't match those of DABOM, so the calcTribEscape_LGD function won't work properly (when time-varying movement parameters are being estimated).

Thanks @ryankinzer for noting this!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.