Extending the dimensions of matrices related to equation of motion

Dear Jason,

I am getting this error after making the changes. Do you have any idea what should I refine?

Best Regards,
Nikos

Dear @Nikos.Mantadakis

My guess is that there is something ill-conditioned in the input-output matrix (Jacobian) that is used to couple ElastoDyn and HydroDyn. You can look at the Jacobian directly by recompiling OpenFAST with compiler directive OUTPUT_JACOBIAN defined and then rerunning the simulation. I suggest starting there to debug.

Best regards,

Dear Jason,

Thank you very much for your support! I will start from there.

Best Regards,
Nikos

Dear Jason,

After several changes that I have made in the code since our last conversation, I retried to run the simulation and now seems that there are some problems regarding the aero files. However, I have never dealt with them at all, so I believe that these problems are due to some initial conditions that I gave by introducing an extra - flexible DOF for the platform. Can you please give me some hinges in which ways can I surmound the problems, because I am totally unfamiliar to the aero-part? For your convenience, I am attaching you the relative screenshot.

Thank you once again in advance!

Best Regards,
Nikos

Dear @Nikos.Mantadakis,

It looks like your model has gone unstable, resulting in large deflection (hence the “small angle assumption violation” warnings and very large position in the “FF wind array exhausted” error causing the simulation to abort.

Best regards,

Dear Jason,

Hope you are doing well!

Another problem came up with my code extension. This time, the following message pops up:
“forrt1: error(72): floating overflow”
For your conveniece, I am also attaching the relevant screenshot

Do you have any idea where the problem derives from?

Thank you very much in advance.

Best Regards,
Nikos

Dear @Nikos.Mantadakis.

A “floating overflow” error would occur when the value being assigned to a float variable is larger than the maximum possible value for that variable. Likely the problem is related to something you changed in the source code.

Best regards,

Dear Jason,

Following a previous conversation that we had, back then I have found several other errors in my code, so there was no need to deal with compiler directive OUTPUT_JACOBIAN. As for now, that kind of message started again popping up. My major problem is that once I put the new flag that I created (concerning the relative motion between the WEC and the turbine’s platform), the index of the U matrix where the problem derives from, changes depending on the DOFs activated. For example, having all the turbine’s DOFs off and only the (new) relative motion DOF switched on, the problem is in U(1,1), while by extra switching on the DOF of the platform’s heave, the problem moves to U(4,4,) instead of U(2,2,) which would be the rational one.

Can you please give me some help? When you talk about compiler directive OUTPUT_JACOBIAN, what does this mean? I can not find it…

Looking forward for you reply.

Best,
Nikos

Dear @Nikos.Mantadakis,

I’m not sure what is wrong with your updated source code, but to output the Jacobian through the compiler directive OUTPUT_JACOBIAN, you should go into the Configuration Properties of your FASTlib in Visual Studio, find the line called “Preprocessor Definitions” in Configuration Properties/Fortran/Preprocessor and add:

;OUTPUT_JACOBIAN

at the end of the line. Then recompile OpenFAST, rerun the simulation, and the Jocobian should be written to a file.

Best regards,

Dear Jason,

Thank you for your help! I will start working on the direction you proposed me and if I have more problems, I will let you know!

Best Regards,
Nikos Mantadakis

Dear Jason,

One more minor question I forgot: Is there something similar for printing somewhere the Augmented Matrix of the total structure?

Thank you once again in advance!

Best,
Nikos

Dear @Nikos.Mantadakis,

I’m not sure I understand everything you’ve changed in the source code to know if an augmented mass matrix for the total structure even exists? Have you changed ElastoDyn, SubDyn, and HydroDyn?

Best regards,

Dear Jason,

I have changed HydroDyn and ElastoDyn, not SubDyn. Should I also deal with the latter?

As for the Augmented Matrix, as I can see it is created inside ElastoDyn, so I made some changes also in this part of the code.

Best Regards,
Nikos

Dear @Nikos.Mantadakis,

I’m not saying that you should change SubDyn; I was just trying to understand more of what you changed.

I’m not aware of any built-in capability within ElastoDyn to output the augmented matrix, but you should be able to add PRINT statements within ElastoDyn to do that yourself.

Best regards,