Changeset 25d9d9


Ignore:
Timestamp:
Jun 12, 2016, 8:48:21 AM (9 years ago)
Author:
Frederik Heber <heber@…>
Branches:
Fix_BoundInBox_CenterInBox_MoleculeActions
Parents:
996ef1
git-author:
Frederik Heber <heber@…> (06/11/16 16:43:54)
git-committer:
Frederik Heber <heber@…> (06/12/16 08:48:21)
Message:

FIX: CenterInBox and BoundInBox are actions acting on molecules, not world.

  • just stumbled over this when realizing that center-in-box does not center all selected atoms within the box but each of the currently present molecules individually.
  • this is also changed to act only on selected molecules.
  • TEST: extended regression test to only test centering and bounding of some molecules (and not only all).
  • TESTFIX: needed to change regression tests on all molecules to prepend action with select-all-molecules.
  • Needed to renamed python action in boxmaker.py.in.
  • DOCU: Corrected description in userguide.
Files:
6 added
6 edited
8 moved

Legend:

Unmodified
Added
Removed
  • doc/userguide/userguide.xml

    r996ef1 r25d9d9  
    11541154        </section>
    11551155        <section xml:id="domain.bound-in-box">
    1156           <title xml:id="domain.bound-in-box.title">Bound atoms inside box </title>
     1156          <title xml:id="domain.bound-in-box.title">Bound selected molecules inside box </title>
    11571157          <para>The following applies the current boundary conditions to the
    1158           atoms. In case of periodic or wrapped boundary conditions the atoms
    1159           will be periodically translated to be inside the domain
    1160           again.</para>
    1161           <programlisting>... --bound-in-box</programlisting>
     1158          atoms of all currently selected molecules. In case of periodic or
     1159          wrapped boundary conditions the atoms will be periodically translated
     1160          to be inside the domain again.</para>
     1161          <programlisting>... --select-all-molecules --bound-in-box</programlisting>
    11621162        </section>
    11631163        <section xml:id="domain.center-in-box">
    1164           <title xml:id="domain.center-in-box.title">Center atoms inside the domain</title>
    1165           <para>This is a combination of changing the box and bounding the
    1166           atoms inside it.</para>
    1167           <programlisting>... --center-in-box &quot;20,0,20,0,0,20&quot;</programlisting>
     1164          <title xml:id="domain.center-in-box.title">Center each selected molecule inside the domain</title>
     1165          <para>This takes each molecule in turn, calculates its center and shifts all
     1166          associated atoms in such a way that its center coincides with that of the
     1167          domain.</para>
     1168          <programlisting>... --select-molecule-by-order -1
     1169          --center-in-box &quot;20,0,20,0,0,20&quot;</programlisting>
    11681170        </section>
    11691171        <section xml:id="domain.center-edge">
  • src/Actions/GlobalListOfActions.hpp

    r996ef1 r25d9d9  
    7373  (GraphSubgraphDissection) \
    7474  (MoleculeBondFile) \
     75  (MoleculeBoundInBox) \
     76  (MoleculeCenterInBox) \
    7577  (MoleculeChangeName) \
    7678  (MoleculeChangeBondAngle) \
     
    145147  (TesselationNonConvexEnvelope) \
    146148  (WorldAddEmptyBoundary) \
    147   (WorldBoundInBox) \
    148   (WorldCenterInBox) \
    149149  (WorldCenterOnEdge) \
    150150  (WorldChangeBox) \
  • src/Actions/Makefile.am

    r996ef1 r25d9d9  
    301301MOLECULEACTIONSOURCE = \
    302302  Actions/MoleculeAction/BondFileAction.cpp \
     303  Actions/MoleculeAction/BoundInBoxAction.cpp \
     304  Actions/MoleculeAction/CenterInBoxAction.cpp \
    303305  Actions/MoleculeAction/ChangeBondAngleAction.cpp \
    304306  Actions/MoleculeAction/ChangeNameAction.cpp \
     
    319321MOLECULEACTIONHEADER = \
    320322  Actions/MoleculeAction/BondFileAction.hpp \
     323  Actions/MoleculeAction/BoundInBoxAction.hpp \
     324  Actions/MoleculeAction/CenterInBoxAction.hpp \
    321325  Actions/MoleculeAction/ChangeBondAngleAction.hpp \
    322326  Actions/MoleculeAction/ChangeNameAction.hpp \
     
    337341MOLECULEACTIONDEFS = \
    338342  Actions/MoleculeAction/BondFileAction.def \
     343  Actions/MoleculeAction/BoundInBoxAction.def \
     344  Actions/MoleculeAction/CenterInBoxAction.def \
    339345  Actions/MoleculeAction/ChangeBondAngleAction.def \
    340346  Actions/MoleculeAction/ChangeNameAction.def \
     
    579585WORLDACTIONSOURCE = \
    580586  Actions/WorldAction/AddEmptyBoundaryAction.cpp \
    581   Actions/WorldAction/BoundInBoxAction.cpp \
    582   Actions/WorldAction/CenterInBoxAction.cpp \
    583587  Actions/WorldAction/CenterOnEdgeAction.cpp \
    584588  Actions/WorldAction/ChangeBoxAction.cpp \
     
    593597WORLDACTIONHEADER = \
    594598  Actions/WorldAction/AddEmptyBoundaryAction.hpp \
    595   Actions/WorldAction/BoundInBoxAction.hpp \
    596   Actions/WorldAction/CenterInBoxAction.hpp \
    597599  Actions/WorldAction/CenterOnEdgeAction.hpp \
    598600  Actions/WorldAction/ChangeBoxAction.hpp \
     
    607609WORLDACTIONDEFS = \
    608610  Actions/WorldAction/AddEmptyBoundaryAction.def \
    609   Actions/WorldAction/BoundInBoxAction.def \
    610   Actions/WorldAction/CenterInBoxAction.def \
    611611  Actions/WorldAction/CenterOnEdgeAction.def \
    612612  Actions/WorldAction/ChangeBoxAction.def \
  • src/Actions/MoleculeAction/BoundInBoxAction.cpp

    r996ef1 r25d9d9  
    4545#include <vector>
    4646
    47 #include "Actions/WorldAction/BoundInBoxAction.hpp"
     47#include "Actions/MoleculeAction/BoundInBoxAction.hpp"
    4848
    4949using namespace MoleCuilder;
     
    5353#include "Action_impl_pre.hpp"
    5454/** =========== define the function ====================== */
    55 ActionState::ptr WorldBoundInBoxAction::performCall() {
     55ActionState::ptr MoleculeBoundInBoxAction::performCall() {
    5656  // create undo state
    5757  std::vector< boost::shared_ptr<Vector> > OldPositions;
    5858  {
    59     std::vector<const molecule*> AllMolecules = const_cast<const World &>(World::getInstance()).
    60         getAllMolecules();
    61     for (vector<const molecule*>::iterator MolRunner = AllMolecules.begin();
    62         MolRunner != AllMolecules.end();
     59    std::vector<const molecule*> SelectedMolecules = const_cast<const World &>(World::getInstance()).
     60        getSelectedMolecules();
     61    for (vector<const molecule*>::iterator MolRunner = SelectedMolecules.begin();
     62        MolRunner != SelectedMolecules.end();
    6363        ++MolRunner) {
    6464      for(molecule::const_iterator AtomRunner = (*MolRunner)->begin();
     
    7373    }
    7474  }
    75   WorldBoundInBoxState *undoState = new WorldBoundInBoxState(OldPositions, params);
     75  MoleculeBoundInBoxState *undoState = new MoleculeBoundInBoxState(OldPositions, params);
    7676
    7777  // center
    78   std::vector<molecule*> AllMolecules = World::getInstance().getAllMolecules();
    79   for (std::vector<molecule*>::iterator MolRunner = AllMolecules.begin(); MolRunner != AllMolecules.end(); ++MolRunner) {
     78  std::vector<molecule*> SelectedMolecules = World::getInstance().getSelectedMolecules();
     79  for (std::vector<molecule*>::iterator MolRunner = SelectedMolecules.begin(); MolRunner != SelectedMolecules.end(); ++MolRunner) {
    8080    (*MolRunner)->BoundInBox();
    8181  }
     
    8383}
    8484
    85 ActionState::ptr WorldBoundInBoxAction::performUndo(ActionState::ptr _state) {
    86   WorldBoundInBoxState *state = assert_cast<WorldBoundInBoxState*>(_state.get());
     85ActionState::ptr MoleculeBoundInBoxAction::performUndo(ActionState::ptr _state) {
     86  MoleculeBoundInBoxState *state = assert_cast<MoleculeBoundInBoxState*>(_state.get());
    8787
    8888  // place atoms on old positions
    8989  std::vector< boost::shared_ptr<Vector> >::const_iterator OldPositionsIter = state->OldPositions.begin();
    90   std::vector<molecule*> AllMolecules = World::getInstance().getAllMolecules();
    91   for (std::vector<molecule*>::iterator MolRunner = AllMolecules.begin();
    92       MolRunner != AllMolecules.end();
     90  std::vector<molecule*> SelectedMolecules = World::getInstance().getSelectedMolecules();
     91  for (std::vector<molecule*>::iterator MolRunner = SelectedMolecules.begin();
     92      MolRunner != SelectedMolecules.end();
    9393      ++MolRunner) {
    9494    for(molecule::iterator AtomRunner = (*MolRunner)->begin();
     
    9696        ++AtomRunner) {
    9797      ASSERT(OldPositionsIter != state->OldPositions.end(),
    98           "WorldBoundInBoxAction::performUndo() - too few positions stored in UndoState.");
     98          "MoleculeBoundInBoxAction::performUndo() - too few positions stored in UndoState.");
    9999      (*AtomRunner)->setPosition(**(OldPositionsIter++));
    100100    }
     
    104104}
    105105
    106 ActionState::ptr WorldBoundInBoxAction::performRedo(ActionState::ptr _state){
    107 //  WorldBoundInBoxState *state = assert_cast<WorldBoundInBoxState*>(_state.get());
     106ActionState::ptr MoleculeBoundInBoxAction::performRedo(ActionState::ptr _state){
     107//  MoleculeBoundInBoxState *state = assert_cast<MoleculeBoundInBoxState*>(_state.get());
    108108
    109109  // center
    110   std::vector<molecule*> AllMolecules = World::getInstance().getAllMolecules();
    111   for (std::vector<molecule*>::iterator MolRunner = AllMolecules.begin();
    112       MolRunner != AllMolecules.end();
     110  std::vector<molecule*> SelectedMolecules = World::getInstance().getSelectedMolecules();
     111  for (std::vector<molecule*>::iterator MolRunner = SelectedMolecules.begin();
     112      MolRunner != SelectedMolecules.end();
    113113      ++MolRunner) {
    114114    (*MolRunner)->BoundInBox();
     
    118118}
    119119
    120 bool WorldBoundInBoxAction::canUndo() {
     120bool MoleculeBoundInBoxAction::canUndo() {
    121121  return true;
    122122}
    123123
    124 bool WorldBoundInBoxAction::shouldUndo() {
     124bool MoleculeBoundInBoxAction::shouldUndo() {
    125125  return true;
    126126}
  • src/Actions/MoleculeAction/BoundInBoxAction.def

    r996ef1 r25d9d9  
    2727
    2828// some defines for all the names, you may use ACTION, STATE and PARAMS
    29 #define CATEGORY World
    30 #define MENUNAME "world"
     29#define CATEGORY Molecule
     30#define MENUNAME "molecule"
    3131#define MENUPOSITION 2
    3232#define ACTIONNAME BoundInBox
     
    3535
    3636// finally the information stored in the ActionTrait specialization
    37 #define DESCRIPTION "bound all atoms in the domain"
     37#define DESCRIPTION "bound each selected molecule in the domain"
    3838#undef SHORTFORM
  • src/Actions/MoleculeAction/CenterInBoxAction.cpp

    r996ef1 r25d9d9  
    5353#include <vector>
    5454
    55 #include "Actions/WorldAction/CenterInBoxAction.hpp"
     55#include "Actions/MoleculeAction/CenterInBoxAction.hpp"
    5656
    5757using namespace MoleCuilder;
     
    6161#include "Action_impl_pre.hpp"
    6262/** =========== define the function ====================== */
    63 ActionState::ptr WorldCenterInBoxAction::performCall() {
     63ActionState::ptr MoleculeCenterInBoxAction::performCall() {
    6464  // create undo state
    6565  std::stringstream undostream;
     
    6969  std::vector< boost::shared_ptr<Vector> > OldPositions;
    7070  {
    71     std::vector<const molecule*> AllMolecules = const_cast<const World &>(World::getInstance()).
    72         getAllMolecules();
    73     for (std::vector<const molecule*>::iterator MolRunner = AllMolecules.begin();
    74         MolRunner != AllMolecules.end();
     71    std::vector<const molecule*> SelectedMolecules = const_cast<const World &>(World::getInstance()).
     72        getSelectedMolecules();
     73    for (std::vector<const molecule*>::iterator MolRunner = SelectedMolecules.begin();
     74        MolRunner != SelectedMolecules.end();
    7575        ++MolRunner) {
    7676      for(molecule::const_iterator AtomRunner = (*MolRunner)->begin();
     
    9090
    9191  // center atoms
    92   std::vector<molecule*> AllMolecules = World::getInstance().getAllMolecules();
    93   for (std::vector<molecule*>::iterator MolRunner = AllMolecules.begin(); MolRunner != AllMolecules.end(); ++MolRunner) {
     92  std::vector<molecule*> SelectedMolecules = World::getInstance().getSelectedMolecules();
     93  for (std::vector<molecule*>::iterator MolRunner = SelectedMolecules.begin(); MolRunner != SelectedMolecules.end(); ++MolRunner) {
    9494    (*MolRunner)->CenterInBox();
    9595  }
     
    9999
    100100  // create undo state
    101   WorldCenterInBoxState *UndoState =
    102       new WorldCenterInBoxState(
     101  MoleculeCenterInBoxState *UndoState =
     102      new MoleculeCenterInBoxState(
    103103          undostream.str(),
    104104          OldPositions,
     
    109109}
    110110
    111 ActionState::ptr WorldCenterInBoxAction::performUndo(ActionState::ptr _state) {
    112   WorldCenterInBoxState *state = assert_cast<WorldCenterInBoxState*>(_state.get());
     111ActionState::ptr MoleculeCenterInBoxAction::performUndo(ActionState::ptr _state) {
     112  MoleculeCenterInBoxState *state = assert_cast<MoleculeCenterInBoxState*>(_state.get());
    113113
    114114  // restore domain
     
    121121  // place atoms on old positions
    122122  std::vector< boost::shared_ptr<Vector> >::const_iterator OldPositionsIter = state->OldPositions.begin();
    123   std::vector<molecule*> AllMolecules = World::getInstance().getAllMolecules();
    124   for (std::vector<molecule*>::iterator MolRunner = AllMolecules.begin();
    125       MolRunner != AllMolecules.end();
     123  std::vector<molecule*> SelectedMolecules = World::getInstance().getSelectedMolecules();
     124  for (std::vector<molecule*>::iterator MolRunner = SelectedMolecules.begin();
     125      MolRunner != SelectedMolecules.end();
    126126      ++MolRunner) {
    127127    for(molecule::iterator AtomRunner = (*MolRunner)->begin();
     
    140140}
    141141
    142 ActionState::ptr WorldCenterInBoxAction::performRedo(ActionState::ptr _state){
    143   WorldCenterInBoxState *state = assert_cast<WorldCenterInBoxState*>(_state.get());
     142ActionState::ptr MoleculeCenterInBoxAction::performRedo(ActionState::ptr _state){
     143  MoleculeCenterInBoxState *state = assert_cast<MoleculeCenterInBoxState*>(_state.get());
    144144
    145145  // set new domain
     
    147147
    148148  // center atoms
    149   std::vector<molecule *> AllMolecules = World::getInstance().getAllMolecules();
    150   for (std::vector<molecule*>::iterator MolRunner = AllMolecules.begin(); MolRunner != AllMolecules.end(); ++MolRunner) {
     149  std::vector<molecule *> SelectedMolecules = World::getInstance().getSelectedMolecules();
     150  for (std::vector<molecule*>::iterator MolRunner = SelectedMolecules.begin(); MolRunner != SelectedMolecules.end(); ++MolRunner) {
    151151    (*MolRunner)->CenterInBox();
    152152  }
     
    158158}
    159159
    160 bool WorldCenterInBoxAction::canUndo() {
     160bool MoleculeCenterInBoxAction::canUndo() {
    161161  return true;
    162162}
    163163
    164 bool WorldCenterInBoxAction::shouldUndo() {
     164bool MoleculeCenterInBoxAction::shouldUndo() {
    165165  return true;
    166166}
  • src/Actions/MoleculeAction/CenterInBoxAction.def

    r996ef1 r25d9d9  
    2828
    2929// some defines for all the names, you may use ACTION, STATE and PARAMS
    30 #define CATEGORY World
    31 #define MENUNAME "world"
     30#define CATEGORY Molecule
     31#define MENUNAME "molecule"
    3232#define MENUPOSITION 3
    3333#define ACTIONNAME CenterInBox
     
    3636
    3737// finally the information stored in the ActionTrait specialization
    38 #define DESCRIPTION "center all atoms in the domain"
     38#define DESCRIPTION "center each selected molecule in the domain"
    3939#define SHORTFORM "b"
  • tests/regression/Domain/BoundInBox/testsuite-domain-bound-in-box-allmolecules.at

    r996ef1 r25d9d9  
    1818### bound atoms in defined domain
    1919
    20 AT_SETUP([Domain - bounding in domain])
     20AT_SETUP([Domain - bounding in domain all molecules])
    2121AT_KEYWORDS([domain bound-in-box])
    2222
     
    2424AT_CHECK([/bin/cp -f ${abs_top_srcdir}/tests/regression/Domain/BoundInBox/pre/test.conf $file], 0)
    2525AT_CHECK([chmod u+w $file], 0)
    26 AT_CHECK([../../molecuilder -i $file --bound-in-box], 0, [stdout], [stderr])
     26AT_CHECK([../../molecuilder -i $file --select-all-molecules --bound-in-box], 0, [stdout], [stderr])
    2727AT_CHECK([diff $file ${abs_top_srcdir}/tests/regression/Domain/BoundInBox/post/test.conf], 0, [stdout], [stderr])
    2828
     
    3030
    3131
    32 AT_SETUP([Domain - bounding in domain with Undo])
     32AT_SETUP([Domain - bounding in domain all molecules with Undo])
    3333AT_KEYWORDS([domain bound-in-box undo])
    3434
     
    3636AT_CHECK([/bin/cp -f ${abs_top_srcdir}/tests/regression/Domain/BoundInBox/pre/test.conf $file], 0)
    3737AT_CHECK([chmod u+w $file], 0)
    38 AT_CHECK([../../molecuilder -i $file --bound-in-box --undo], 0, [stdout], [stderr])
     38AT_CHECK([../../molecuilder -i $file --select-all-molecules --bound-in-box --undo], 0, [stdout], [stderr])
    3939AT_CHECK([diff $file ${abs_top_srcdir}/tests/regression/Domain/BoundInBox/post/test-undo.conf], 0, [stdout], [stderr])
    4040
     
    4242
    4343
    44 AT_SETUP([Domain - bounding in domain with Redo])
     44AT_SETUP([Domain - bounding in domain all molecules with Redo])
    4545AT_KEYWORDS([domain bound-in-box redo])
    4646
     
    4848AT_CHECK([/bin/cp -f ${abs_top_srcdir}/tests/regression/Domain/BoundInBox/pre/test.conf $file], 0)
    4949AT_CHECK([chmod u+w $file], 0)
    50 AT_CHECK([../../molecuilder -i $file --bound-in-box --undo --redo], 0, [stdout], [stderr])
     50AT_CHECK([../../molecuilder -i $file --select-all-molecules --bound-in-box --undo --redo], 0, [stdout], [stderr])
    5151AT_CHECK([diff $file ${abs_top_srcdir}/tests/regression/Domain/BoundInBox/post/test.conf], 0, [stdout], [stderr])
    5252
  • tests/regression/Domain/CenterInBox/testsuite-domain-center-in-box-allmolecules.at

    r996ef1 r25d9d9  
    1818### center atoms in defined domain
    1919
    20 AT_SETUP([Domain - setting and centering in domain])
     20AT_SETUP([Domain - setting and centering in domain all molecules])
    2121AT_KEYWORDS([domain center-in-box])
    2222
     
    2424AT_CHECK([/bin/cp -f ${abs_top_srcdir}/tests/regression/Domain/CenterInBox/pre/test.conf $file], 0)
    2525AT_CHECK([chmod u+w $file], 0)
    26 AT_CHECK([../../molecuilder -i $file -b "15, 0, 15, 0, 0, 15"], 0, [stdout], [stderr])
     26AT_CHECK([../../molecuilder -i $file --select-all-molecules -b "15, 0, 15, 0, 0, 15"], 0, [stdout], [stderr])
    2727AT_CHECK([fgrep "Box domain is now" stdout], 0, [ignore], [ignore])
    2828AT_CHECK([diff $file ${abs_top_srcdir}/tests/regression/Domain/CenterInBox/post/test.conf], 0, [stdout], [stderr])
     
    3131
    3232
    33 AT_SETUP([Domain - setting and centering in domain with Undo])
     33AT_SETUP([Domain - setting and centering in domain all molecules with Undo])
    3434AT_KEYWORDS([domain center-in-box undo])
    3535
     
    3737AT_CHECK([/bin/cp -f ${abs_top_srcdir}/tests/regression/Domain/CenterInBox/pre/test.conf $file], 0)
    3838AT_CHECK([chmod u+w $file], 0)
    39 AT_CHECK([../../molecuilder -i $file -b "15, 0, 15, 0, 0, 15" --undo], 0, [stdout], [stderr])
     39AT_CHECK([../../molecuilder -i $file --select-all-molecules -b "15, 0, 15, 0, 0, 15" --undo], 0, [stdout], [stderr])
    4040AT_CHECK([fgrep "Box domain restored to" stdout], 0, [ignore], [ignore])
    4141AT_CHECK([diff $file ${abs_top_srcdir}/tests/regression/Domain/CenterInBox/post/test-undo.conf], 0, [stdout], [stderr])
     
    4444
    4545
    46 AT_SETUP([Domain - setting and centering in domain with Redo])
     46AT_SETUP([Domain - setting and centering in domain all molecules with Redo])
    4747AT_KEYWORDS([domain center-in-box redo])
    4848
     
    5050AT_CHECK([/bin/cp -f ${abs_top_srcdir}/tests/regression/Domain/CenterInBox/pre/test.conf $file], 0)
    5151AT_CHECK([chmod u+w $file], 0)
    52 AT_CHECK([../../molecuilder -i $file -b "15, 0, 15, 0, 0, 15" --undo --redo], 0, [stdout], [stderr])
     52AT_CHECK([../../molecuilder -i $file --select-all-molecules -b "15, 0, 15, 0, 0, 15" --undo --redo], 0, [stdout], [stderr])
    5353AT_CHECK([fgrep "Box domain is again" stdout], 0, [ignore], [ignore])
    5454AT_CHECK([diff $file ${abs_top_srcdir}/tests/regression/Domain/CenterInBox/post/test.conf], 0, [stdout], [stderr])
  • tests/regression/Domain/testsuite-domain.at

    r996ef1 r25d9d9  
    2222
    2323# bound atoms in defined domain
    24 m4_include([Domain/BoundInBox/testsuite-domain-bound-in-box.at])
     24m4_include([Domain/BoundInBox/testsuite-domain-bound-in-box-allmolecules.at])
     25m4_include([Domain/BoundInBox/testsuite-domain-bound-in-box-somemolecules.at])
    2526
    2627# center atoms in defined domain
    27 m4_include([Domain/CenterInBox/testsuite-domain-center-in-box.at])
     28m4_include([Domain/CenterInBox/testsuite-domain-center-in-box-allmolecules.at])
     29m4_include([Domain/CenterInBox/testsuite-domain-center-in-box-somemolecules.at])
    2830
    2931# center atoms with defined boundary
  • tests/regression/Makefile.am

    r996ef1 r25d9d9  
    6363        $(srcdir)/Domain/testsuite-domain.at \
    6464        $(srcdir)/Domain/AddEmptyBoundary/testsuite-domain-add-empty-boundary.at \
    65         $(srcdir)/Domain/BoundInBox/testsuite-domain-bound-in-box.at \
    66         $(srcdir)/Domain/CenterInBox/testsuite-domain-center-in-box.at \
     65        $(srcdir)/Domain/BoundInBox/testsuite-domain-bound-in-box-allmolecules.at \
     66        $(srcdir)/Domain/BoundInBox/testsuite-domain-bound-in-box-somemolecules.at \
     67        $(srcdir)/Domain/CenterInBox/testsuite-domain-center-in-box-allmolecules.at \
     68        $(srcdir)/Domain/CenterInBox/testsuite-domain-center-in-box-somemolecules.at \
    6769        $(srcdir)/Domain/CenterOnEdge/testsuite-domain-center-on-edge.at \
    6870        $(srcdir)/Domain/ChangeBox/testsuite-domain-change-box.at \
  • utils/Python/boxmaker.py.in

    r996ef1 r25d9d9  
    340340
    341341mol.CommandVerbose('0')
    342 mol.WorldCenterInBox('%f 0 0 %f 0 %f' % tuple(cell))
     342mol.SelectionAllMolecules()
     343mol.MoleculeCenterInBox('%f 0 0 %f 0 %f' % tuple(cell))
     344mol.SelectionNotAllMolecules()
    343345mol.WorldRepeatBox('%d %d %d' % tuple(nbox))
    344346mol.WorldOutputAs(opt.outfilename + '.data')
Note: See TracChangeset for help on using the changeset viewer.