TEST_EQUAL(peak.getAtom(), &atom) RESULT CHECK(Peak1D::Peak1D(const Peak1D& peak)) Peak1D peak2(peak); TEST_REAL_EQUAL(peak2.getPosition(), 111.1) TEST_REAL_EQUAL(peak2.getWidth(), 222.2) TEST_REAL_EQUAL(peak2.getIntensity(), 333.3) TEST_EQUAL(peak2.getAtom(), &atom) RESULT CHECK(Peak1D::void operator = (const Peak1D& peak)) Peak1D peak2 = peak; TEST_REAL_EQUAL(peak2.getPosition(), 111.1) TEST_REAL_EQUAL(peak2.getWidth(), 222.2) TEST_REAL_EQUAL(peak2.getIntensity(), 333.3) TEST_EQUAL(peak2.getAtom(), &atom) RESULT CHECK(Peak1D::bool operator == (const Peak1D& peak) const ) Peak1D peak2 = peak; Peak1D peak3 = peak; TEST_EQUAL(peak2 == peak, true) TEST_EQUAL(peak2 == peak3, true) peak3.setWidth(0.0); TEST_EQUAL(peak2 == peak, true) TEST_EQUAL(peak2 == peak3, false) peak3.setWidth(peak2.getWidth()); TEST_EQUAL(peak2 == peak3, true) peak3.setIntensity(0.0); TEST_EQUAL(peak2 == peak3, false)
START_SECTION((PositionType const& getPosition() const)) TEST_REAL_SIMILAR(Peak1D().getPosition()[0], 0.0) END_SECTION START_SECTION((CoordinateType getMZ() const)) TEST_REAL_SIMILAR(Peak1D().getMZ(), 0.0) END_SECTION START_SECTION((CoordinateType getPos() const)) TEST_REAL_SIMILAR(Peak1D().getPos(), 0.0) END_SECTION START_SECTION((void setIntensity(IntensityType intensity))) Peak1D p; p.setIntensity(17.8f); TEST_REAL_SIMILAR(p.getIntensity(), 17.8) END_SECTION START_SECTION((void setPosition(PositionType const &position))) Peak1D::PositionType pos; pos[0] = 1.0; Peak1D p; p.setPosition(pos); TEST_REAL_SIMILAR(p.getPosition()[0], 1.0) END_SECTION START_SECTION((PositionType& getPosition())) Peak1D::PositionType pos; pos[0] = 1.0; Peak1D p; p.getPosition() = pos;
bool ShiftModel1D::finish() { if (!isValid()) { return false; } if (!system_) { Log.info() << "No valid system found!" << std::endl; return false; } // compute the shift model if necessary if (compute_shifts_) { BALL::ShiftModel sm(parameters_.getFilename()); system_->apply(sm); } String element = ""; // Peter Bayer proposed as peak width // for H 15Hz // for N 10hz // for C 5Hz // peakwidth is meassured in ppm, since // experiments were done in Hz, we convert the values // according to the formular // // offset [Hz] = offset[ppm] * basic frequency // // for our prediction we assume a basic frequency of 700 MHz float peakwidth = 0.0; switch(type_) { case H: case H_ON_BACKBONE: element = "H"; //peakwidth = 0.02142; // Peter Bayers estimation peakwidth = 0.0032; // this is the former BALL estimation break; case N: case N_BACKBONE: element = "N"; peakwidth = 0.01428; break; case C: case C_BACKBONE: element = "C"; peakwidth = 0.00714; break; } int counter = 0; if (element == "" ) return true; for (BALL::ResidueIterator r_it = system_->beginResidue(); +r_it; ++r_it) { Atom* atom = NULL; for (BALL::AtomIterator at_it = r_it->beginAtom(); +at_it; ++at_it) { if (hasType_(&(*at_it), type_)) { counter++; atom = &(*at_it); // we have, get the shift float shift = atom->getProperty(BALL::ShiftModule::PROPERTY__SHIFT).getFloat(); Peak1D peak; float pos = shift; peak.setPosition(pos); peak.setWidth(peakwidth); peak.setIntensity(peak.getIntensity()+1); //setAtom(); peaks_.push_back(peak); } } } std::cout << "Number of considered atoms: "<< counter << std::endl; return true; }