-
Notifications
You must be signed in to change notification settings - Fork 2
/
main.h
50 lines (38 loc) · 1.36 KB
/
main.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
/**
* \file main.h
* \brief Helper functions for executable .cpp files
*
* Copyright 2007-2022 IMP Inventors. All rights reserved.
*/
#ifndef IMPNPCTRANSPORT_MAIN_H
#define IMPNPCTRANSPORT_MAIN_H
#include "npctransport_config.h"
#include "SimulationData.h"
#include <IMP/base_types.h>
#include <string>
IMPNPCTRANSPORT_BEGIN_NAMESPACE
/**
initialize and return a simulation data object based on
program command line parameters
@throw IMP::IOException if there was any IO problem
*/
IMPNPCTRANSPORTEXPORT
IMP::npctransport::SimulationData *startup(int argc, char *argv[]);
//! remove nup42 and its anchors (also from obstacles)
IMPNPCTRANSPORTEXPORT
void remove_Nup42(SimulationData* sd);
//! inflate floater of specified type to new_radius
IMPNPCTRANSPORTEXPORT
void inflate_floater
(SimulationData* sd, const std::string floater_name, const float new_radius);
//! change box size sd to specified box size and update output file
IMPNPCTRANSPORTEXPORT
void reset_box_size(SimulationData* sd, double box_size);
/** Run simulation using preconstructed SimulationData object sd.
@param sd SimulationData object to optimize
@param init_restraints ad-hoc restraints during initialization only
*/
IMPNPCTRANSPORTEXPORT
void do_main_loop(SimulationData *sd, const RestraintsTemp &init_restraints);
IMPNPCTRANSPORT_END_NAMESPACE
#endif /* IMPNPCTRANSPORT_MAIN_H */