# | Line 1 | Line 1 | |
---|---|---|
1 | < | /* Copyright (c) 2008 The University of Notre Dame. All Rights Reserved. |
1 | > | /* Copyright (c) 2008, 2009 The University of Notre Dame. All Rights Reserved. |
2 | * | |
3 | * The University of Notre Dame grants you ("Licensee") a | |
4 | * non-exclusive, royalty free, license to use, modify and | |
# | Line 44 | Line 44 | |
44 | * | |
45 | * Created by Charles F. Vardeman II on 11 Dec 2006. | |
46 | * @author Charles F. Vardeman II | |
47 | < | * @version $Id: ConvexHull.cpp,v 1.13 2008-11-14 15:44:34 chuckv Exp $ |
47 | > | * @version $Id: ConvexHull.cpp,v 1.14 2009-10-12 20:11:29 chuckv Exp $ |
48 | * | |
49 | */ | |
50 | ||
# | Line 297 | Line 297 | void ConvexHull::computeHull(std::vector<StuntDouble*> | |
297 | ||
298 | } | |
299 | ||
300 | – | std::cout << "Number of surface atoms is: " << Ns_ << std::endl; |
300 | ||
301 | ||
302 | ||
# | Line 503 | Line 502 | void ConvexHull::computeHull(std::vector<StuntDouble*> | |
502 | localVel.push_back(vel.y()); | |
503 | localVel.push_back(vel.z()); | |
504 | ||
505 | + | |
506 | RealType bdmass = bodydoubles[idx]->getMass(); | |
507 | localMass.push_back(bdmass); | |
508 | ||
509 | localPtsMap.push_back(idx); | |
510 | – | |
510 | ||
511 | } | |
512 | ||
513 | ||
515 | – | |
514 | localPtArraySize = int(localPts.size()/3.0); | |
517 | – | |
515 | ||
516 | MPI::COMM_WORLD.Allgather(&localPtArraySize,1,MPI::INT,&NstoProc_[0],1,MPI::INT); | |
517 | ||
# | Line 532 | Line 529 | void ConvexHull::computeHull(std::vector<StuntDouble*> | |
529 | std::vector<double> globalVel(nglobalPts); | |
530 | std::vector<double> globalMass(Nsglobal_); | |
531 | ||
532 | + | |
533 | + | |
534 | isSurfaceID.resize(nglobalPts); | |
535 | ||
536 | ||
# | Line 551 | Line 550 | void ConvexHull::computeHull(std::vector<StuntDouble*> | |
550 | int noffset = vecdispls_[myrank_]; | |
551 | /* gather the potential hull */ | |
552 | ||
553 | < | MPI::COMM_WORLD.Allgatherv(&localPts[0],localPtArraySize,MPI::DOUBLE,&globalPts[0],&vecNstoProc_[0],&vecdispls_[0],MPI::DOUBLE); |
554 | < | MPI::COMM_WORLD.Allgatherv(&localVel[0],localPtArraySize,MPI::DOUBLE,&globalVel[0],&vecNstoProc_[0],&vecdispls_[0],MPI::DOUBLE); |
553 | > | MPI::COMM_WORLD.Allgatherv(&localPts[0],localPtArraySize*3,MPI::DOUBLE,&globalPts[0],&vecNstoProc_[0],&vecdispls_[0],MPI::DOUBLE); |
554 | > | MPI::COMM_WORLD.Allgatherv(&localVel[0],localPtArraySize*3,MPI::DOUBLE,&globalVel[0],&vecNstoProc_[0],&vecdispls_[0],MPI::DOUBLE); |
555 | MPI::COMM_WORLD.Allgatherv(&localMass[0],localPtArraySize,MPI::DOUBLE,&globalMass[0],&NstoProc_[0],&displs_[0],MPI::DOUBLE); | |
556 | + | |
557 | /* | |
558 | + | int tmpidx = 0; |
559 | + | |
560 | if (myrank_ == 0){ | |
561 | < | for (i = 0; i < globalPts.size(); i++){ |
562 | < | std::cout << globalPts[i] << std::endl; |
561 | > | for (i = 0; i < nglobalPts-3; i++){ |
562 | > | std::cout << "Au " << globalPts[tmpidx] << " " << globalPts[tmpidx+1] << " " << globalPts[tmpidx +2] << std::endl; |
563 | > | tmpidx = tmpidx + 3; |
564 | } | |
565 | } | |
566 | */ | |
567 | + | |
568 | // Free previous hull | |
569 | qh_freeqhull(!qh_ALL); | |
570 | qh_memfreeshort(&curlong, &totlong); | |
# | Line 568 | Line 572 | void ConvexHull::computeHull(std::vector<StuntDouble*> | |
572 | std::cerr << "qhull internal warning (main): did not free %d bytes of long memory (%d pieces) " | |
573 | << totlong << curlong << std::endl; | |
574 | ||
575 | < | if (qh_new_qhull(dim_, nglobalPts, &globalPts[0], ismalloc, |
575 | > | if (qh_new_qhull(dim_, Nsglobal_, &globalPts[0], ismalloc, |
576 | const_cast<char *>(options_.c_str()), NULL, stderr)){ | |
577 | ||
578 | sprintf(painCave.errMsg, "ConvexHull: Qhull failed to compute global convex hull"); | |
# | Line 671 | Line 675 | void ConvexHull::computeHull(std::vector<StuntDouble*> | |
675 | ||
676 | } //FORALLfacets | |
677 | ||
678 | < | /* |
678 | > | /* |
679 | std::cout << surfaceSDs_.size() << std::endl; | |
680 | for (SD = surfaceSDs_.begin(); SD != surfaceSDs_.end(); ++SD){ | |
681 | Vector3d thisatom = (*SD)->getPos(); |
– | Removed lines |
+ | Added lines |
< | Changed lines |
> | Changed lines |