void TrPlaneStrRot3d :: printOutputAt(FILE *file, TimeStep *tStep) // Performs end-of-step operations. { FloatArray v; fprintf( file, "element %d (%8d) :\n", this->giveLabel(), this->giveNumber() ); for ( int i = 0; i < numberOfIntegrationRules; i++ ) { for ( int j = 0; j < integrationRulesArray [ i ]->giveNumberOfIntegrationPoints(); j++ ) { GaussPoint *gp = integrationRulesArray [ i ]->getIntegrationPoint(j); // gp -> printOutputAt(file,stepN) ; fprintf( file, " GP %2d.%-2d :", i + 1, gp->giveNumber() ); this->giveIPValue(v, gp, IST_ShellStrainCurvatureTensor, tStep); fprintf(file, " strains "); fprintf( file, " % .4e % .4e % .4e % .4e % .4e % .4e % .4e % .4e % .4e % .4e % .4e % .4e ", v.at(1), v.at(2), v.at(3), 2. * v.at(4), 2. * v.at(5), 2. * v.at(6), v.at(7), v.at(8), v.at(9), 2. * v.at(10), 2. * v.at(11), 2. * v.at(12) ); this->giveIPValue(v, gp, IST_ShellForceMomentumTensor, tStep); fprintf(file, "\n stresses"); fprintf( file, " % .4e % .4e % .4e % .4e % .4e % .4e % .4e % .4e % .4e % .4e % .4e % .4e ", v.at(1), v.at(2), v.at(3), v.at(4), v.at(5), v.at(6), v.at(7), v.at(8), v.at(9), v.at(10), v.at(11), v.at(12) ); fprintf(file, "\n"); } } }
void RerShell :: printOutputAt(FILE *file, TimeStep *stepN) // Performs end-of-step operations. { GaussPoint *gp; FloatMatrix globTensorMembrane, globTensorPlate; fprintf(file, "element %d :\n", number); for ( int i = 1; i <= integrationRulesArray [ 0 ]->giveNumberOfIntegrationPoints(); i++ ) { gp = integrationRulesArray [ 0 ]->getIntegrationPoint(i - 1); if ( !domain->giveEngngModel()->isIncremental() ) { // delete this -> ComputeStrainVector(gp,stepN) ; // delete this -> ComputeStressVector(gp,stepN) ; } //gp -> printOutputAt(file,stepN) ; fprintf( file, " GP %d :", gp->giveNumber() ); this->giveCharacteristicTensor(globTensorMembrane, GlobalStrainTensor, gp, stepN); this->giveCharacteristicTensor(globTensorPlate, GlobalCurvatureTensor, gp, stepN); fprintf(file, " strains "); fprintf( file, " % .4e % .4e % .4e % .4e % .4e % .4e % .4e % .4e % .4e % .4e % .4e % .4e ", globTensorMembrane.at(1, 1), globTensorMembrane.at(2, 2), globTensorMembrane.at(3, 3), 2. * globTensorMembrane.at(2, 3), 2. * globTensorMembrane.at(3, 1), 2. * globTensorMembrane.at(1, 2), globTensorPlate.at(1, 1), globTensorPlate.at(2, 2), globTensorPlate.at(3, 3), 2. * globTensorPlate.at(2, 3), 2. * globTensorPlate.at(1, 3), 2. * globTensorPlate.at(1, 2) ); this->giveCharacteristicTensor(globTensorMembrane, GlobalForceTensor, gp, stepN); this->giveCharacteristicTensor(globTensorPlate, GlobalMomentumTensor, gp, stepN); fprintf(file, "\n stresses"); fprintf( file, " % .4e % .4e % .4e % .4e % .4e % .4e % .4e % .4e % .4e % .4e % .4e % .4e ", globTensorMembrane.at(1, 1), globTensorMembrane.at(2, 2), globTensorMembrane.at(3, 3), globTensorMembrane.at(2, 3), globTensorMembrane.at(3, 1), globTensorMembrane.at(1, 2), globTensorPlate.at(1, 1), globTensorPlate.at(2, 2), globTensorPlate.at(3, 3), globTensorPlate.at(2, 3), globTensorPlate.at(1, 3), globTensorPlate.at(1, 2) ); fprintf(file, "\n"); } }