SSAGES  0.9.3
Software Suite for Advanced General Ensemble Simulations
Classes | Typedefs | Enumerations | Functions
SSAGES Namespace Reference

Classes

class  AlphaRMSDCV
 Collective variable to measure alpha helix secondary structure. More...
 
class  AngleCV
 Collective variable to calculate angle. More...
 
class  ANNCV
 ANN (artifical neural network) collective variables. More...
 
class  AntiBetaRMSDCV
 Collective variable to measure antiparallel beta secondary structure. More...
 
class  BoxVolumeCV
 Collective variable on the volume of a box. More...
 
class  CollectiveVariable
 Abstract class for a collective variable. More...
 
class  CVManager
 Collective variable manager. More...
 
class  GyrationTensorCV
 Collective variable on components of the gyration tensor. More...
 
class  MockCV
 Mock collective variable for testing purposes. More...
 
class  PairwiseCV
 Generalized collective variable based on pairwise properties of atoms. More...
 
class  ParallelBetaRMSDCV
 Collective variable to measure parallel beta sheet secondary structure. More...
 
class  ParticleCoordinateCV
 Collective variable on a particle coordinate. More...
 
class  ParticlePositionCV
 Collective variable on an particle position. More...
 
class  ParticleSeparationCV
 Collective variable on the distance between two particles' centers of mass. More...
 
class  RMSDCV
 Collective variable to calculate root mean square displacement. More...
 
class  RouseModeCV
 Collective variable is a Rouse mode for a polymer chain comprised of N particle groups. More...
 
class  TorsionalCV
 Collective variable on the torsion angles. More...
 
class  BuildException
 Exception to be thrown when building the Driver fails. More...
 
class  EventListener
 Base abstract class for listening in to events fired by "Hook". More...
 
class  Grid
 Basic Grid. More...
 
class  GridBase
 Base class for Grids. More...
 
class  Hook
 Base class for hooks into the simultion engines. More...
 
class  JSONLoader
 Class for loading JSON content from files. More...
 
class  JSONLoaderPlugin
 Abstract class for JSON loader plugins. More...
 
class  IncludePlugin
 Class for JSON loader include plugin. More...
 
class  Logger
 Base class for logging SSAGES data. More...
 
class  ABF
 Adaptive Biasing Force Algorithm. More...
 
class  ANN
 Artificial Neural Network Method. More...
 
class  BFS
 Basis Function Sampling Algorithm. More...
 
class  CFF
 Combined Force Frequency (CFF) Algorithm. More...
 
class  DirectForwardFlux
 ForwardFlux sampling method. More...
 
class  ElasticBand
 Multi-walker Elastic Band. More...
 
class  FiniteTempString
 Finite Temperature Spring Method. More...
 
class  ForwardFlux
 ForwardFlux sampling method. More...
 
struct  Hill
 Multidimensional hill. More...
 
class  Meta
 "Vanilla" multi-dimensional Metadynamics. More...
 
class  Method
 Interface for Method implementations. More...
 
class  StringMethod
 String base class for FTS, Swarm, and elastic band. More...
 
class  Swarm
 Swarm of Trajectories String Method. More...
 
class  Umbrella
 Umbrella sampling method. More...
 
class  ResourceHandler
 Class that handles SSAGES resources for a simulation. More...
 
class  Snapshot
 Class containing a snapshot of the current simulation in time. More...
 
struct  BasisLUT
 Look-up table for basis functions. More...
 
struct  Map
 Map for histogram and coefficients. More...
 
class  BasisFunction
 Abstract class for all BasisFunction inheritance. More...
 
class  Chebyshev
 Defines the class of Chebyshev polynomials. More...
 
class  Legendre
 Defines the class of Legendre polynomials. More...
 
class  Fourier
 Defines the class of Fourier polynomials. More...
 
class  BasisEvaluator
 Calculates the inner product of all the basis functions and the histogram. More...
 
class  PairwiseKernel
 Pairwise kernel base class. More...
 
class  GaussianPK
 Gaussian Function. More...
 
class  RationalSwitchPK
 Rational Switching Function. More...
 
class  ReadBackbone
 Utility class to read protein backbone atoms from a reference file. More...
 
class  ReadFile
 Utility class to read file. More...
 

Typedefs

using Vector = Eigen::VectorXd
 Arbitrary length vector.
 
using Vector3 = Eigen::Vector3d
 Three-dimensional vector.
 
using Bool3 = Eigen::Matrix< bool, 3, 1 >
 Three-dimensional boolean.
 
using Integer3 = Eigen::Vector3i
 Three-dimensional integer vector.
 
using Matrix3 = Eigen::Matrix3d
 3x3 matrix.
 
using Matrix3N = Eigen::MatrixX3d
 nx3 matrix.
 
using Label = std::vector< int >
 List of integers.
 
using CVList = std::vector< CollectiveVariable * >
 List of Collective Variables.
 

Enumerations

enum  GyrationTensor {
  Rg = 0 , principal1 = 1 , principal2 = 2 , principal3 = 3 ,
  asphericity = 4 , acylindricity = 5 , shapeaniso = 6
}
 Define components of gyration tensor. More...
 
enum class  Dimension { x = 0 , y = 1 , z = 2 }
 Enum for dimension.
 

Functions

void PrintBoldNotice (const std::string &notice, int msgw)
 Print out Notice in bold text. More...
 
int DumpErrorsToConsole (const std::vector< std::string > &msgs, int notw)
 Print a list of errors. More...
 
void DumpNoticesToConsole (const std::vector< std::string > &msgs, std::string prefix, int notw)
 Print a list of notices. More...
 
std::string GetFileContents (const std::string filename)
 Read contents from a file. More...
 
std::string GetFilePath (const std::string filename)
 Gets file path from filename. More...
 
double gaussian (double dx, double sigma)
 Evlauate Gaussian. Helper function. More...
 
double gaussianDerv (double dx, double sigma)
 Evaluate Gaussian derivative. Helper function. More...
 
double roundf (double x)
 Quick helper function to round a double. More...
 

Detailed Description

The global namespace for all SSAGES classes and functions.

This file is part of SSAGES - Software Suite for Advanced General Ensemble Simulations

Copyright 2017 Ashley Guo azguo.nosp@m.@uch.nosp@m.icago.nosp@m..edu

SSAGES is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

SSAGES is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with SSAGES. If not, see http://www.gnu.org/licenses/.

This file is part of SSAGES - Software Suite for Advanced General Ensemble Simulations

Copyright 2016 Yamil Colon yamil.nosp@m.colo.nosp@m.n2015.nosp@m.@u.n.nosp@m.orthw.nosp@m.este.nosp@m.rn.ed.nosp@m.u Hythem Sidky hsidk.nosp@m.y@nd.nosp@m..edu

SSAGES is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

SSAGES is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with SSAGES. If not, see http://www.gnu.org/licenses/.

This file is part of SSAGES - Software Suite for Advanced General Ensemble Simulations

Copyright 2020 Wei Chen wei.h.nosp@m.erbe.nosp@m.rt.ch.nosp@m.en@g.nosp@m.mail..nosp@m.com

SSAGES is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

SSAGES is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with SSAGES. If not, see http://www.gnu.org/licenses/.

This file is part of SSAGES - Software Suite for Advanced General Ensemble Simulations

Copyright 2016 Hythem Sidky hsidk.nosp@m.y@nd.nosp@m..edu

SSAGES is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

SSAGES is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with SSAGES. If not, see http://www.gnu.org/licenses/.

This file is part of SSAGES - Software Suite for Advanced General Ensemble Simulations

