Changeset b9c847


Ignore:
Timestamp:
Jul 2, 2010, 1:44:23 PM (14 years ago)
Author:
Frederik Heber <heber@…>
Branches:
Action_Thermostats, Add_AtomRandomPerturbation, Add_FitFragmentPartialChargesAction, Add_RotateAroundBondAction, Add_SelectAtomByNameAction, Added_ParseSaveFragmentResults, AddingActions_SaveParseParticleParameters, Adding_Graph_to_ChangeBondActions, Adding_MD_integration_tests, Adding_ParticleName_to_Atom, Adding_StructOpt_integration_tests, AtomFragments, Automaking_mpqc_open, AutomationFragmentation_failures, Candidate_v1.5.4, Candidate_v1.6.0, Candidate_v1.6.1, ChangeBugEmailaddress, ChangingTestPorts, ChemicalSpaceEvaluator, CombiningParticlePotentialParsing, Combining_Subpackages, Debian_Package_split, Debian_package_split_molecuildergui_only, Disabling_MemDebug, Docu_Python_wait, EmpiricalPotential_contain_HomologyGraph, EmpiricalPotential_contain_HomologyGraph_documentation, Enable_parallel_make_install, Enhance_userguide, Enhanced_StructuralOptimization, Enhanced_StructuralOptimization_continued, Example_ManyWaysToTranslateAtom, Exclude_Hydrogens_annealWithBondGraph, FitPartialCharges_GlobalError, Fix_BoundInBox_CenterInBox_MoleculeActions, Fix_ChargeSampling_PBC, Fix_ChronosMutex, Fix_FitPartialCharges, Fix_FitPotential_needs_atomicnumbers, Fix_ForceAnnealing, Fix_IndependentFragmentGrids, Fix_ParseParticles, Fix_ParseParticles_split_forward_backward_Actions, Fix_PopActions, Fix_QtFragmentList_sorted_selection, Fix_Restrictedkeyset_FragmentMolecule, Fix_StatusMsg, Fix_StepWorldTime_single_argument, Fix_Verbose_Codepatterns, Fix_fitting_potentials, Fixes, ForceAnnealing_goodresults, ForceAnnealing_oldresults, ForceAnnealing_tocheck, ForceAnnealing_with_BondGraph, ForceAnnealing_with_BondGraph_continued, ForceAnnealing_with_BondGraph_continued_betteresults, ForceAnnealing_with_BondGraph_contraction-expansion, FragmentAction_writes_AtomFragments, FragmentMolecule_checks_bonddegrees, GeometryObjects, Gui_Fixes, Gui_displays_atomic_force_velocity, ImplicitCharges, IndependentFragmentGrids, IndependentFragmentGrids_IndividualZeroInstances, IndependentFragmentGrids_IntegrationTest, IndependentFragmentGrids_Sole_NN_Calculation, JobMarket_RobustOnKillsSegFaults, JobMarket_StableWorkerPool, JobMarket_unresolvable_hostname_fix, MoreRobust_FragmentAutomation, ODR_violation_mpqc_open, PartialCharges_OrthogonalSummation, PdbParser_setsAtomName, PythonUI_with_named_parameters, QtGui_reactivate_TimeChanged_changes, Recreated_GuiChecks, Rewrite_FitPartialCharges, RotateToPrincipalAxisSystem_UndoRedo, SaturateAtoms_findBestMatching, SaturateAtoms_singleDegree, StoppableMakroAction, Subpackage_CodePatterns, Subpackage_JobMarket, Subpackage_LinearAlgebra, Subpackage_levmar, Subpackage_mpqc_open, Subpackage_vmg, Switchable_LogView, ThirdParty_MPQC_rebuilt_buildsystem, TrajectoryDependenant_MaxOrder, TremoloParser_IncreasedPrecision, TremoloParser_MultipleTimesteps, TremoloParser_setsAtomName, Ubuntu_1604_changes, stable
Children:
c27778
Parents:
4a611e
Message:

New SetOutputFormatsAction introduced.

Fixes:

new SetOutputFormatsAction:

  • new action SetOutputFormatsAction which instantiates various specializations of FormatParser in FormatParserStorage.
  • main(): mpqc, pcp and xyz and no more added by default to FormatParserStorage, this now has to be done by specifying them (e.g. on the command line as -o pcp mpqc xyz)
  • TESTFIXES: case 10,11,13,16,17,22 all failed due to the missing -o specification which has been added (this has been intended in this way from the very beginning of the ParseCommandLineOptions() refactoring)
  • action "convex-envelope" now more has ShortForm "-o" due to obvious reasons.
