SteveDoyle2 / pyNastran

A Python-based interface tool for Nastran's file formats
Other
381 stars 147 forks source link

TF card support #319

Closed alby3z closed 8 years ago

alby3z commented 8 years ago

The "Dynamic Transfer Function" card is not supported in the bdf package. This is of utterly importance (for example) in the modeling of the control laws.

SteveDoyle2 commented 8 years ago

The TF card is supported in the master branch. It's not cross referenced at the moment.

I'm unsure on how it's really used (especially in regards to SPOINTs/EPOINTs), so if you can make an example that explains it (e.g. what cards interact with it) and how you want to use it, I can make it work properly.

alby3z commented 8 years ago

@SteveDoyle2

The TF card is normally used to model actuators and control system laws. An example is to measure (let's say) the roll rate of the aircraft and to model the aileron command that the stability augmentation system generates to counteract it. The TF in this case links the x-rotation of the GRID located at center of gravity of the aircraft and the rotation command of the aileron with respect to its hinge.

The need to define SPOINTs or EPOINTs depend upon the particular transfer function that needs to be modeled. There are also cases in which only GRIDs are referenced in the TF.

The TF defines a relation between N-inputs (Uin) with 1 dependent DOF (Ud):

(B0+B1 * s+B2 * s^2)Ud + \sum{i=1}^{N} (A0_i +A1_i * s + A2_i * s^2)_Uin = 0

Notice that Ud and Uin can be either GRIDs (in this case the component is also needed), SPOINTs or EPOINTs.

The TF defined above is translated into the NASTRAN TF card:

$2345678$2345678$2345678$2345678$2345678$2345678$2345678$2345678$2345678
TF           SID      GD      CD      B0      B1      B2
            G(1)    C(1)   A0(1)   A1(1)   A2(1)
            G(2)    C(2)   A0(2)   A1(2)   A2(2)
          G(...)  C(...) A0(...) A1(...) A2(...)
            G(n)    C(n)   A0(n)   A1(n)   A2(n)

Attached a working example of a BDF using TF card, with a little bit of modelling explanation.

Actuator_TF_Modeling.txt

SteveDoyle2 commented 8 years ago

I think it's right now in the trunk. The only change I made was to set a default value for the components (the default is 0).