BACKGROUND
great progress in experimental techniques, such as x-ray diffraction analysis and nuclear magnetic resonance spectroscopy, has led to a vastly increased diversity and quality of biomolecular structure data presented in the protein data bank  <cit> .
by combining this information with biomolecular simulation one can supplement static structural models with an increasingly detailed dynamic picture even for huge molecular machines like the ribosome  <cit> .
still, exploring the dynamical nature of molecular life poses a significant challenge for present-day computational resources.
while astonishing progress in this field has led to first all-atom protein folding simulations for small globular proteins on the millisecond timescale  <cit> , the required specialized supercomputers are not publicly available.
an intriguing alternative to simulating these biomolecules with atomic resolution in physics-/chemistry-based forcefields is focusing on their essential features and coarse-graining  either the resolution of the system or its forcefield  <cit> .
in such cg models, the granularity of the system is typically changed from an all-atom representation by mapping groups of atoms into single beads.
this reduces the computational complexity and provides access to longer timescales and length scales.
for example, in the martini forcefield typically four heavy atoms and the associated hydrogens are mapped into a single bead representing the respective group  <cit> .
another approach, the so-called native structure-based modeling  , is based on energy landscape theory and the principle of minimal frustration  <cit> .
accordingly, the energy landscape has a funnel-like shape biased towards the native state of a protein.
in a long evolutionary process, the energy landscape was smoothened by minimizing  roughness and frustration to enable efficient folding by ensuring a dominance of native interactions over non-native ones.
thus the structural information of the native state becomes an integral part of the model potential describing the interactions in the biomolecular system.
topological information, such as the contact map of the native state, is usually employed  initially within coarse-grained c α
<cit>  or c β
<cit>  models and more recently, within all-atom models  <cit> .
the introduced bias towards the native state reduces the forcefield complexity without loss of essential information and enables the simulation on biologically relevant timescales, e.g.
protein folding simulation  <cit>  on the all-atom level on standard desktop computers.
in many recent studies of protein dynamics sbm has become the tool of choice to rationalize experimental observations by means of computer simulations  <cit> .
structure based modeling provides now an established method for physical understanding of, e.g.
folding pathways  <cit> , folding kinetics  <cit> , effects like posttranslational modifications  <cit>  or oligomerization  <cit> .
the sbm has been generalized to describe also proteins with two or more stable native conformations  <cit>  in order to model functional transitions, e.g.
allostery and ligand binding.
moreover, transition states, which are experimentally directly not accessible, have been studied using sbm  <cit> .
still, one might easily expect that focusing on native interactions and neglecting non-native interactions within sbm distorts simulation results.
significant effort has therefore been invested to examine to which extend non-native interactions play critical roles .
in particular, recent work has carefully analyzed the role of native interactions in prior atomically resolved simulations  <cit> .
these studies have found dominance of native interactions to non-native ones and good agreement between results from cg sbm simulations and more fine-grained models  <cit> .
overall, sbm is accurate for the extreme case of minimal or no frustration, with all-atom models realizing all possible non-native interactions  <cit> .
somewhat surprisingly, neglecting non-native interactions does not significantly distort simulations results  <cit> .
this not only makes the minimalistic sbm very useful, but also suggests that naturally occurring proteins seem to possess low frustration  <cit> .
in numerous close collaborations between experimental and modeling research groups the sbm methods are applied .
to enable regular use by the community of, in particular, experimental scientists or other researchers who do not possess specialized programming and/or modeling experience, it seems senseful to establish a research infrastructure  standardizing and simplifying the simulation setup and submission, as well as the evaluation of these simulations.
this infrastructure should include services for development of novel models and adaption of existing models to new applications, and routine deployment of ready-to-go models.
a first effort to establish such a service is the smog  web server  <cit>  that is publicly available under http://smog-server.org/.
this server provides a convenient setup of native structure-based simulations with several options for custom forcefield choice and parameterization.
going beyond mere folding, esmbtools  <cit>  is a python-based toolkit allowing the simplified setup and evaluation of native structure-based simulations for proteins and rna.
the focus of this toolkit is enhancing these simulations by experimental or bioinformatics derived data, e.g.
to enable the prediction of protein complexes or active conformations based on the statistical analysis of existing sequence databases  <cit>  or riboswitch folding  <cit> .
in particular, forcefields and topologies of amino and nucleic acids are encoded in xml files making the toolkit easily extensible to other biomolecules, such as ligands.
providing a modeling and simulation service for sbm solves several challenging issues which we outline in the following: i) the simulations require use of computing resources which are usually unavailable locally and the scientist has to face the high technical complexity of distributed computing infrastructure.
to this end, several solutions providing access to remote computing resources already exist .
however, while hiding the complexity via virtualization of resources and abstraction, these middleware services are rather generic so that their direct use without the integration of the biomolecular model can pose even higher barriers for the end-user.
ii) multiple program codes  have to be linked together in one composite application  via standard interfaces for automatic execution.
data sources and sinks at different workflow steps have to be linked via standard interfaces .
the existing solutions do not use generic standards  but rather domain-specific solutions which have to be laboriously adapted to every new model and simulation.
currently, there are many program codes that do not blend in with each other and therefore efforts have been recently spent to partially alleviate this problem .
iii) the elements of the infrastructure exposed to researchers have to be reduced to minimum and made available via a modern graphical user interface .
the challenging aspect is here the design decision what has to be included in the interface rather than the gui implementation itself.
the access to more functions improves the tool capabilities and flexibility but heightens the expert level.
in previous work, many of these issues have been tackled effectively for applications in high-throughput virtual screening  <cit> , materials science  <cit>  and biomolecular nmr  <cit> .
in particular, a data model based framework for data exchange between workflow steps has been proposed and a toolkit has been provided for automatic generation of a data access service for scientific applications  <cit> .
thereby, the issues outlined above can be treated by means of modern technologies such as web services and model-driven engineering leading to complete automation of the program interfaces, workflows and dataflows.
a common approach which has been extensively applied is the science gateway .
for example, the virtual research community wenmr has a large collection of portals providing production services for different applications in structural biology  <cit> , including molecular dynamics simulations with gromacs  <cit> .
data exchange in multi-step molecular simulations and analysis has been treated in several works previously .
within the mosgrid project the molecular simulation markup language   <cit>  has been developed employing the concept of chemical markup language  dictionaries and used in quantum chemistry, molecular dynamics and docking simulations on the mosgrid portal  <cit> .
the collaborative computing project for nmr   <cit>  has provided a software framework that consists of a data model  <cit> , the ccpnmr analysis program, and a collection of additional tools, including the ccpnmr formatconverter.
the ccpn application programming interface  is available in three programming languages  and enables the integration of additional analysis and simulation software to build complex workflow applications.
in this paper, we present a software infrastructure which deploys sbm on distributed high-throughput computing  and high performance computing  resources providing a powerful interface for model development and user-friendly interface.
the software provides a simple and still flexible graphical user interface for esbmtools to allow end users to run sbm simulations without developing it technical skills.
implementation
we have adopted the principles of service oriented architecture   <cit>  to design the implementation of the platform.
thus, many of the generic components required for the implementation are available in existing and well established grid and cloud middleware stacks, from which we have selected the unicore middleware  <cit> .
unicore is a fully fledged and mature open-source middleware which has been deployed and supported on large computing infrastructures such as prace  in europe and more recently also on xsede  in the usa.
computing clusters and other hpc resources managed by common batch systems, such as sge, lsf, pbs torque and loadleveler, can readily be used with unicore.
currently, unicore offers four different client variants: command line client, graphical rich client, a portal client and a high-level api.
the unicore rich client   <cit>  provides us with the software basis to integrate esbmtools within an application extension called gridbean  <cit> .
in addition, unicore includes a workflow engine and a powerful graphical workflow editor, completely integrated in the service layer and the urc, respectively.
furthermore, there are several alternative open source middleware solutions.
in the following, we briefly review two of them.
the globus toolkit  <cit>  is a widely used open source toolkit which implements numerous standards  and allows building infrastructures for grid  computing  <cit> .
it has overall standards conformity similar to that of unicore but does not provide graphical clients and portals and can be used with the galaxy workflow system  <cit> .
the middleware arc   <cit>  has been developed and included in the software stack of the european middleware initiative.
it implements web services standards for server-client communication and provides a gui client.
arc integrates with the third-party workflow engine taverna  <cit> .
implementation architecturegeneral architecture of sbm simulation with esbmtools based on unicore.
the implementation of the sbm gridbean is based on the gridbean api  <cit>  and consists of three major parts:
a configuration file gridbean.xml which defines runtime parameters for the gridbean in the urc, e.g.
names and versions of the gridbean and of the target application on the server;
a java class containing the gridbean model which defines the job parameters and input/output files;
a plugin class which defines the graphical user interface and the mapping of the input components to the gridbean model.
here, a validator can be defined which performs type and plausibility checks on input parameters.
during job submission the urc translates the input from the sbm gridbean  into a jsdl  request which is then sent together with a pdb input file or a pdb id to the unicore server.
the unicore server has an incarnation database  which determines how to handle the incoming jsdl request.
the idb includes entries for all applications that are available to the urc for job submission.
the idb entry for the sbm application defines the python interpreter as job executable and several parameters to configure the sbm python script which is introduced in the next subsection.
sbm python script
the sbm python script is based on the python toolkit esbmtools  <cit>  that provides a wide range of functionalities to setup and manipulate structure-based models and to evaluate simulation output.
along with modular functions, python is platform-independent and readily available on most hpc systems.
therefore it is an excellent choice for the functionality that esbmtools is aiming for.
the script consists of various preprocessing and post-processing modules that include functions called by a central python script.
this python script represents the functional core unit of the sbm gridbean.
the toolkit interfaces with gromacs, a molecular dynamics software package  <cit>  in a version provided by the smog homepage  <cit>  that features an extension called g_kuh.
the gromacs extension g_kuh calculates the number of formed native contacts within the structure for each dumped frame of the simulated trajectory.
the number of formed native contacts is often referred to as the q value.
functionalities of the sbm python script.
RESULTS
the sbm gridbean
based on the sbm python script  we have developed an sbm gridbean that allows users to configure and run sbm simulations.
using unicore technology, we do not have to handle user authentication and authorization, web service protocols for job submission or file protocols during development but can rather concentrate on building an intuitive gridbean gui which provides input fields for several methods and parameters for esbmtools.
the gridbean also validates all values entered by a user before sending them to the server.
the gui contains several tabs which group the parameters together .
in the following we outline these tabs.figure  <dig>
screenshots displaying the input parameter tabs “pdb”, “mdp” and “forcefield”  of the graphical user interface of the sbm gridbean.
only the gridbean view is displayed, all other views of the urc  are minimized.
pdb parameters
the pdb tab  specifies the molecular structure to be analyzed.
the user has the choice to specify a pdb id in a text field.
the pdb file with the actual molecular structure data is then downloaded by the sbm python script.
alternatively, a pdb file which is available on the local file system can be specified.
during job submission the pdb file is copied to the unicore server.
in both cases the user can select the protein chains which should be processed by esbmtools.
by default all chains are selected.
molecular dynamics parameters
the mdp tab, shown in figure  <dig> in the middle, offers more general parameters to control the mdrun program.
the tab is structured into the three categories “run control”, “initialization” and “output control”.
these parameters are mapped by the python script to an *.mdp file which forms the input for the gromacs preprocessor grompp.
forcefield parameters
the “forcefield” tab defines specific parameter regarding the forcefield of an sbm simulation.
the user can choose between a coarse grained cα or an all-atom model which has influence on the precision and the runtime of the job.
at the all-atom level the user has the ability to choose between amino acid  and nucleic acid  as molecule type.
depending on the chosen molecule type the corresponding topologies of molecular building blocks for proteins  or dna/rna  are used.
a screenshot of this tab can be seen in figure  <dig>  on the right.
box parameters
the distance between the outer most atoms of the molecule and the rectangular simulation box in all three dimensions can be adjusted on this panel.
simulation parameters
the simulation tab allows to specify whether the structure-based model is only prepared and returned or a simulation with the structure-based model, i.e.
the actual simulation is started on the computing resource  attached to the unicore server.
in the first case the sbm python script will create only the input files *.mdp, *.gro and *.top files and in case of a cα simulation the file table.xvg.
creating only the input files is useful for computing sites where gromacs is not available or where the system resources are limited to perform a computationally demanding mdrun.
the created simulation files can then be transferred to a more capable computing site with a gromacs installation.
in the second case the sbm python script creates all configuration files and calls grompp and mdrun.
both gromacs commands are started as separate processes.
the results of this simulation type are plots of the contact map and q values as function of time.
further functions implemented and used in urc
monitoring
an important feature of the urc is the grid browser with which the status of submitted simulations can be monitored.
for every submitted simulation  a working directory is created.
this directory is the execution environment of the sbm python script and contains the generated simulation files and the output of grompp and mdrun.
the files in the working directory can be viewed and downloaded within the grid browser.
update site
another benefit of using unicore is the straightforward installation of gridbeans into the urc.
as the urc is based on eclipse it comes with an integrated update mechanism.
for instance, the sbm gridbean is installed by specifying the urla of the project’s update site and following the instructions of the setup wizard.
integration of third-party libraries
by using the java based gridbean api and eclipse as base technologies for the sbm gridbean we have integrated further java libraries from the domain of bioinformatics into the sbm gridbean, for example the jmol  <cit>  library for visualization tasks.
the structure of the simulated pdb or the trajectories from gromacs are visualized with jmol.
biojava  <cit>  is another library that we have integrated into the sbm gridbean.
local pdb files  can be parsed and the value of the chains parameter is then automatically filled in using biojava.
workflows
gridbeans are reusable components which can be integrated into composite models in the form of unicore workflows  <cit> .
with the graphical workflow editor, which is standard component in the urc, a graph can be built specifying the execution order  of the simulation steps using several different gridbeans from the “applications” pane of the urc.
an output file of a gridbean can be transferred as input file to another gridbean .
the job submission and the file handling is done automatically by the unicore workflow service.
in the next section we introduce a detailed case study of a workflow that includes the sbm gridbean.
exemplary workflow
to provide a concrete application example that employs the developed sbm gridbean, we present a case study of protein folding dynamics of the before described application scenarios within a basic unicore workflow.
we process ten exemplary proteins  containing from  <dig> up to  <dig> amino acids and both pure alpha-helical and mixed alpha-helical/beta-sheet structures, giving a cross-sectional overview.
the sbm gridbean facilitates the setup and execution of an md simulation in gromacs and two exemplary evaluation steps at a specific temperature: a contact map is generated and the q values along the simulated trajectory are calculated.
to this end, the sbm gridbean is embedded in a foreach workflow control structure  which automatically executes this step for each temperature.
an analysis like this can be used, e.g., in algorithms that search for folding temperatures of proteins.
in this study each protein was simulated at six different temperatures  which enclose the region of expected folding temperatures in the present sbm parametrization.
the folding temperature characterizes the temperature at which folded and unfolded conformations are equally occupied during a simulation.
the constructed workflow is submitted and the simulation progress is monitored in the grid browser shown in figure  <dig> on the left.
the jmol molecule viewer  and further eclipse plugins, that are integrated in the urc, allow visualization of the simulation results.
for each temperature the workflow generates the contact map of the protein and a plot of the q value trajectory as a function of time, depicted in figures  <dig> and  <dig>  respectively.
the contact map gives detailed structural information about the protein’s native state.
based on the q value trajectory it is possible to estimate whether the protein is in its folded or unfolded state at the simulated temperature.figure  <dig>
workflow for finding the protein’s folding temperature which is constructed in the workflow editor of urc employing the sbm gridbean.
the setup of the foreach control structure used for running several sbm simulations for different temperatures is done in the “properties” tab, displayed on the right.
only the workflow editor view of the urc is shown.
the grid browser and further plugins, components of the urc, allow showing the progress and the results of the simulation.
on the left pane the gridbrowser is displayed, in the middle the finished workflow and the jmol in the small window on the right.
contact map of the serine proteinase inhibitor ci- <dig> with pdb id 2ci <dig>
q value trajectory of a simulation for the protein ci- <dig>  the transitions between q ≈  <dig> and q ≈  <dig> indicate folding and unfolding events.
the case study demonstrates the practicability of the presented sbm gridbean in operation on  <dig> exemplary proteins.
the gridbean provides reusability for arbitrary protein structures at desired temperatures which allows its direct integration into workflows.
the end user is not confronted with the details of the model or the implementation itself but can focus on the design and execution of the desired studies.
the technical challenges are transferred to a developer who has carried out the required core implementation .
this core implementation needs to meet the requirements of projected workflows for which it might be beneficial in the future to split up the gridbean in parts dealing with pre- and post-processing.
in the additional files we provide a screen dump showing the installation and setup processes , as well as the usage of the sbm gridbean for the case study discussed above .
in this case study, we make use of the pilot service that is currently available for employees and students at kit.
in future, we plan to provide such a service for broader community as part of e-infrastructure projects.
benefits and drawbacks
in the following we will provide an outline of the major benefits of using our proposed software tools combined with a critical discussion of the drawbacks, particularly in comparison with existing alternative solutions.
the gui of the sbm gridbean provides intuitive access to the most common methods of the esbmtools modules and enables a wide range of individuals to run sbm simulations.
while an end-user of the sbm gridbean are not faced with any line of code, the flexibility of changing the internal logic of the simulation steps is limited compared to the usage of the esbmtools api directly.
thus, some variations of the model would require relevant changes in the sbm python script.
nevertheless, this restricted flexibility has an additional advantage because the gui does not expose well documented and validated features for changes the end-user.
this increases the overall quality and reproducibility of the simulation output.
generating the input files for gromacs via a web server is a useful approach.
the software must be installed only once on the web server and is then accessible from all over the world.
by using the sbm gridbean the user has to additionally install the urc on their local desktop and the sbm gridbean into the urc from an update-site.
if the web server is not attached to a computing cluster it may have limited resources for md runs.
in these cases, the prepared input files can be transferred from the web server to a more capable computing infrastructure that provides generic services for md simulations with gromacs.
however, the unicore service comes with an integrated solution to access modern hpc and htc computing infrastructures and is not only capable to prepare the input files for the simulation but also to efficiently execute computationally demanding all-atom sbm simulations using a massively parallel version of gromacs.
in all cases, the end-user will benefit from the uniform environment for modeling and simulation setup provided by the urc and the sbm gridbean.
users who use a web server are supposed to trust the service providers in respect of handling their data.
in addition to encrypting the whole client-server communication via ssl, the middleware unicore uses x.
<dig> certificates for authentication and thus can ensure that only authorized persons have access to the connected resources.
while contributing to the overall security substantially, managing x.
<dig> certificates is considered generally more complex compared to simple user credentials such as username and password which are currently not supported.
we expect that in future unicore will provide alternative authentication mechanisms.
in the following, we compare our proposed new software to an established tool in the community, particularly to the smog server, which was already introduced above.
except for the source code extensions to gromacs it is a closed-source system leading to different concepts for establishing trust relations with their end-users compared to an open-source product.
furthermore, the extension of the platform with further functionalities, e.g.
connecting to computing resources, and the setup an own instance of the service is not possible.
in contrast, the esbmtools api and the sbm gridbean are open source.
interested parties  can download, adapt, redistribute and productively use the source code for their purposes.
the esbmtools api and the sbm gridbean make use of several well known and tested bioinformatics libraries such as numpy, biopython, jmol etc.
these third-party libraries are well tested and have a high quality by permanent observation and development within the community.
using them increases the quality of the software and enriches it with many useful features for the end-user.
although java and python are used as the programming languages for the implementation of esbmtools and the sbm gridbean, no programming language knowledge is required for using the sbm gridbean in the urc for constructing workflow models and running simulations.
the functionalities for constructing and executing workflows using unicore enables the design of individual custom-made projects employing sbm of biomolecular systems.
the laborious working steps and protocols, as well as security mechanisms are hidden in the inner logic of the urc, the sbm gridbean and the unicore service and only properties and functions relevant for modeling and execution of workflows are exposed through the user interface so that end-users can focus on solving domain-specific challenges in biophysics, biochemistry or bioinformatics.
in table  <dig> we summarize the benefits and potential drawbacks of our implementation of sbm compared to the smog server, esbmtools and the sbm gridbean, as discussed above.table  <dig>
comparison between smog server and sbm gridbean
CONCLUSIONS
significant progress on the technological side and the development of increasingly accurate forcefields enable biomolecular simulations which provide atomically detailed insight into the molecular machinery of life, yet require expert knowledge for the setup and analysis of data.
one common class of such biomolecular simulations, native structure-based or gō-type models, contributes to answer questions ranging from protein and rna folding to function and structure prediction.
we have developed a framework to facilitate construction and execution of workflows for these simulations based on the unicore middleware.
we showed the straightforward setup of an exemplary workflow and expect that it can be adapted to individual projects as a service for the biomolecular simulation community.
availability and requirements
project name: unicore based integration of esbmtools
project home page: the home page of esbmtools is http://sourceforge.net/projects/esbmtools.
the source code of the sbm gridbean is available under
http://www.multiscale-modelling.eu/svn/esbmtools/gridbeans.
operating system: platform independent
programming language: java and python
other requirements: unicore  server is required on the server host, urc  on the client host, java runtime environment on both the client and server hosts, and python interpreter and gromacs on the computing resource.
license: freebsd license  for the sbm gridbean  and gnu gpl  for esbmtools
endnote
a for this project, the public update site is http://www.multiscale-modelling.eu/update-site/esbmtools/ <dig> /.
electronic supplementary material
additional file 1:
demonstration of installation and usage of the sbm gridbean: part  <dig>  this video shows how to add an unicore site to the grid browser and install the sbm gridbean from an update site.
additional file 2:
demonstration of installation and usage of the sbm gridbean: part  <dig>  this video shows how to construct a workflow for finding the folding temperature of a protein.
additional file 3:
demonstration of installation and usage of the sbm gridbean: part  <dig>  this video shows how to submit and monitor the simulation and view the results.
abbreviations
apiapplication programming interface
cmlchemical markup language
guigraphical user interface
hpchigh performance computing
htchigh throughput computing
idbincarnation data base
itinformation technology
jsdljob submission description language
mdmolecular dynamics
mdpmolecular dynamics parameter
msmlmolecular simulation markup language
nmrnuclear magnetic resonance
pdbprotein data bank
rnaribonucleic acid
sbmstructure based modeling
smogstructure-based models in gromacs
soaservice oriented architecture
sslsecure socket layer
urcunicore rich client
xmlextensible markup language.
competing interests
the authors declare that they have no competing interests.
authors’ contributions
bl and cs provided their knowledge on esbmtools, participated in the design of the gridbean, carried out the case studies , and drafted the manuscript.
sb has programmed the sbm gridbean and drafted the manuscript.
ik coordinated the project, participated in the conception and worked on finalizing the manuscript; as conceived of the study, and participated in its design and coordination and helped to finalize the manuscript.
all authors read and approved the final manuscript.

 great progress in experimental techniques, such as x-ray diffraction analysis and nuclear magnetic resonance spectroscopy, has led to a vastly increased diversity and quality of biomolecular structure data presented in the protein data bank. by combining this information with biomolecular simulation one can supplement static structural models with an increasingly detailed dynamic picture even for huge molecular machines like the ribosome. still, exploring the dynamical nature of molecular life poses a significant challenge for present-day computational resources. while astonishing progress in this field has led to first all-atom protein folding simulations for small globular proteins on the millisecond timescale, the required specialized supercomputers are not publicly available. an intriguing alternative to simulating these biomolecules with atomic resolution in physics-/chemistry-based forcefields is focusing on their essential features and coarse-graining either the resolution of the system or its forcefield. in such cg models, the granularity of the system is typically changed from an all-atom representation by mapping groups of atoms into single beads. this reduces the computational complexity and provides access to longer timescales and length scales. for example, in the martini forcefield typically four heavy atoms and the associated hydrogens are mapped into a single bead representing the respective group. another approach, the so-called native structure-based modeling, is based on energy landscape theory and the principle of minimal frustration. accordingly, the energy landscape has a funnel-like shape biased towards the native state of a protein. in a long evolutionary process, the energy landscape was smoothened by minimizing roughness and frustration to enable efficient folding by ensuring a dominance of native interactions over non-native ones. thus the structural information of the native state becomes an integral part of the model potential describing the interactions in the biomolecular system. topological information, such as the contact map of the native state, is usually employed initially within coarse-grained c α or c β models and more recently, within all-atom models. the introduced bias towards the native state reduces the forcefield complexity without loss of essential information and enables the simulation on biologically relevant timescales, e.g. protein folding simulation on the all-atom level on standard desktop computers. in many recent studies of protein dynamics sbm has become the tool of choice to rationalize experimental observations by means of computer simulations. structure based modeling provides now an established method for physical understanding of, e.g. folding pathways, folding kinetics, effects like posttranslational modifications or oligomerization. the sbm has been generalized to describe also proteins with two or more stable native conformations in order to model functional transitions, e.g. allostery and ligand binding. moreover, transition states, which are experimentally directly not accessible, have been studied using sbm. still, one might easily expect that focusing on native interactions and neglecting non-native interactions within sbm distorts simulation results. significant effort has therefore been invested to examine to which extend non-native interactions play critical roles. in particular, recent work has carefully analyzed the role of native interactions in prior atomically resolved simulations. these studies have found dominance of native interactions to non-native ones and good agreement between results from cg sbm simulations and more fine-grained models. overall, sbm is accurate for the extreme case of minimal or no frustration, with all-atom models realizing all possible non-native interactions. somewhat surprisingly, neglecting non-native interactions does not significantly distort simulations results. this not only makes the minimalistic sbm very useful, but also suggests that naturally occurring proteins seem to possess low frustration. in numerous close collaborations between experimental and modeling research groups the sbm methods are applied. to enable regular use by the community of, in particular, experimental scientists or other researchers who do not possess specialized programming and/or modeling experience, it seems senseful to establish a research infrastructure standardizing and simplifying the simulation setup and submission, as well as the evaluation of these simulations. this infrastructure should include services for development of novel models and adaption of existing models to new applications, and routine deployment of ready-to-go models. a first effort to establish such a service is the smog web server that is publicly available under http://smog-server.org/. this server provides a convenient setup of native structure-based simulations with several options for custom forcefield choice and parameterization. going beyond mere folding, esmbtools is a python-based toolkit allowing the simplified setup and evaluation of native structure-based simulations for proteins and rna. the focus of this toolkit is enhancing these simulations by experimental or bioinformatics derived data, e.g. to enable the prediction of protein complexes or active conformations based on the statistical analysis of existing sequence databases or riboswitch folding. in particular, forcefields and topologies of amino and nucleic acids are encoded in xml files making the toolkit easily extensible to other biomolecules, such as ligands. providing a modeling and simulation service for sbm solves several challenging issues which we outline in the following: i) the simulations require use of computing resources which are usually unavailable locally and the scientist has to face the high technical complexity of distributed computing infrastructure. to this end, several solutions providing access to remote computing resources already exist. however, while hiding the complexity via virtualization of resources and abstraction, these middleware services are rather generic so that their direct use without the integration of the biomolecular model can pose even higher barriers for the end-user. ii) multiple program codes have to be linked together in one composite application via standard interfaces for automatic execution. data sources and sinks at different workflow steps have to be linked via standard interfaces. the existing solutions do not use generic standards but rather domain-specific solutions which have to be laboriously adapted to every new model and simulation. currently, there are many program codes that do not blend in with each other and therefore efforts have been recently spent to partially alleviate this problem. iii) the elements of the infrastructure exposed to researchers have to be reduced to minimum and made available via a modern graphical user interface. the challenging aspect is here the design decision what has to be included in the interface rather than the gui implementation itself. the access to more functions improves the tool capabilities and flexibility but heightens the expert level. in previous work, many of these issues have been tackled effectively for applications in high-throughput virtual screening, materials science and biomolecular nmr. in particular, a data model based framework for data exchange between workflow steps has been proposed and a toolkit has been provided for automatic generation of a data access service for scientific applications. thereby, the issues outlined above can be treated by means of modern technologies such as web services and model-driven engineering leading to complete automation of the program interfaces, workflows and dataflows. a common approach which has been extensively applied is the science gateway. for example, the virtual research community wenmr has a large collection of portals providing production services for different applications in structural biology, including molecular dynamics simulations with gromacs. data exchange in multi-step molecular simulations and analysis has been treated in several works previously. within the mosgrid project the molecular simulation markup language has been developed employing the concept of chemical markup language dictionaries and used in quantum chemistry, molecular dynamics and docking simulations on the mosgrid portal. the collaborative computing project for nmr has provided a software framework that consists of a data model, the ccpnmr analysis program, and a collection of additional tools, including the ccpnmr formatconverter. the ccpn application programming interface is available in three programming languages and enables the integration of additional analysis and simulation software to build complex workflow applications. in this paper, we present a software infrastructure which deploys sbm on distributed high-throughput computing and high performance computing resources providing a powerful interface for model development and user-friendly interface. the software provides a simple and still flexible graphical user interface for esbmtools to allow end users to run sbm simulations without developing it technical skills. implementation we have adopted the principles of service oriented architecture to design the implementation of the platform. thus, many of the generic components required for the implementation are available in existing and well established grid and cloud middleware stacks, from which we have selected the unicore middleware. unicore is a fully fledged and mature open-source middleware which has been deployed and supported on large computing infrastructures such as prace in europe and more recently also on xsede in the usa. computing clusters and other hpc resources managed by common batch systems, such as sge, lsf, pbs torque and loadleveler, can readily be used with unicore. currently, unicore offers four different client variants: command line client, graphical rich client, a portal client and a high-level api. the unicore rich client provides us with the software basis to integrate esbmtools within an application extension called gridbean. in addition, unicore includes a workflow engine and a powerful graphical workflow editor, completely integrated in the service layer and the urc, respectively. furthermore, there are several alternative open source middleware solutions. in the following, we briefly review two of them. the globus toolkit is a widely used open source toolkit which implements numerous standards and allows building infrastructures for grid computing. it has overall standards conformity similar to that of unicore but does not provide graphical clients and portals and can be used with the galaxy workflow system. the middleware arc has been developed and included in the software stack of the european middleware initiative. it implements web services standards for server-client communication and provides a gui client. arc integrates with the third-party workflow engine taverna. implementation architecturegeneral architecture of sbm simulation with esbmtools based on unicore. the implementation of the sbm gridbean is based on the gridbean api and consists of three major parts: a configuration file gridbean.xml which defines runtime parameters for the gridbean in the urc, e.g. names and versions of the gridbean and of the target application on the server; a java class containing the gridbean model which defines the job parameters and input/output files; a plugin class which defines the graphical user interface and the mapping of the input components to the gridbean model. here, a validator can be defined which performs type and plausibility checks on input parameters. during job submission the urc translates the input from the sbm gridbean into a jsdl request which is then sent together with a pdb input file or a pdb id to the unicore server. the unicore server has an incarnation database which determines how to handle the incoming jsdl request. the idb includes entries for all applications that are available to the urc for job submission. the idb entry for the sbm application defines the python interpreter as job executable and several parameters to configure the sbm python script which is introduced in the next subsection. sbm python script the sbm python script is based on the python toolkit esbmtools that provides a wide range of functionalities to setup and manipulate structure-based models and to evaluate simulation output. along with modular functions, python is platform-independent and readily available on most hpc systems. therefore it is an excellent choice for the functionality that esbmtools is aiming for. the script consists of various preprocessing and post-processing modules that include functions called by a central python script. this python script represents the functional core unit of the sbm gridbean. the toolkit interfaces with gromacs, a molecular dynamics software package in a version provided by the smog homepage that features an extension called g_kuh. the gromacs extension g_kuh calculates the number of formed native contacts within the structure for each dumped frame of the simulated trajectory. the number of formed native contacts is often referred to as the q value. functionalities of the sbm python script.  the sbm gridbean based on the sbm python script we have developed an sbm gridbean that allows users to configure and run sbm simulations. using unicore technology, we do not have to handle user authentication and authorization, web service protocols for job submission or file protocols during development but can rather concentrate on building an intuitive gridbean gui which provides input fields for several methods and parameters for esbmtools. the gridbean also validates all values entered by a user before sending them to the server. the gui contains several tabs which group the parameters together. in the following we outline these tabs.figure screenshots displaying the input parameter tabs “pdb”, “mdp” and “forcefield” of the graphical user interface of the sbm gridbean. only the gridbean view is displayed, all other views of the urc are minimized. pdb parameters the pdb tab specifies the molecular structure to be analyzed. the user has the choice to specify a pdb id in a text field. the pdb file with the actual molecular structure data is then downloaded by the sbm python script. alternatively, a pdb file which is available on the local file system can be specified. during job submission the pdb file is copied to the unicore server. in both cases the user can select the protein chains which should be processed by esbmtools. by default all chains are selected. molecular dynamics parameters the mdp tab, shown in figure in the middle, offers more general parameters to control the mdrun program. the tab is structured into the three categories “run control”, “initialization” and “output control”. these parameters are mapped by the python script to an *.mdp file which forms the input for the gromacs preprocessor grompp. forcefield parameters the “forcefield” tab defines specific parameter regarding the forcefield of an sbm simulation. the user can choose between a coarse grained cα or an all-atom model which has influence on the precision and the runtime of the job. at the all-atom level the user has the ability to choose between amino acid and nucleic acid as molecule type. depending on the chosen molecule type the corresponding topologies of molecular building blocks for proteins or dna/rna are used. a screenshot of this tab can be seen in figure on the right. box parameters the distance between the outer most atoms of the molecule and the rectangular simulation box in all three dimensions can be adjusted on this panel. simulation parameters the simulation tab allows to specify whether the structure-based model is only prepared and returned or a simulation with the structure-based model, i.e. the actual simulation is started on the computing resource attached to the unicore server. in the first case the sbm python script will create only the input files *.mdp, *.gro and *.top files and in case of a cα simulation the file table.xvg. creating only the input files is useful for computing sites where gromacs is not available or where the system resources are limited to perform a computationally demanding mdrun. the created simulation files can then be transferred to a more capable computing site with a gromacs installation. in the second case the sbm python script creates all configuration files and calls grompp and mdrun. both gromacs commands are started as separate processes. the results of this simulation type are plots of the contact map and q values as function of time. further functions implemented and used in urc monitoring an important feature of the urc is the grid browser with which the status of submitted simulations can be monitored. for every submitted simulation a working directory is created. this directory is the execution environment of the sbm python script and contains the generated simulation files and the output of grompp and mdrun. the files in the working directory can be viewed and downloaded within the grid browser. update site another benefit of using unicore is the straightforward installation of gridbeans into the urc. as the urc is based on eclipse it comes with an integrated update mechanism. for instance, the sbm gridbean is installed by specifying the urla of the project’s update site and following the instructions of the setup wizard. integration of third-party libraries by using the java based gridbean api and eclipse as base technologies for the sbm gridbean we have integrated further java libraries from the domain of bioinformatics into the sbm gridbean, for example the jmol library for visualization tasks. the structure of the simulated pdb or the trajectories from gromacs are visualized with jmol. biojava is another library that we have integrated into the sbm gridbean. local pdb files can be parsed and the value of the chains parameter is then automatically filled in using biojava. workflows gridbeans are reusable components which can be integrated into composite models in the form of unicore workflows. with the graphical workflow editor, which is standard component in the urc, a graph can be built specifying the execution order of the simulation steps using several different gridbeans from the “applications” pane of the urc. an output file of a gridbean can be transferred as input file to another gridbean. the job submission and the file handling is done automatically by the unicore workflow service. in the next section we introduce a detailed case study of a workflow that includes the sbm gridbean. exemplary workflow to provide a concrete application example that employs the developed sbm gridbean, we present a case study of protein folding dynamics of the before described application scenarios within a basic unicore workflow. we process ten exemplary proteins containing from up to amino acids and both pure alpha-helical and mixed alpha-helical/beta-sheet structures, giving a cross-sectional overview. the sbm gridbean facilitates the setup and execution of an md simulation in gromacs and two exemplary evaluation steps at a specific temperature: a contact map is generated and the q values along the simulated trajectory are calculated. to this end, the sbm gridbean is embedded in a foreach workflow control structure which automatically executes this step for each temperature. an analysis like this can be used, e.g., in algorithms that search for folding temperatures of proteins. in this study each protein was simulated at six different temperatures which enclose the region of expected folding temperatures in the present sbm parametrization. the folding temperature characterizes the temperature at which folded and unfolded conformations are equally occupied during a simulation. the constructed workflow is submitted and the simulation progress is monitored in the grid browser shown in figure on the left. the jmol molecule viewer and further eclipse plugins, that are integrated in the urc, allow visualization of the simulation results. for each temperature the workflow generates the contact map of the protein and a plot of the q value trajectory as a function of time, depicted in figures and respectively. the contact map gives detailed structural information about the protein’s native state. based on the q value trajectory it is possible to estimate whether the protein is in its folded or unfolded state at the simulated temperature.figure workflow for finding the protein’s folding temperature which is constructed in the workflow editor of urc employing the sbm gridbean. the setup of the foreach control structure used for running several sbm simulations for different temperatures is done in the “properties” tab, displayed on the right. only the workflow editor view of the urc is shown. the grid browser and further plugins, components of the urc, allow showing the progress and the results of the simulation. on the left pane the gridbrowser is displayed, in the middle the finished workflow and the jmol in the small window on the right. contact map of the serine proteinase inhibitor ci- with pdb id 2ci q value trajectory of a simulation for the protein ci- the transitions between q ≈ and q ≈ indicate folding and unfolding events. the case study demonstrates the practicability of the presented sbm gridbean in operation on exemplary proteins. the gridbean provides reusability for arbitrary protein structures at desired temperatures which allows its direct integration into workflows. the end user is not confronted with the details of the model or the implementation itself but can focus on the design and execution of the desired studies. the technical challenges are transferred to a developer who has carried out the required core implementation. this core implementation needs to meet the requirements of projected workflows for which it might be beneficial in the future to split up the gridbean in parts dealing with pre- and post-processing. in the additional files we provide a screen dump showing the installation and setup processes, as well as the usage of the sbm gridbean for the case study discussed above. in this case study, we make use of the pilot service that is currently available for employees and students at kit. in future, we plan to provide such a service for broader community as part of e-infrastructure projects. benefits and drawbacks in the following we will provide an outline of the major benefits of using our proposed software tools combined with a critical discussion of the drawbacks, particularly in comparison with existing alternative solutions. the gui of the sbm gridbean provides intuitive access to the most common methods of the esbmtools modules and enables a wide range of individuals to run sbm simulations. while an end-user of the sbm gridbean are not faced with any line of code, the flexibility of changing the internal logic of the simulation steps is limited compared to the usage of the esbmtools api directly. thus, some variations of the model would require relevant changes in the sbm python script. nevertheless, this restricted flexibility has an additional advantage because the gui does not expose well documented and validated features for changes the end-user. this increases the overall quality and reproducibility of the simulation output. generating the input files for gromacs via a web server is a useful approach. the software must be installed only once on the web server and is then accessible from all over the world. by using the sbm gridbean the user has to additionally install the urc on their local desktop and the sbm gridbean into the urc from an update-site. if the web server is not attached to a computing cluster it may have limited resources for md runs. in these cases, the prepared input files can be transferred from the web server to a more capable computing infrastructure that provides generic services for md simulations with gromacs. however, the unicore service comes with an integrated solution to access modern hpc and htc computing infrastructures and is not only capable to prepare the input files for the simulation but also to efficiently execute computationally demanding all-atom sbm simulations using a massively parallel version of gromacs. in all cases, the end-user will benefit from the uniform environment for modeling and simulation setup provided by the urc and the sbm gridbean. users who use a web server are supposed to trust the service providers in respect of handling their data. in addition to encrypting the whole client-server communication via ssl, the middleware unicore uses x. certificates for authentication and thus can ensure that only authorized persons have access to the connected resources. while contributing to the overall security substantially, managing x. certificates is considered generally more complex compared to simple user credentials such as username and password which are currently not supported. we expect that in future unicore will provide alternative authentication mechanisms. in the following, we compare our proposed new software to an established tool in the community, particularly to the smog server, which was already introduced above. except for the source code extensions to gromacs it is a closed-source system leading to different concepts for establishing trust relations with their end-users compared to an open-source product. furthermore, the extension of the platform with further functionalities, e.g. connecting to computing resources, and the setup an own instance of the service is not possible. in contrast, the esbmtools api and the sbm gridbean are open source. interested parties can download, adapt, redistribute and productively use the source code for their purposes. the esbmtools api and the sbm gridbean make use of several well known and tested bioinformatics libraries such as numpy, biopython, jmol etc. these third-party libraries are well tested and have a high quality by permanent observation and development within the community. using them increases the quality of the software and enriches it with many useful features for the end-user. although java and python are used as the programming languages for the implementation of esbmtools and the sbm gridbean, no programming language knowledge is required for using the sbm gridbean in the urc for constructing workflow models and running simulations. the functionalities for constructing and executing workflows using unicore enables the design of individual custom-made projects employing sbm of biomolecular systems. the laborious working steps and protocols, as well as security mechanisms are hidden in the inner logic of the urc, the sbm gridbean and the unicore service and only properties and functions relevant for modeling and execution of workflows are exposed through the user interface so that end-users can focus on solving domain-specific challenges in biophysics, biochemistry or bioinformatics. in table we summarize the benefits and potential drawbacks of our implementation of sbm compared to the smog server, esbmtools and the sbm gridbean, as discussed above.table comparison between smog server and sbm gridbean  significant progress on the technological side and the development of increasingly accurate forcefields enable biomolecular simulations which provide atomically detailed insight into the molecular machinery of life, yet require expert knowledge for the setup and analysis of data. one common class of such biomolecular simulations, native structure-based or gō-type models, contributes to answer questions ranging from protein and rna folding to function and structure prediction. we have developed a framework to facilitate construction and execution of workflows for these simulations based on the unicore middleware. we showed the straightforward setup of an exemplary workflow and expect that it can be adapted to individual projects as a service for the biomolecular simulation community. availability and requirements project name: unicore based integration of esbmtools project home page: the home page of esbmtools is http://sourceforge.net/projects/esbmtools. the source code of the sbm gridbean is available under http://www.multiscale-modelling.eu/svn/esbmtools/gridbeans. operating system: platform independent programming language: java and python other requirements: unicore server is required on the server host, urc on the client host, java runtime environment on both the client and server hosts, and python interpreter and gromacs on the computing resource. license: freebsd license for the sbm gridbean and gnu gpl for esbmtools endnote a for this project, the public update site is http://www.multiscale-modelling.eu/update-site/esbmtools/ /. electronic supplementary material additional file 1: demonstration of installation and usage of the sbm gridbean: part this video shows how to add an unicore site to the grid browser and install the sbm gridbean from an update site. additional file 2: demonstration of installation and usage of the sbm gridbean: part this video shows how to construct a workflow for finding the folding temperature of a protein. additional file 3: demonstration of installation and usage of the sbm gridbean: part this video shows how to submit and monitor the simulation and view the results. abbreviations apiapplication programming interface cmlchemical markup language guigraphical user interface hpchigh performance computing htchigh throughput computing idbincarnation data base itinformation technology jsdljob submission description language mdmolecular dynamics mdpmolecular dynamics parameter msmlmolecular simulation markup language nmrnuclear magnetic resonance pdbprotein data bank rnaribonucleic acid sbmstructure based modeling smogstructure-based models in gromacs soaservice oriented architecture sslsecure socket layer urcunicore rich client xmlextensible markup language. competing interests the authors declare that they have no competing interests. authors’ contributions bl and cs provided their knowledge on esbmtools, participated in the design of the gridbean, carried out the case studies, and drafted the manuscript. sb has programmed the sbm gridbean and drafted the manuscript. ik coordinated the project, participated in the conception and worked on finalizing the manuscript; as conceived of the study, and participated in its design and coordination and helped to finalize the manuscript. all authors read and approved the final manuscript. 
molecular dynamics simulations provide valuable insight into biomolecular systems at the atomic level. at the same time, complete workflows for advanced simulation protocols can be established and managed on remote resources by a graphical interface which increases reusability of protocols and additionally lowers the entry barrier into such simulations for, e.g., experimental scientists who want to compare their results against simulations. native structure-based models, also called gō-type models, are based on energy landscape theory and the principle of minimal frustration. this infrastructure organizes the setup of such simulations resulting in increased comparability of simulation results. here, we establish an efficient infrastructure for native structure-based models to support the community and enable high-throughput simulations on remote computing resources via gridbeans and unicore middleware.
 molecular dynamics simulations provide valuable insight into biomolecular systems at the atomic level. notwithstanding the ever-increasing power of high performance computers current md simulations face several challenges: the fastest atomic movements require time steps of a few femtoseconds which are small compared to biomolecular relevant timescales of milliseconds or even seconds for large conformational motions. at the same time, scalability to a large number of cores is limited mostly due to long-range interactions. an appealing alternative to atomic-level simulations is coarse-graining the resolution of the system or reducing the complexity of the hamiltonian to improve sampling while decreasing computational costs. native structure-based models, also called gō-type models, are based on energy landscape theory and the principle of minimal frustration. they have been tremendously successful in explaining fundamental questions of, e.g., protein folding, rna folding or protein function. at the same time, they are computationally sufficiently inexpensive to run complex simulations on smaller computing systems or even commodity hardware. still, their setup and evaluation is quite complex even though sophisticated software packages support their realization.  here, we establish an efficient infrastructure for native structure-based models to support the community and enable high-throughput simulations on remote computing resources via gridbeans and unicore middleware. this infrastructure organizes the setup of such simulations resulting in increased comparability of simulation results. at the same time, complete workflows for advanced simulation protocols can be established and managed on remote resources by a graphical interface which increases reusability of protocols and additionally lowers the entry barrier into such simulations for, e.g., experimental scientists who want to compare their results against simulations. we demonstrate the power of this approach by illustrating it for protein folding simulations for a range of proteins.  we present software enhancing the entire workflow for native structure-based simulations including exception-handling and evaluations. extending the capability and improving the accessibility of existing simulation packages the software goes beyond the state of the art in the domain of biomolecular simulations. thus we expect that it will stimulate more individuals from the community to employ more confidently modeling in their research. electronic supplementary material the online version of this article contains supplementary material, which is available to authorized users. keywords protein foldingrna foldingnative structure-based modelmolecular dynamicsgridbeansissue-copyright-statement© the author 2014 