void LoadPattern::applyLoad(double pseudoTime) { // first determine the load factor if (theSeries != 0 && isConstant != 0) { loadFactor = theSeries->getFactor(pseudoTime); loadFactor *= scaleFactor; } NodalLoad *nodLoad; NodalLoadIter &theNodalIter = this->getNodalLoads(); while ((nodLoad = theNodalIter()) != 0) nodLoad->applyLoad(loadFactor); ElementalLoad *eleLoad; ElementalLoadIter &theElementalIter = this->getElementalLoads(); while ((eleLoad = theElementalIter()) != 0) eleLoad->applyLoad(loadFactor); SP_Constraint *sp; SP_ConstraintIter &theIter = this->getSPs(); while ((sp = theIter()) != 0) sp->applyConstraint(loadFactor); }
void FireLoadPattern::applyLoad(double time) { // first determine the load factor if (theSeries1 != 0 && isConstant != 0) { loadFactors(0) = theSeries1->getFactor(time); loadFactors(1) = theSeries2->getFactor(time); loadFactors(2) = theSeries3->getFactor(time); loadFactors(3) = theSeries4->getFactor(time); loadFactors(4) = theSeries5->getFactor(time); loadFactors(5) = theSeries6->getFactor(time); loadFactors(6) = theSeries7->getFactor(time); loadFactors(7) = theSeries8->getFactor(time); loadFactors(8) = theSeries9->getFactor(time); } //this is a fire load pattern so we always need multiple timeseries ElementalLoad *eleLoad; ElementalLoadIter &theElementalIter = this->getElementalLoads(); while ((eleLoad = theElementalIter()) != 0) eleLoad->applyLoad(loadFactors); }