「view this page in B3 βῆτα server」

Revisions №60361

branch: master 「№60361」
Commited by: Jared Adolf-Bryfogle
GitHub commit link: 「1f085d4e5c52b8d3」 「№3402」
Difference from previous tested commit:  code diff
Commit date: 2018-08-21 16:27:56
linux.clang linux.gcc linux.srlz mac.clang
linux.PyRosetta.unit linux.gcc.python36.PyRosetta4.unit mac.PyRosetta.unit build.clean.debug cppcheck mysql postgres linux.zeromq.debug mpi mpi.serialization linux.icc.build.debug OpenCL build.header build.levels ninja graphics static mac.clang.static.build.release linux.ui mac.ui beautification code_quality.clang_analysis serialization integration.mpi integration.release_debug integration.tutorials integration maintenance.documentation performance profile linux.clang.python37.release.PyRosetta4.Debug mac.clang.python27.release.PyRosetta4.Debug release.PyRosetta4.MinSizeRel linux.clang.python36.release.PyRosetta4.Release linux.clang.python37.release.PyRosetta4.Release mac.clang.python35.release.PyRosetta4.Release ubuntu.clang.python27.release.PyRosetta4.Release release.source linux.clang.score linux.gcc.score mac.clang.score linux.scripts.pyrosetta scripts.rosetta.parse scripts.rosetta.validate scripts.rosetta.verify unit.addsan linux.clang.unit.release linux.gcc.unit.release

Merge pull request #3402 from RosettaCommons/jadolfbr/ProtocolSettingsMetric Add ProtocolSettingsMetric to monitor experimental conditions This PR adds a new composite string metric, `ProtocolSettingsMetric`. It is analogous to the ProtocolFeatures reporter and basically reports both `.user()` options and splits ` any script_vars` options. The class is configurable to get specific options, or only get `.user()` or set `script_vars`. The primary purpose of this class is for benchmarking, but it is generally useful for record-keeping a specific decoy with set options - IE - the experimental conditions - in which it was run. Typically this is done using file names or directories or other scripts, but using this `SimpleMetric` should streamline benchmarking efforts - especially for those using python, where you can easily plot groups with specific experimental conditions. This class also works through a Local `OptionsCollection` object (if present) - A COP is placed into the `DataMap` as a resource and available to ALL RosettaScript objects for configurable local options accessing. There may be a better way when we decide to try to remove all global option accessing, but for RosettaScripts, I believe this will work fine. An integration test and a suite of unit tests have been added.