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

Method calculateAll

SRC/element/shell/ASDShellQ4.cpp:1870–2155  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1868}
1869
1870int ASDShellQ4::calculateAll(Matrix& LHS, Vector& RHS, int options)
1871{
1872 // Check options
1873 if (!m_transformation->isLinear()) {
1874 // corotational calculation of the tangent LHS requires the RHS!
1875 if (options & OPT_LHS)
1876 options |= OPT_RHS;
1877 }
1878
1879 // Zero output
1880 int result = 0;
1881 if(options & OPT_RHS)
1882 RHS.Zero();
1883 if(options & OPT_LHS)
1884 LHS.Zero();
1885
1886 // Global displacements
1887 auto& UG = ASDShellQ4Globals::instance().UG;
1888 m_transformation->computeGlobalDisplacements(UG);
1889
1890 // update transformation
1891 if(options & OPT_UPDATE)
1892 m_transformation->update(UG);
1893
1894 // Compute the reference coordinate system
1895 ASDShellQ4LocalCoordinateSystem reference_cs =
1896 m_transformation->createReferenceCoordinateSystem();
1897
1898 // Compute the local coordinate system.
1899 ASDShellQ4LocalCoordinateSystem local_cs =
1900 m_transformation->createLocalCoordinateSystem(UG);
1901
1902 // Prepare all the parameters needed for the MITC4
1903 // and AGQI formulations.
1904 // This is to be done here outside the Gauss Loop.
1905 auto& mitc = ASDShellQ4Globals::instance().mitc;
1906 auto& agq = ASDShellQ4Globals::instance().agq;
1907 mitc.compute(reference_cs);
1908 if(m_eas)
1909 agq.compute(reference_cs);
1910
1911 // Jacobian
1912 auto& jac = ASDShellQ4Globals::instance().jac;
1913
1914 // Some matrices/vectors
1915 auto& B = ASDShellQ4Globals::instance().B;
1916 auto& Bd = ASDShellQ4Globals::instance().Bd;
1917 auto& Bd0 = ASDShellQ4Globals::instance().Bd0;
1918 auto& BQ = ASDShellQ4Globals::instance().BQ;
1919 auto& BQ_mean = ASDShellQ4Globals::instance().BQ_mean;
1920 auto& BQTD = ASDShellQ4Globals::instance().BQTD;
1921 auto& DBQ = ASDShellQ4Globals::instance().DBQ;
1922 auto& B1 = ASDShellQ4Globals::instance().B1;
1923 auto& B1TD = ASDShellQ4Globals::instance().B1TD;
1924 auto& N = ASDShellQ4Globals::instance().N;
1925 auto& dN = ASDShellQ4Globals::instance().dN;
1926 auto& E = ASDShellQ4Globals::instance().E;
1927 auto& S = ASDShellQ4Globals::instance().S;

Callers

nothing calls this directly

Calls 15

shapeFunctionsFunction · 0.70
computeBdrillingFunction · 0.70
computeBMatrixFunction · 0.70
invertBBendingTermsFunction · 0.70
MatrixClass · 0.50
isLinearMethod · 0.45
ZeroMethod · 0.45
updateMethod · 0.45

Tested by

no test coverage detected