617 DEBUGCOUTFNAME(
"ReadAerodynamicModal(" << uLabel <<
")" << std::endl);
646 unsigned int AeroN = HP.
GetInt();
648 unsigned int NModes = pModalJoint->
uGetNModes();
657 unsigned int GustN = 0;
666 std::ifstream fdat(sFileData);
667 DEBUGCOUT(
"Reading Aerodynamic State Space Matrices from file '"
668 << sFileData <<
'\'' << std::endl);
670 int save_errno = errno;
671 silent_cerr(std::endl <<
"Unable to open file \"" << sFileData <<
"\" "
672 "(" << save_errno <<
": " << strerror(save_errno) <<
")" << std::endl);
694 while (!fdat.eof()) {
695 fdat.getline(str,
sizeof(str));
698 if (!strncmp(
"*** MATRIX A", str,
STRLENOF(
"*** MATRIX A"))) {
699 for (
unsigned int iCnt = 1; iCnt <= AeroN; iCnt++) {
700 for (
unsigned int jCnt = 1; jCnt <= AeroN; jCnt++) {
707 }
else if (!strncmp(
"*** MATRIX B", str,
STRLENOF(
"*** MATRIX B"))) {
708 for (
unsigned int iCnt = 1; iCnt <= AeroN; iCnt++) {
709 for (
unsigned int jCnt = 1; jCnt <= NModes + GustN; jCnt++) {
716 }
else if (!strncmp(
"*** MATRIX C", str,
STRLENOF(
"*** MATRIX C"))) {
717 for (
unsigned int iCnt = 1; iCnt <= NModes; iCnt++) {
718 for (
unsigned int jCnt = 1; jCnt <= AeroN; jCnt++) {
725 }
else if (!strncmp(
"*** MATRIX D0", str,
STRLENOF(
"*** MATRIX D0"))) {
726 for (
unsigned int iCnt = 1; iCnt <= NModes; iCnt++) {
727 for (
unsigned int jCnt = 1; jCnt <= NModes + GustN; jCnt++) {
729 pD0Mat->
PutCoef(iCnt, jCnt, d);
734 }
else if (!strncmp(
"*** MATRIX D1", str,
STRLENOF(
"*** MATRIX D1"))) {
735 for (
unsigned int iCnt = 1; iCnt <= NModes; iCnt++) {
736 for (
unsigned int jCnt = 1; jCnt <= NModes + GustN; jCnt++) {
738 pD1Mat->
PutCoef(iCnt, jCnt, d);
743 }
else if (!strncmp(
"*** MATRIX D2", str,
STRLENOF(
"*** MATRIX D2"))) {
744 for (
unsigned int iCnt = 1; iCnt <= NModes; iCnt++) {
745 for (
unsigned int jCnt = 1; jCnt <= NModes + GustN; jCnt++) {
747 pD2Mat->
PutCoef(iCnt, jCnt, d);
760 Ra, pDO, Chord, NModes - rigidF,
761 AeroN, rigidF, GustN, Vff,
762 pAMat, pBMat, pCMat, pD0Mat, pD1Mat, pD2Mat, fOut));
766 silent_cerr(
"semicolon expected at line "
flag fReadOutput(MBDynParser &HP, const T &t) const
const ModalNode * pGetModalNode(void) const
Mat3x3 GetRotRel(const ReferenceFrame &rf)
#define MBDYN_EXCEPT_ARGS
#define DEBUGCOUTFNAME(fname)
virtual integer GetInt(integer iDefval=0)
Elem * ReadElem(MBDynParser &HP, Elem::Type type) const
integer uGetNModes(void) const
virtual const char * GetFileName(enum Delims Del=DEFAULTDELIM)
const ReferenceFrame AbsRefFrame(0, Vec3(0., 0., 0), Mat3x3(1., 0., 0., 0., 1., 0., 0., 0., 1.), Vec3(0., 0., 0), Vec3(0., 0., 0), EULER_123)
virtual void PutCoef(integer iRow, integer iCol, const doublereal &dCoef)
virtual bool IsKeyWord(const char *sKeyWord)
#define SAFENEWWITHCONSTRUCTOR(pnt, item, constructor)
void PutCoef(integer ix, integer iy, const doublereal &val)
virtual HighParser::ErrOut GetLineData(void) const
virtual doublereal GetReal(const doublereal &dDefval=0.0)