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

Review Configf::find() and its use. #160

Open
stuart-knock opened this issue Mar 13, 2018 · 0 comments
Open

Review Configf::find() and its use. #160

stuart-knock opened this issue Mar 13, 2018 · 0 comments

Comments

@stuart-knock
Copy link
Member

stuart-knock commented Mar 13, 2018

The member function Configf::find() can match a key that does not belong to the specified <unique> component of the Check string. Note, this issue contributed to the difficulty in resolving issue #101.

Based on the description in the member function, Configf::find() should probably be modified to not search past the end of the line containing <unique>, but this needs to be reviewed.


NOTE: The fix in #163 obscures one issue related to Configf::find(). In the minimal example given in #101, with one single population and one single coupling. When using Couple::Ramp, that had the key nus before #163, and Config::find() was searching for key nu, the simulation still ran without segmentation errors or any other errors. There were obvious differences in the resulting timeseries of the Propagator.phi.1, but no differences in the timeseries of Coupling.nu.1.

What this implies is that the member function Coupling::nuinit(), which uses Configf::find(), was initializing nu to some value. Whatever this value was, it was passed and used in Dendrite.
Again, #163 gets rids of the numerical differences observed in the output data, but it does not get rid of variable initialization issues. See #164.

@stuart-knock stuart-knock added this to the Paper Publication milestone Mar 13, 2018
@stuart-knock stuart-knock self-assigned this Mar 13, 2018
stuart-knock added a commit to stuart-knock/nftsim that referenced this issue Apr 3, 2018
  This is a work-around for a long-standing bug in CouplingRamp.
  It works by conforming to the expectations of Coupling::nuinit.

  The proximal cause of the bug was that CouplingRamp had set a
  label, "nus", that was incompatible with the label, "nu", that
  was expected by Coupling::nuinit -- which CouplingRamp inherits.
  However, ultimately, the difficulty identifying the source of
  the bug was unexpected behaviour of Configf::find(), for which
  a new issues has been added: BrainDynamicsUSYD#160.
@stuart-knock stuart-knock removed their assignment Sep 11, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant