MCPcopy Create free account
hub / github.com/OpenSees/OpenSees / commitState

Method commitState

SRC/material/section/ASDCoupledHinge3D.cpp:1717–1780  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1715}
1716
1717int
1718ASDCoupledHinge3D::commitState(void)
1719{
1720 int err = 0;
1721
1722 err += axialMaterial->commitState();
1723 err += MyMaterial->commitState();
1724 err += MzMaterial->commitState();
1725 err += VyMaterial->commitState();
1726 err += VzMaterial->commitState();
1727 err += torsionMaterial->commitState();
1728
1729#ifdef _DBG_COUPLEDSEC3D
1730 opserr << "ASDCoupleHinge3D::commitState\n\t" << "N = " << axialMaterial->getStress() << endln;
1731#endif
1732 if (err == 0) {
1733 updateLaws();
1734
1735#ifdef _DBG_COUPLEDSEC3D
1736 opserr << "\nLaws updated after commit: " << endln;
1737 opserr << "My\n";
1738 MyMaterial->Print(opserr, 2);
1739 opserr << "Mz\n";
1740 MzMaterial->Print(opserr, 2);
1741 opserr << "Finished update " << endln;
1742#endif
1743
1744 //double My, Mz;
1745 //My = MyMaterial->getStress();
1746 //Mz = MzMaterial->getStress();
1747
1748 //MyMaterial->setTrialStrain(MyMaterial->getStrain());
1749 //MzMaterial->setTrialStrain(MzMaterial->getStrain());
1750
1751 //// compare My with MyMaterial->getStress();
1752 //double errY = abs(MyMaterial->getStress() - My);
1753 //double errZ = abs(MzMaterial->getStress() - Mz);
1754
1755 //errExplicit = std::max(errY, errZ) / MmaxAbs;
1756
1757 //// revert to last commit
1758 //err += MyMaterial->revertToLastCommit();
1759 //err += MzMaterial->revertToLastCommit();
1760#ifdef _DBG_COUPLEDSEC3D
1761 opserr << "\nReverted to Last commit\n";
1762 opserr << "My\n";
1763 MyMaterial->Print(opserr, 2);
1764 opserr << "Mz\n";
1765 MzMaterial->Print(opserr, 2);
1766#endif
1767 }
1768#ifdef _DBG_COUPLEDSEC3D
1769 opserr << "ASDCoupledHinge3D::commitState (updated laws)\n";
1770 opserr << "My tangent: " << m_num_tang(1);
1771 opserr << " Mz tangent: " << m_num_tang(2) << endln;
1772 opserr << "-- My law: " << endln;
1773 MyMaterial->Print(opserr, 3);
1774 opserr << "\n";

Callers

nothing calls this directly

Calls 2

getStressMethod · 0.45
PrintMethod · 0.45

Tested by

no test coverage detected