Copyright 2016 Ben Sikora bsiko.nosp@m.ra90.nosp@m.6@gma.nosp@m.il.c.nosp@m.om Emre Sevgen sesev.nosp@m.gen@.nosp@m.uchic.nosp@m.ago..nosp@m.edu Yamil Colon yamil.nosp@m.colo.nosp@m.n2015.nosp@m.@u.n.nosp@m.orthw.nosp@m.este.nosp@m.rn.ed.nosp@m.u

SSAGES is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

SSAGES is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with SSAGES. If not, see http://www.gnu.org/licenses/.

This file is part of SSAGES - Software Suite for Advanced General Ensemble Simulations

Copyright 2017 Hythem Sidky hsidk.nosp@m.y@nd.nosp@m..edu

SSAGES is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

SSAGES is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with SSAGES. If not, see http://www.gnu.org/licenses/.

This file is part of SSAGES - Software Suite for Advanced General Ensemble Simulations

Copyright 2016 Ben Sikora bsiko.nosp@m.ra90.nosp@m.6@gma.nosp@m.il.c.nosp@m.om

SSAGES is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

SSAGES is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with SSAGES. If not, see http://www.gnu.org/licenses/.

This file is part of SSAGES - Software Suite for Advanced General Ensemble Simulations

Copyright 2017 Hythem Sidky hsidk.nosp@m.y@nd.nosp@m..edu Michael Quevillon mquev.nosp@m.ill@.nosp@m.nd.ed.nosp@m.u

SSAGES is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

SSAGES is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with SSAGES. If not, see http://www.gnu.org/licenses/.

This file is part of SSAGES - Software Suite for Advanced General Ensemble Simulations

Copyright 2017 Michael Webb xmweb.nosp@m.b@gm.nosp@m.ail.c.nosp@m.om

SSAGES is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

SSAGES is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with SSAGES. If not, see http://www.gnu.org/licenses/.

This file is part of SSAGES - Software Suite for Advanced General Ensemble Simulations

Copyright 2016 Hythem Sidky hsidk.nosp@m.y@nd.nosp@m..edu Ben Sikora bsiko.nosp@m.ra90.nosp@m.6@gma.nosp@m.il.c.nosp@m.om Emre Sevgen sesev.nosp@m.gen@.nosp@m.uchic.nosp@m.ago..nosp@m.edu

SSAGES is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

SSAGES is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with SSAGES. If not, see http://www.gnu.org/licenses/.

This file has been obtained from SAPHRON - Statistical Applied PHysics through Random On-the-fly Numerics https://github.com/hsidky/SAPHRON

Copyright 2017 Hythem Sidky

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

This file is part of SSAGES - Software Suite for Advanced General Ensemble Simulations

Copyright 2016-2017 Julian Helfferich julia.nosp@m.n.he.nosp@m.lffer.nosp@m.ich@.nosp@m.gmail.nosp@m..com

SSAGES is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

SSAGES is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with SSAGES. If not, see http://www.gnu.org/licenses/.

This file is part of SSAGES - Software Suite for Advanced General Ensemble Simulations

Copyright 2017 Julian Helfferich julia.nosp@m.n.he.nosp@m.lffer.nosp@m.ich@.nosp@m.gmail.nosp@m..com

SSAGES is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

SSAGES is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with SSAGES. If not, see http://www.gnu.org/licenses/.

This file is part of SSAGES - Software Suite for Advanced General Ensemble Simulations

Copyright 2016 Ben Sikora bsiko.nosp@m.ra90.nosp@m.6@gma.nosp@m.il.c.nosp@m.om Hythem Sidky hsidk.nosp@m.y@nd.nosp@m..edu

SSAGES is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

SSAGES is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with SSAGES. If not, see http://www.gnu.org/licenses/.

This file is part of SSAGES - Software Suite for Advanced General Ensemble Simulations

Copyright 2016 Hythem Sidky hsidk.nosp@m.y@nd.nosp@m..edu Ben Sikora bsiko.nosp@m.ra90.nosp@m.6@gma.nosp@m.il.c.nosp@m.om

SSAGES is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

