Changeset a98603 for src/boundary.hpp


Ignore:
Timestamp:
Feb 9, 2009, 2:18:13 PM (16 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:
5bc4d0
Parents:
674220 (diff), cc2ee5 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge ../espack3

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/boundary.hpp

    • Property mode changed from 100644 to 100755
    r674220 ra98603  
    3636    BoundaryPointSet(atom *Walker);
    3737    ~BoundaryPointSet();
    38    
     38
    3939    void AddLine(class BoundaryLineSet *line);
    40    
     40
    4141    LineMap lines;
    4242    int LinesCount;
     
    6464    BoundaryTriangleSet(class BoundaryLineSet *line[3], int number);
    6565    ~BoundaryTriangleSet();
    66    
     66
    6767    void GetNormalVector(Vector &NormalVector);
    68    
     68
    6969    class BoundaryPointSet *endpoints[3];
    7070    class BoundaryLineSet *lines[3];
     71    Vector NormalVector;
    7172    int Nr;
    7273};
     
    7475class Tesselation {
    7576  public:
    76    
     77
    7778    Tesselation();
    7879    ~Tesselation();
    79    
     80
    8081    void TesselateOnBoundary(ofstream *out, config *configuration, molecule *mol);
    8182    void GuessStartingTriangle(ofstream *out);
    8283    void AddPoint(atom * Walker);
    83    
     84    void AddTrianglePoint(atom* Candidate, int n);
     85    void AddTriangleLine(class BoundaryPointSet *a, class BoundaryPointSet *b, int n);
     86    void AddTriangleToLines();
     87    void Find_starting_triangle(molecule* mol, const double RADIUS);
     88    bool Find_next_suitable_triangle(ofstream *out, ofstream *tecplot, molecule* mol, BoundaryLineSet &Line, BoundaryTriangleSet &T, const double& RADIUS, int N, const char *filename);
     89    bool CheckPresenceOfTriangle(ofstream *out, atom *a, atom *b, atom *c);
     90    void Find_next_suitable_point_via_Angle_of_Sphere(atom* a, atom* b, atom* c, atom* Candidate, atom* Parent, int RecursionLevel, Vector *Chord, Vector *direction1, Vector *OldNormal, Vector ReferencePoint, atom*& Opt_Candidate, double *Storage, const double RADIUS, molecule* mol);
     91
    8492    PointMap PointsOnBoundary;
    8593    LineMap LinesOnBoundary;
    8694    TriangleMap TrianglesOnBoundary;
     95    class BoundaryPointSet *TPS[3]; //this is a Storage for pointers to triangle points, this and BPS[2] needed due to AddLine restrictions
    8796    class BoundaryPointSet *BPS[2];
    8897    class BoundaryLineSet *BLS[3];
     
    91100    int LinesOnBoundaryCount;
    92101    int TrianglesOnBoundaryCount;
     102    int TriangleFilesWritten;
    93103};
    94104
     
    102112double * GetDiametersOfCluster(ofstream *out, Boundaries *BoundaryPtr, molecule *mol, bool IsAngstroem);
    103113void PrepareClustersinWater(ofstream *out, config *configuration, molecule *mol, double ClusterVolume, double celldensity);
     114void Find_non_convex_border(ofstream *out, ofstream *tecplot, molecule* mol, const char *tempbasename, const double RADIUS);
     115void Find_next_suitable_point(atom a, atom b, atom Candidate, int n, Vector *d1, Vector *d2, atom*& Opt_Candidate, double *Storage, const double RADIUS, molecule *mol, bool problem);
    104116
    105117
Note: See TracChangeset for help on using the changeset viewer.