Matlab: transfer function determination

In summary, the conversation discusses using MATLAB to determine the transfer function of a 2 dof vibration system with the given differential equation. The laplace transformation is used to obtain the equation and the participant suggests rearranging it to get f/x = tf for easier analysis. They also mention using MATLAB tools such as tf, bode, and ltview. The possibility of using dsolve for a symbolic solution is mentioned, but deemed unnecessary. The challenge of dealing with multiple dofs in the system is also brought up.
  • #1
serbring
269
2
I have a 2 dof vibration system, I have determined the differential equation of the model, can I determine the trasfer function readily with matlab, without using manual algebra operation?
In other word, I have that differential equation system:

[m]x''+[c]x'+[k]x=[f]

where:
[m] mass matrix
[c] damping matrix
[k] stiffness matrix
[f] external forces matrix

through laplace transformation I obtain:

s^[m]x(s)+s[c]x(x)+[k]x(s)=[f]

where s is the laplace variable, how can I find [f]/[x]?
I'm searching a way for estimating readily the transfer function of mechanical system, it is a loss of time to perform the calculation every time
 
Physics news on Phys.org
  • #2
may anyone help me?
 
  • #3
You've pretty much got the TF. Rearrange the laplace you've done above so you get f/x = tf (factorise the left side wrt to X). From there, you can use MATLAB to analyse the TF.
MATLAB tools(look in help): tf, bode, ltview.
The time required to manually calculate the TF is trivial for systems like this. You can use dsolve to get a symbolic solution to the ODE but it's not really necessary
 
  • #4
ddarvil said:
You've pretty much got the TF. Rearrange the laplace you've done above so you get f/x = tf (factorise the left side wrt to X). From there, you can use MATLAB to analyse the TF.
MATLAB tools(look in help): tf, bode, ltview.
The time required to manually calculate the TF is trivial for systems like this. You can use dsolve to get a symbolic solution to the ODE but it's not really necessary

I know the tf, bode function, but how can I use them when the system has more than one dofs?
 
  • #5


Yes, you can use Matlab to determine the transfer function of a 2 dof vibration system without having to manually perform algebraic operations. Matlab has built-in functions and tools that can help you solve differential equations and obtain the transfer function of a system.

To find the transfer function, you can use the "tf" function in Matlab. This function takes in the coefficients of the differential equation (mass, damping, and stiffness matrices) and returns the transfer function in the form of a rational function.

For example, if your differential equation is:

[m]x''+[c]x'+[k]x=[f]

You can use the following code in Matlab to find the transfer function:

num = [f]; % coefficients of the numerator
den = [m c k]; % coefficients of the denominator
sys = tf(num, den); % returns the transfer function in the form of a rational function
disp(sys); % displays the transfer function

This way, you can obtain the transfer function without having to manually perform the calculations every time. You can also use other functions in Matlab such as "ss2tf" or "tfdata" to obtain the transfer function from a state-space representation of the system.

In summary, Matlab provides efficient tools and functions for solving differential equations and obtaining the transfer function of a system. This can save you time and effort in manually performing algebraic operations.
 

1. What is a transfer function in Matlab?

A transfer function in Matlab is a mathematical representation of a system's input-output relationship. It describes how the input signal is transformed into the output signal through a series of mathematical operations.

2. How do I determine the transfer function of a system in Matlab?

To determine the transfer function of a system in Matlab, you can use the "tf" function. This function takes the numerator and denominator coefficients of the transfer function as input and outputs the transfer function in symbolic form.

3. Can I use data to determine the transfer function in Matlab?

Yes, you can use data to determine the transfer function in Matlab. The "tfest" function allows you to estimate the transfer function of a system using input-output data. This function uses a least-squares approach to fit a transfer function to the data.

4. How accurate are transfer function determinations in Matlab?

The accuracy of transfer function determinations in Matlab depends on the quality of the input-output data and the complexity of the system. In general, the more data points and the simpler the system, the more accurate the determination will be.

5. Are there any other methods for determining transfer functions in Matlab?

Yes, there are other methods for determining transfer functions in Matlab, such as the frequency response method and the state-space method. These methods may be more suitable for certain types of systems or data, so it is important to understand the different options and choose the one that best fits your needs.

Similar threads

  • MATLAB, Maple, Mathematica, LaTeX
Replies
8
Views
2K
  • MATLAB, Maple, Mathematica, LaTeX
Replies
1
Views
121
  • MATLAB, Maple, Mathematica, LaTeX
Replies
5
Views
993
  • Engineering and Comp Sci Homework Help
Replies
1
Views
333
  • MATLAB, Maple, Mathematica, LaTeX
Replies
4
Views
2K
  • MATLAB, Maple, Mathematica, LaTeX
Replies
8
Views
1K
  • MATLAB, Maple, Mathematica, LaTeX
Replies
1
Views
2K
  • MATLAB, Maple, Mathematica, LaTeX
Replies
11
Views
3K
Replies
3
Views
1K
  • MATLAB, Maple, Mathematica, LaTeX
Replies
14
Views
2K
Back
Top