SSAGES is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with SSAGES. If not, see http://www.gnu.org/licenses/.

This file has been adapted from SAPHRON - Statistical Applied PHysics through Random On-the-fly Numerics https://github.com/hsidky/SAPHRON

Copyright 2016 Hythem Sidky

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

This file is part of SSAGES - Software Suite for Advanced General Ensemble Simulations

Copyright 2016 Emre Sevgen sesev.nosp@m.gen@.nosp@m.uchic.nosp@m.ago..nosp@m.edu Joshua Moller jmoll.nosp@m.er@u.nosp@m.chica.nosp@m.go.e.nosp@m.du Hythem Sidky hsidk.nosp@m.y@nd.nosp@m..edu

SSAGES is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

SSAGES is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with SSAGES. If not, see http://www.gnu.org/licenses/.

This file is part of SSAGES - Software Suite for Advanced General Ensemble Simulations

Copyright 2016 Joshua Moller jmoll.nosp@m.er@u.nosp@m.chica.nosp@m.go.e.nosp@m.du 2017 Julian Helfferich julia.nosp@m.n.he.nosp@m.lffer.nosp@m.ich@.nosp@m.gmail.nosp@m..com

SSAGES is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

SSAGES is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with SSAGES. If not, see http://www.gnu.org/licenses/.

This file is part of SSAGES - Software Suite for Advanced Generalized Ensemble Simulations

Copyright 2018 Emre Sevgen sesev.nosp@m.gen@.nosp@m.uchic.nosp@m.ago..nosp@m.edu and Hythem Sidky hsidk.nosp@m.y@nd.nosp@m..edu 2020 Elizabeth M.Y. Lee emlee.nosp@m.@uch.nosp@m.icago.nosp@m..edu and Boyuan Yu boyua.nosp@m.nyu@.nosp@m.uchic.nosp@m.ago..nosp@m.edu

SSAGES is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

SSAGES is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with SSAGES. If not, see http://www.gnu.org/licenses/.

This file is part of SSAGES - Software Suite for Advanced General Ensemble Simulations

Copyright 2016 Ben Sikora bsiko.nosp@m.ra90.nosp@m.6@gma.nosp@m.il.c.nosp@m.om Hythem Sidky hsidk.nosp@m.y@nd.nosp@m..edu Joshua Lequieu lequi.nosp@m.eu@u.nosp@m.chica.nosp@m.go.e.nosp@m.du Hadi Ramezani-Dakhel ramez.nosp@m.ani@.nosp@m.uchic.nosp@m.ago..nosp@m.edu

SSAGES is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

SSAGES is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with SSAGES. If not, see http://www.gnu.org/licenses/.

This file is part of SSAGES - Software Suite for Advanced General Ensemble Simulations

Copyright 2016 Ben Sikora bsiko.nosp@m.ra90.nosp@m.6@gma.nosp@m.il.c.nosp@m.om Joshua Lequieu lequi.nosp@m.eu@u.nosp@m.chica.nosp@m.go.e.nosp@m.du Hadi Ramezani-Dakhel ramez.nosp@m.ani@.nosp@m.uchic.nosp@m.ago..nosp@m.edu

SSAGES is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

SSAGES is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with SSAGES. If not, see http://www.gnu.org/licenses/.

This file is part of SSAGES - Software Suite for Advanced General Ensemble Simulations

Copyright 2016 Ben Sikora bsiko.nosp@m.ra90.nosp@m.6@gma.nosp@m.il.c.nosp@m.om Jonathan K. Whitmer jwhit.nosp@m.me1@.nosp@m.nd.ed.nosp@m.u

SSAGES is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

SSAGES is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with SSAGES. If not, see http://www.gnu.org/licenses/.

This file is part of SSAGES - Software Suite for Advanced General Ensemble Simulations

Copyright 2016 Ashley Guo azguo.nosp@m.@uch.nosp@m.icago.nosp@m..edu Ben Sikora bsiko.nosp@m.ra90.nosp@m.6@gma.nosp@m.il.c.nosp@m.om