Files:
2 added
13 edited

Legend:

Unmodified
Added
Removed
  • src/Actions/Makefile.am

    r4a611e rb9c847  
    126126  WorldAction/ScaleBoxAction.cpp \
    127127  WorldAction/SetDefaultNameAction.cpp \
    128   WorldAction/SetGaussianBasisAction.cpp               
     128  WorldAction/SetGaussianBasisAction.cpp \               
     129  WorldAction/SetOutputFormatsAction.cpp
    129130WORLDACTIONHEADER = \
    130131  WorldAction/AddEmptyBoundaryAction.hpp \
     
    139140  WorldAction/ScaleBoxAction.hpp \
    140141  WorldAction/SetDefaultNameAction.hpp \
    141   WorldAction/SetGaussianBasisAction.hpp
     142  WorldAction/SetGaussianBasisAction.hpp \
     143  WorldAction/SetOutputFormatsAction.hpp               
    142144
  • src/Actions/MapOfActions.cpp

    r4a611e rb9c847  
    6565#include "Actions/WorldAction/SetDefaultNameAction.hpp"
    6666#include "Actions/WorldAction/SetGaussianBasisAction.hpp"
     67#include "Actions/WorldAction/SetOutputFormatsAction.hpp"
    6768#include "Actions/Values.hpp"
    6869
     
    128129  DescriptionMap["input"] = "specify input files";
    129130  DescriptionMap["linear-interpolate"] = "linear interpolation in discrete steps between start and end position of a molecule";
     131  DescriptionMap["molecular-volume"] = "calculate the volume of a given molecule";
    130132  DescriptionMap["nonconvex-envelope"] = "create the non-convex envelope for a molecule";
    131   DescriptionMap["molecular-volume"] = "calculate the volume of a given molecule";
    132   DescriptionMap["output"] = "specify output formats";
     133  DescriptionMap["output"] = "write output files";
     134  DescriptionMap["set-output"] = "specify output formats";
    133135  DescriptionMap["pair-correlation"] = "pair correlation analysis between two elements, element and point or element and surface";
    134136  DescriptionMap["parse-xyz"] = "parse xyz file into World";
     
    138140  DescriptionMap["repeat-box"] = "create periodic copies of the simulation box per axis";
    139141  DescriptionMap["rotate-to-pas"] = "calculate the principal axis system of the specified molecule and rotate specified axis to align with main axis";
    140   DescriptionMap["set-basis"] = "set the name of the gaussian basis set for MPQC";
    141142  DescriptionMap["save-adjacency"] = "name of the adjacency file to write to";
    142143  DescriptionMap["save-bonds"] = "name of the bonds file to write to";
     
    144145  DescriptionMap["SaveXyz"] = "save world as xyz file";
    145146  DescriptionMap["scale-box"] = "scale box and atomic positions inside";
     147  DescriptionMap["set-basis"] = "set the name of the gaussian basis set for MPQC";
     148  DescriptionMap["set-output"] = "specify output formats";
    146149  DescriptionMap["subgraph-dissect"] = "dissect the molecular system into molecules representing disconnected subgraphs";
    147150  DescriptionMap["suspend-in-water"] = "suspend the given molecule in water such that in the domain the mean density is as specified";
     
    187190  ShortFormMap["center-in-box"] = "b";
    188191  ShortFormMap["change-element"] = "E";
    189   ShortFormMap["convex-envelope"] = "o";
     192//  ShortFormMap["convex-envelope"] = "x";
    190193  ShortFormMap["default-molname"] = "X";
    191194  ShortFormMap["depth-first-search"] = "D";
     
    210213  ShortFormMap["scale-box"] = "s";
    211214  ShortFormMap["set-basis"] = "M";
     215  ShortFormMap["set-output"] = "o";
    212216  ShortFormMap["subgraph-dissect"] = "I";
    213217  ShortFormMap["suspend-in-water"] = "u";
     
    237241  TypeMap["molecular-volume"] = Molecule;
    238242  TypeMap["nonconvex-envelope"] = Molecule;
    239   TypeMap["output"] = ListOfString;
     243  TypeMap["output"] = None;
    240244  TypeMap["parse-xyz"] = String;
    241245  TypeMap["pair-correlation"] = String;
     
    250254  TypeMap["scale-box"] = Vector;
    251255  TypeMap["set-basis"] = String;
     256  TypeMap["set-output"] = ListOfString;
    252257  TypeMap["subgraph-dissect"] = None;
    253258  TypeMap["suspend-in-water"] = Double;
     
    348353  MenuContainsActionMap.insert( pair<std::string, std::string> ("world", "default-molname") );
    349354  MenuContainsActionMap.insert( pair<std::string, std::string> ("world", "set-basis") );
     355  MenuContainsActionMap.insert( pair<std::string, std::string> ("world", "set-output") );
    350356
    351357  // put actions into command line category
     
    385391  generic.insert("scale-box");
    386392  generic.insert("set-basis");
     393  generic.insert("set-output");
    387394        generic.insert("subgraph-dissect");
    388395  generic.insert("suspend-in-water");
     
    483490  new WorldSetDefaultNameAction();
    484491  new WorldSetGaussianBasisAction();
     492  new WorldSetOutputFormatsAction();
    485493}
    486494
  • src/Actions/WorldAction/CenterInBoxAction.cpp

    r4a611e rb9c847  
    3838
    3939  if(dialog->display()) {
     40    World::getInstance().setDomain(cell_size);
    4041    // center
    4142    vector<molecule *> AllMolecules = World::getInstance().getAllMolecules();
  • src/Actions/WorldAction/CenterOnEdgeAction.cpp

    r4a611e rb9c847  
    6565      cell_size[j] = (Max[i]-Min[i]);
    6666    }
     67    World::getInstance().setDomain(cell_size);
    6768    // translate all atoms, such that Min is aty (0,0,0)
    6869    for (vector<atom*>::iterator AtomRunner = AllAtoms.begin(); AtomRunner != AllAtoms.end(); ++AtomRunner)
  • src/Actions/WorldAction/ChangeBoxAction.cpp

    r4a611e rb9c847  
    3939  if(dialog->display()) {
    4040    DoLog(0) && (Log() << Verbose(0) << "Setting box domain to " << cell_size[0] << "," << cell_size[1] << "," << cell_size[2] << "," << cell_size[3] << "," << cell_size[4] << "," << cell_size[5] << "," << endl);
     41    World::getInstance().setDomain(cell_size);
    4142    delete dialog;
    4243    return Action::success;
  • src/Actions/WorldAction/RepeatBoxAction.cpp

    r4a611e rb9c847  
    7272    }
    7373
     74    World::getInstance().setDomain(cell_size);
    7475    molecule *newmol = NULL;
    7576    Vector ** vectors = NULL;
  • src/Actions/WorldAction/ScaleBoxAction.cpp

    r4a611e rb9c847  
    5555      cell_size[j]*=x[i];
    5656    }
     57    World::getInstance().setDomain(cell_size);
    5758
    5859    delete dialog;
  • src/UIElements/CommandLineUI/CommandLineDialog.cpp

    r4a611e rb9c847  
    158158bool CommandLineDialog::StringsCommandLineQuery::handle() {
    159159  if (CommandLineParser::getInstance().vm.count(getTitle())) {
    160     temp = CommandLineParser::getInstance().vm[getTitle()].as<string>();
    161     // dissect by ","
    162     string::iterator olditer = temp.begin();
    163     for(string::iterator iter = temp.begin(); iter != temp.end(); ++iter) {
    164       if (*iter == ' ') {
    165         tmp.push_back(string(iter, olditer));
    166         olditer = iter;
    167       }
    168     }
    169     if (olditer != temp.begin())  // insert last part also
    170       tmp.push_back(string(olditer, temp.end()));
     160    tmp = CommandLineParser::getInstance().vm[getTitle()].as< vector<string> >();
    171161    return true;
    172162  } else {
  • src/World.cpp

    r4a611e rb9c847  
    8080void World::setDomain(double * matrix)
    8181{
    82 
     82  OBSERVE;
     83  cell_size[0] = matrix[0];
     84  cell_size[1] = matrix[1];
     85  cell_size[2] = matrix[2];
     86  cell_size[3] = matrix[3];
     87  cell_size[4] = matrix[4];
     88  cell_size[5] = matrix[5];
    8389}
    8490
  • src/builder.cpp

    r4a611e rb9c847  
    121121  bool ArgumentsCopied = false;
    122122  std::string BondGraphFileName("\n");
    123   FormatParserStorage::getInstance().addMpqc();
    124   FormatParserStorage::getInstance().addPcp();
    125   FormatParserStorage::getInstance().addXyz();
    126123
    127124  // print version check whether arguments are present at all
  • tests/regression/testsuite-domain.at

    r4a611e rb9c847  
    33AT_SETUP([Domain - defining simulation domain])
    44AT_KEYWORDS([domain])
    5 AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -B 10 0 10 0 0 10], 0, [stdout], [stderr])
     5AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -o pcp -B 10 0 10 0 0 10], 0, [stdout], [stderr])
    66AT_CHECK([fgrep "BoxLength" test.conf], 0, [stdout], [stderr])
    77AT_CHECK([diff test.conf ${abs_top_srcdir}/${AUTOTEST_PATH}/Domain/1/post/test.conf], 0, [stdout], [stderr])
     
    4444AT_KEYWORDS([domain])
    4545AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Domain/6/pre/test.conf .], 0)
    46 AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -d 1 1 1], 0, [stdout], [stderr])
     46AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -o xyz -d 1 1 1], 0, [stdout], [stderr])
    4747AT_CHECK([file=test.conf.xyz;sort -n $file | grep -v "Created by" >$file-sorted], 0, [ignore], [ignore])
    4848AT_CHECK([file=test.conf.xyz;sort -n ${abs_top_srcdir}/${AUTOTEST_PATH}/Domain/6/post/$file  | grep -v "Created by" >$file-sorted2], 0, [ignore], [ignore])
    4949AT_CHECK([file=test.conf.xyz; diff $file-sorted $file-sorted2], 0, [ignore], [ignore])
    5050AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Domain/6/pre/test.conf test-x.conf], 0)
    51 AT_CHECK([../../molecuilder test-x.conf -e ${abs_top_srcdir}/src/ -d 2 1 1], 0, [stdout], [stderr])
     51AT_CHECK([../../molecuilder test-x.conf -e ${abs_top_srcdir}/src/ -o xyz -d 2 1 1], 0, [stdout], [stderr])
    5252AT_CHECK([file=test-x.conf.xyz;sort -n $file | grep -v "Created by" >$file-sorted], 0, [ignore], [ignore])
    5353AT_CHECK([file=test-x.conf.xyz;sort -n ${abs_top_srcdir}/${AUTOTEST_PATH}/Domain/6/post/$file  | grep -v "Created by" >$file-sorted2], 0, [ignore], [ignore])
    5454AT_CHECK([file=test-x.conf.xyz; diff $file-sorted $file-sorted2], 0, [ignore], [ignore])
    5555AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Domain/6/pre/test.conf test-y.conf], 0)
    56 AT_CHECK([../../molecuilder test-y.conf -e ${abs_top_srcdir}/src/ -d 1 2 1], 0, [stdout], [stderr])
     56AT_CHECK([../../molecuilder test-y.conf -e ${abs_top_srcdir}/src/ -o xyz -d 1 2 1], 0, [stdout], [stderr])
    5757AT_CHECK([file=test-y.conf.xyz;sort -n $file | grep -v "Created by" >$file-sorted], 0, [ignore], [ignore])
    5858AT_CHECK([file=test-y.conf.xyz;sort -n ${abs_top_srcdir}/${AUTOTEST_PATH}/Domain/6/post/$file  | grep -v "Created by" >$file-sorted2], 0, [ignore], [ignore])
    5959AT_CHECK([file=test-y.conf.xyz; diff $file-sorted $file-sorted2], 0, [ignore], [ignore])
    6060AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Domain/6/pre/test.conf test-z.conf], 0)
    61 AT_CHECK([../../molecuilder test-z.conf -e ${abs_top_srcdir}/src/ -d 1 1 2], 0, [stdout], [stderr])
     61AT_CHECK([../../molecuilder test-z.conf -e ${abs_top_srcdir}/src/ -o xyz -d 1 1 2], 0, [stdout], [stderr])
    6262AT_CHECK([file=test-z.conf.xyz;sort -n $file | grep -v "Created by" >$file-sorted], 0, [ignore], [ignore])
    6363AT_CHECK([file=test-z.conf.xyz;sort -n ${abs_top_srcdir}/${AUTOTEST_PATH}/Domain/6/post/$file  | grep -v "Created by" >$file-sorted2], 0, [ignore], [ignore])
  • tests/regression/testsuite-simple_configuration.at

    r4a611e rb9c847  
    1414AT_KEYWORDS([configuration])
    1515AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Simple_configuration/2/pre/test.xyz .], 0)
    16 AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -p test.xyz], 0, [ignore], [ignore])
     16AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -o mpqc pcp xyz -p test.xyz], 0, [ignore], [ignore])
    1717AT_CHECK([fgrep "Ion_Type1_1" test.conf], 0, [Ion_Type1_1       10.000000000    10.000000000    10.000000000    0 # molecule nr 0
    1818], [ignore])
     
    2525AT_SETUP([Simple configuration - adding atom])
    2626AT_KEYWORDS([configuration])
    27 AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -a 1 --position 10. 10. 10.], 0, [ignore], [ignore])
     27AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -o mpqc pcp xyz -a 1 --position 10. 10. 10.], 0, [ignore], [ignore])
    2828AT_CHECK([file=test.conf; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Simple_configuration/3/post/$file], 0, [ignore], [ignore])
    2929AT_CHECK([file=test.conf.in; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Simple_configuration/3/post/$file], 0, [ignore], [ignore])
     
    4343AT_KEYWORDS([configuration])
    4444AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Simple_configuration/5/pre/test.conf .], 0)
    45 AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -r 0], 0, [ignore], [ignore])
     45AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -o mpqc pcp xyz -r 0], 0, [ignore], [ignore])
    4646AT_CHECK([file=test.conf; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Simple_configuration/5/post/$file], 0, [ignore], [ignore])
    4747AT_CHECK([file=test.conf.in; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Simple_configuration/5/post/$file], 0, [ignore], [ignore])
     
    7575AT_KEYWORDS([configuration])
    7676AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Simple_configuration/8/pre/test.* .], 0)
    77 AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -R 7. --position 7.283585982 3.275186040 3.535886037], 0, [stdout], [stderr])
     77AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -o xyz -R 7. --position 7.283585982 3.275186040 3.535886037], 0, [stdout], [stderr])
    7878AT_CHECK([sort -n test.conf.xyz | grep -v "Created by" >test.conf.xyz-sorted], 0, [ignore], [ignore])
    7979AT_CHECK([sort -n ${abs_top_srcdir}/${AUTOTEST_PATH}/Simple_configuration/8/post/test.conf.xyz  | grep -v "Created by" >${abs_top_srcdir}/${AUTOTEST_PATH}/Simple_configuration/8/post/test.conf.xyz-sorted], 0, [ignore], [ignore])
  • tests/regression/testsuite-tesselation.at

    r4a611e rb9c847  
    1212AT_SETUP([Tesselation - Convex Envelope])
    1313AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Tesselation/2/pre/* .], 0)
    14 AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -o 0 --convex-file ConvexEnvelope --nonconvex-file NonConvexEnvelope], 0, [stdout], [stderr])
     14AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ --convex-envelope 0 --convex-file ConvexEnvelope --nonconvex-file NonConvexEnvelope], 0, [stdout], [stderr])
    1515AT_CHECK([file=ConvexEnvelope.dat; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Tesselation/2/post/$file], 0, [ignore], [ignore])
    1616#AT_CHECK([file=ConvexEnvelope.r3d; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Tesselation/2/post/$file], 0, [ignore], [ignore])
     
    3030#AT_SETUP([Tesselation - big convex Envelope])
    3131#AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Tesselation/4/pre/* .], 0)
    32 #AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -o ConvexEnvelope NonConvexEnvelope], 0, [stdout], [stderr])
     32#AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ --convex-envelope ConvexEnvelope NonConvexEnvelope], 0, [stdout], [stderr])
    3333#AT_CHECK([file=ConvexEnvelope.dat; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Tesselation/4/post/$file], 0, [ignore], [ignore])
    3434#AT_CHECK([file=ConvexEnvelope.r3d; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Tesselation/4/post/$file], 0, [ignore], [ignore])
Note: See TracChangeset for help on using the changeset viewer.