Skip to content

Atlantis v3.6722

Latest

Choose a tag to compare

@hmorzaria hmorzaria released this 28 May 03:22
94ccf9b

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

New Contributors

Full Changelog: 3.6721...3.6722