SSAGES is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

SSAGES is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with SSAGES. If not, see http://www.gnu.org/licenses/.

This file is part of SSAGES - Software Suite for Advanced General Ensemble Simulations

Copyright 2016 Hythem Sidky hsidk.nosp@m.y@nd.nosp@m..edu Jonathan K. Whitmer jwhit.nosp@m.me1@.nosp@m.nd.ed.nosp@m.u Ben Sikora bsiko.nosp@m.ra90.nosp@m.6@gma.nosp@m.il.c.nosp@m.om

SSAGES is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

SSAGES is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with SSAGES. If not, see http://www.gnu.org/licenses/.

This file is part of SSAGES - Software Suite for Advanced General Ensemble Simulations

Copyright 2016 Ben Sikora bsiko.nosp@m.ra90.nosp@m.6@gma.nosp@m.il.c.nosp@m.om Ashley Guo azguo.nosp@m.@uch.nosp@m.icago.nosp@m..edu Cody Bezik bezik.nosp@m.@uch.nosp@m.icago.nosp@m..edu

SSAGES is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

SSAGES is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with SSAGES. If not, see http://www.gnu.org/licenses/.

This file is part of SSAGES - Software Suite for Advanced General Ensemble Simulations

Copyright 2017 Hythem Sidky hsidk.nosp@m.y@nd.nosp@m..edu Ben Sikora bsiko.nosp@m.ra90.nosp@m.6@gma.nosp@m.il.c.nosp@m.om

SSAGES is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

SSAGES is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with SSAGES. If not, see http://www.gnu.org/licenses/.

This file is part of SSAGES - Software Suite for Advanced General Ensemble Simulations

Copyright 2016 Yamil Colon yamil.nosp@m.colo.nosp@m.n2015.nosp@m.@u.n.nosp@m.orthw.nosp@m.este.nosp@m.rn.ed.nosp@m.u

SSAGES is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

SSAGES is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with SSAGES. If not, see http://www.gnu.org/licenses/.

Enumeration Type Documentation

◆ GyrationTensor

Define components of gyration tensor.

Components of the gyration tensor. CV uses these definitions to determine what to calculate.

Definition at line 37 of file GyrationTensorCV.h.

38  {
39  Rg = 0, // Radius of gyration (squared)
40  principal1 = 1, // First (largest) principal moment
41  principal2 = 2, // Second (middle) principal moment
42  principal3 = 3, // Third (smallest) principal moment
43  asphericity = 4, // Asphericity
44  acylindricity = 5, // Acylindricity
45  shapeaniso = 6 // Relative shape anisotropy
46  };

Function Documentation

◆ DumpErrorsToConsole()

int SSAGES::DumpErrorsToConsole ( const std::vector< std::string > &  msgs,
int  notw 
)
inline

Print a list of errors.

Parameters
msgsList of error messages.
notwWidth of the messages.
Returns
-1 always.

Write a list of error messages to the console.

Definition at line 103 of file DriverException.h.

104  {
105  if(isatty(fileno(stdout)))
106  {
107  std::cout << std::setw(notw) << std::right << "\033[1;31mError(s)! See below.\033[0m\n";
108  }
109  else
110  {
111  std::cout << std::setw(notw) << std::right << "Error(s)! See below.\n";
112  }
113  for(auto& msg : msgs)
114  std::cout << " * " << msg << "\n";
115  return -1;
116  }

◆ DumpNoticesToConsole()

void SSAGES::DumpNoticesToConsole ( const std::vector< std::string > &  msgs,
std::string  prefix,
int  notw 
)
inline

Print a list of notices.

Parameters
msgsList of messages.
prefixPrefix to prepend to each message.
notwWidth of the messages.

Definition at line 124 of file DriverException.h.

