| 281 | 
  | 
    data_[SYSTEM_DIPOLE] = system_dipole; | 
| 282 | 
  | 
    statsMap_["SYSTEM_DIPOLE"] =  SYSTEM_DIPOLE; | 
| 283 | 
  | 
 | 
| 284 | 
+ | 
    StatsData system_quadrupole; | 
| 285 | 
+ | 
    system_quadrupole.units =  "C*m*m"; | 
| 286 | 
+ | 
    system_quadrupole.title =  "System Quadrupole"; | 
| 287 | 
+ | 
    system_quadrupole.dataType = "Mat3x3d"; | 
| 288 | 
+ | 
    system_quadrupole.accumulator = new MatrixAccumulator(); | 
| 289 | 
+ | 
    data_[SYSTEM_QUADRUPOLE] = system_quadrupole; | 
| 290 | 
+ | 
    statsMap_["SYSTEM_QUADRUPOLE"] =  SYSTEM_QUADRUPOLE; | 
| 291 | 
+ | 
 | 
| 292 | 
  | 
    StatsData tagged_pair_distance; | 
| 293 | 
  | 
    tagged_pair_distance.units =  "Ang"; | 
| 294 | 
  | 
    tagged_pair_distance.title =  "Tagged_Pair_Distance"; | 
| 384 | 
  | 
      statsMask_.set(SYSTEM_DIPOLE); | 
| 385 | 
  | 
    } | 
| 386 | 
  | 
 | 
| 387 | 
+ | 
    // Why do we have both of these? | 
| 388 | 
+ | 
    if (simParams->getAccumulateBoxQuadrupole()) { | 
| 389 | 
+ | 
      statsMask_.set(SYSTEM_QUADRUPOLE); | 
| 390 | 
+ | 
    } | 
| 391 | 
+ | 
    if (info_->getCalcBoxQuadrupole()){ | 
| 392 | 
+ | 
      statsMask_.set(SYSTEM_QUADRUPOLE); | 
| 393 | 
+ | 
    } | 
| 394 | 
+ | 
 | 
| 395 | 
  | 
    if (simParams->havePrintHeatFlux()) { | 
| 396 | 
  | 
      if (simParams->getPrintHeatFlux()){ | 
| 397 | 
  | 
        statsMask_.set(HEATFLUX); | 
| 484 | 
  | 
        case SYSTEM_DIPOLE: | 
| 485 | 
  | 
          dynamic_cast<VectorAccumulator *>(data_[i].accumulator)->add(thermo.getSystemDipole()); | 
| 486 | 
  | 
          break; | 
| 487 | 
+ | 
        case SYSTEM_QUADRUPOLE: | 
| 488 | 
+ | 
          dynamic_cast<MatrixAccumulator *>(data_[i].accumulator)->add(thermo.getSystemQuadrupole()); | 
| 489 | 
+ | 
          break; | 
| 490 | 
  | 
        case HEATFLUX: | 
| 491 | 
  | 
          dynamic_cast<VectorAccumulator *>(data_[i].accumulator)->add(thermo.getHeatFlux()); | 
| 492 | 
  | 
          break; |