Atlantis v3.6722 Latest
CHANGELOG for v3.6722
Added
- Created md file with a table listing Atlantis models in use, location, and contact person
- GitHub actions to build and run SETAS when a pull request is triggered
- Templates for bug reporting, feature requests and pull requests that standardize content for maintainers and reviewers.
- Parameter min_pool_cont for the Contaminant module, which sets the threshold for minimum contaminant concentration. This addition decouples min_pool a global parameter from the contaminant submodule. Need to add min_pool_cont as a parameter if using track_contaminants
- Instructions to add new features or bug fixes to the user manual. The documentation should be updated directly after the feature or bug is incorporated in a new release
- Code to identify the Git release and return the release version
- mFC fisheries produce no harvest when flagdisplace is on. The Effort array is used as a scalar multiplier for mFC catch but was initialized to 0.0 instead of 1.0. Added flagMFCdisplace_id to identify mFC fisheries and initialize their Effort to 1.0. Modified the fishery activation check to prevent mFC fisheries with displacement from being skipped. Files: atlantisboxmodel.h, atManageSetup.c, atManage.c
Changed
- In atlantis/PreRules.am refactors the code to detect the underlying OS and then "turn" on the appropriate flag
- Readme and CHANGELOG are updated
- CumDisplaceEffort accumulation was in dead code path. Accumulation was in the if(!bm->EffortModelsActive) block, but EffortModelsActive is true when any fishery has flageffortmodel > 0 (including forced effort = 11). Placed accumulation in the EffortModelsActive code path instead. File: atManage.c
- Wrong box index for MPA scaling in readts_effort branch. MPA scale was read from bm->MPA[bm->current_box][fishery_id] instead of bm->MPA[ij][fishery_id]. current_box was always 0, so every box got box 0's MPA value. Changed to bm->MPA[ij][fishery_id]. File: atManage.c
- orig_FCpressure set after MPA scaling instead of before. In the readts_effort branch, orig_FCpressure was assigned after FCpressure *= mpa_scale, so Effort_Displacement computed orig_FCpressure - FCpressure = 0. Set orig_FCpressure before MPA scaling. File: atManage.c
- All displacement logic was gated by TempCPUE < mEff_thresh. For readts_effort fisheries, TempCPUE is never calculated (stays 0.0), and with mEff_thresh = 0.0 the condition 0.0 < 0.0 is false. The manual (Section 15.6.1) states displacement should occur both for low CPUE and when MPAs are imposed. Added MPA as alternative trigger: if ((TempCPUE < mEff_thresh) || (MPA[ij][fishery_id] < 1.0)). File: atManage.c (Effort_Displacement function)
- Inverted MPA check in displacement destination scoring. Adjacent boxes were scored using MPA_check = 1.0 - bm->MPA[nb][fishery_id]. For open boxes (MPA=1.0) this gives 0.0, zeroing out their biomass attractiveness. Changed to MPA_check = bm->MPA[nb][fishery_id] so open boxes retain full attractiveness. File: atManage.c (Effort_Displacement function)
- Biomass comparison blocked MPA-imposed displacement. Displacement was conditional on maxfishthere > fishhere. Closed MPA boxes can have high target biomass, causing this condition to fail. The manual states displacement "will still occur" when MPAs are imposed. Separated MPA-imposed displacement (unconditional, find best open neighbour) from CPUE-triggered displacement (conditional on better biomass elsewhere). File: atManage.c (Effort_Displacement function)
- Renamed output file from OutDisplaceEffort.txt to OutDetailedEffort.txt (atHarvestIO.c)
- Detailed in the following Google group thread: https://groups.google.com/g/atlantis-ecosystem-model/c/gNJN6AXaM88, the way the allocation is done does not match the way BiTAC_sp is used. For instance: AtlantisTrunk/atlantis/atmanage/atManage.c. Line 2382 in 9f99af0, bm->BiTAC_sp[bim][nreg][sp][now_id] = 0.0; shows that the second dimension is nreg, but the allocation used the number of species for the second dimension.
- SVN release number was printed in log file. This has been replaced by GitHub version release in an earlier PR. For this to work git is required as a system dependency. This will not work for the SETAS workflow. This version number also needs to be printed to standard out. This PR fixes the standard out printing
Removed
- Extra printfs in atUtils.c used for debugging
- Extra printfs in atbiology.c that was creating a memory error
- atbiology.c //printf("printing tracer\n"); //printf("WC - %d, box: %d, layer: %d, %s - bm->atEcologyModule->localTracer[i] = %.20e, fluxFlag = %d\n",i, bm->current_box, bm->current_layer, Varname[i], localWCTracers[i], Fluxflag[i]);
- Rremove .DS_Store files and .Rhistory. .DS_Store are in the .gitignore but once they are tracked they need to be removed explicitly (https://docs.github.com/en/get-started/git-basics/ignoring-files).
- Existing quit statement in at_demography.c for when maternal transfer was on and had externally reproducing species , but the necessary code has been added and the quit statement is no longer necessary
What's Changed
- updated use model info by @andybeet in #19
- Albi user models by @somros in #20
- catalog atlantis models in current use by @andybeet in #28
- refactor(#14): Fixes issue of having to comment out flags depending on underlying OS. by @andybeet in #18
- chore(#15,#16): Issue templates for bug reporting and feature requests by @andybeet in #24
- build(#13): Workflow to build, run, and test atlantis by @andybeet in #23
- Move changes to documentation README.md and CHANGELOG from main into dev by @hmorzaria in #41
- Update the changelog with next dev changes by @hmorzaria in #43
- Feature (#40) Changes to maternal transfer code by @hmorzaria in #48
- docs(#37): merge list of atlantis models into readme by @andybeet in #45
- feature(#40): minpoolcont by @hmorzaria in #39
- chore(i46): pr template manual by @andybeet in #47
- Temp minpool by @hmorzaria in #51
- style(#50): add git release version by @cecilieha in #49
- sync dev with main by @andybeet in #35
- Update README.md by @hmorzaria in #56
- fix(#22): Fix effort displacement for forced effort fisheries with MPAs by @jacobkasper in #29
- Fix BiTAC_sp memory allocation by @KevCaz in #5
- refactor(#54): print version release to console by @andybeet in #55
- Correct quit statement for Temp maternal transfer by @hmorzaria in #62
- Update CHANGELOG.md by @hmorzaria in #53
- sync dev with main by @andybeet in #61
New Contributors
- @cecilieha made their first contribution in #49
- @jacobkasper made their first contribution in #29
- @KevCaz made their first contribution in #5
Full Changelog: 3.6721...3.6722