125  {
126  if(isatty(fileno(stdout)))
127  {
128  std::cout << std::setw(notw) << std::right << "\033[32mOK!\033[0m\n";
129  }
130  else
131  {
132  std::cout << std::setw(notw) << std::right << "OK!\n";
133  }
134  if(msgs.size() == 0)
135  return;
136 
137  for(auto& msg : msgs)
138  std::cout << prefix << " * " << msg << "\n";
139  }

◆ gaussian()

double SSAGES::gaussian ( double  dx,
double  sigma 
)

Evlauate Gaussian. Helper function.

Parameters
dxx-value.
sigmaWidth of Gaussian
Returns
Value at x of Gaussian with center at zero and width sigma.

Definition at line 42 of file Meta.cpp.

43  {
44  double arg = (dx * dx) / (2. * sigma * sigma);
45  return exp(-arg);
46  }

References gaussian().

Referenced by SSAGES::Meta::AddHill(), SSAGES::Meta::CalcBiasForce(), and gaussian().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ gaussianDerv()

double SSAGES::gaussianDerv ( double  dx,
double  sigma 
)

Evaluate Gaussian derivative. Helper function.

Parameters
dxValue of x.
sigmaWidth of Gaussian.
Returns
Derivative at x of Gaussian with center at zero and width sigma.

Definition at line 54 of file Meta.cpp.

55  {
56  double arg = (dx * dx) / (2. * sigma * sigma);
57  double pre = - dx / (sigma * sigma);
58  return pre * exp(-arg);
59  }

References gaussianDerv().

Referenced by SSAGES::Meta::AddHill(), SSAGES::Meta::CalcBiasForce(), and gaussianDerv().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetFileContents()

std::string SSAGES::GetFileContents ( const std::string  filename)
inline

Read contents from a file.

Parameters
filenameName of the file to read from.
Returns
String containing the contents of the file.

Retrieves the contents of a file and returns them in a string. Throws exception on failure.

Definition at line 46 of file FileContents.h.

47  {
48  std::ifstream ifs(filename);
49  if(ifs.is_open()) {
50  std::string contents( (std::istreambuf_iterator<char>(ifs) ),
51  (std::istreambuf_iterator<char>() ) );
52  return contents;
53  }
54  throw std::runtime_error("File " + filename + " does not exist.");
55  }

Referenced by SSAGES::IncludePlugin::ApplyFilter(), and SSAGES::JSONLoader::LoadFile().

Here is the caller graph for this function:

◆ GetFilePath()

std::string SSAGES::GetFilePath ( const std::string  filename)
inline

Gets file path from filename.

Parameters
filenameString containing the absolute filename.
Returns
String containing only the directory path.

Definition at line 62 of file FileContents.h.

63  {
64  size_t found;
65  found = filename.find_last_of("/\\");
66  if(found == filename.npos)
67  return "./";
68  return filename.substr(0, found);
69  }

Referenced by SSAGES::JSONLoader::LoadFile().

Here is the caller graph for this function:

◆ PrintBoldNotice()

void SSAGES::PrintBoldNotice ( const std::string &  notice,
int  msgw 
)
inline

Print out Notice in bold text.

Parameters
noticeText to be written to console.
msgwWidth of the message.

Definition at line 83 of file DriverException.h.

84  {
85  if(isatty(fileno(stdout)))
86  {
87  std::cout << std::setw(msgw + 8) << std::left << "\033[1m" + notice + "\033[0m";
88  }
89  else
90  {
91  std::cout << std::setw(msgw + 8) << std::left << notice;
92  }
93  }

◆ roundf()

double SSAGES::roundf ( double  x)
inline

Quick helper function to round a double.

Parameters
xDouble to be rounded.
Returns
Rounded number as a double.

Definition at line 35 of file Snapshot.h.

36  {
37  return ( x >= 0 ) ? floor( x + 0.5 ) : ceil( x - 0.5 );
38  }

Referenced by SSAGES::Snapshot::ApplyMinimumImage().

Here is the caller graph for this function: