Question

How to find the 'troughs' using peak finder in Simulink Scope

I've been using the Peak Finder Measurements tool in the Simulink scope output to find the peak of the system responses. But if...

11 days ago | 0 answers | 0

Answered

How to check if two transfer functions are the same?

Based on comments from Paul above I offer these functions as a solution: function c = is_equal_tf(G1,G2) c = almost_zero_s...

How to check if two transfer functions are the same?

Based on comments from Paul above I offer these functions as a solution: function c = is_equal_tf(G1,G2) c = almost_zero_s...

18 days ago | 0

Question

Basic math operations on contents of a cell array

Is there any reason why basic math operations don't work with cell arrays? Seems to me it would extremely useful and efficient ...

20 days ago | 2 answers | 0

Question

Best way to resample the output of a Simulink simulation with variable time step into a signal with a fixed sample time

I have a simulation model that runs with a variable timestep: (I don't want to change this) For the purpose of system identi...

26 days ago | 1 answer | 0

Question

How to turn off text interpreter when plotting timeseries objects

I am plotting timeseries objects using plot. My variable names include underscores (e.g. 'ABC_DEF') and I do not want these int...

1 month ago | 2 answers | 0

Question

Evaluate function over a mesh grid (without for loops)

Is there a way to evaluate a function that takes an [x, y] vector as input over a grid of points? Here is the function I want t...

1 month ago | 2 answers | 0

Answered

Why do I get the warning "MATLAB:dispatcher:InexactCaseMatch Cannot find an exact (case-sensitive) match for 'startup'" on MATLAB startup?

For me the problem started after I added a path to a module that I am using for a course. The scripts in this module are launch...

Why do I get the warning "MATLAB:dispatcher:InexactCaseMatch Cannot find an exact (case-sensitive) match for 'startup'" on MATLAB startup?

For me the problem started after I added a path to a module that I am using for a course. The scripts in this module are launch...

2 months ago | 0

Answered

Why are symbolic expressions being rounded?

Mathworks technical support have diagnosed the problem. Don't know what caused it originally but the 'FloatingPointOutput' sett...

Why are symbolic expressions being rounded?

Mathworks technical support have diagnosed the problem. Don't know what caused it originally but the 'FloatingPointOutput' sett...

3 months ago | 0

| accepted

Question

Why are symbolic expressions being rounded?

I'm deriving some expressions symbolically and then substituting values and computing the results and I only recently noticed th...

3 months ago | 2 answers | 0

Answered

Trying to set parameter values in a Simulink model using a parameter structure

I gave up on trying to figure out the ParameterStructure method and ended up doing it this way which I assume is the standard wa...

Trying to set parameter values in a Simulink model using a parameter structure

I gave up on trying to figure out the ParameterStructure method and ended up doing it this way which I assume is the standard wa...

3 months ago | 0

Question

How to get subscripts in the legend of a Nichols plot?

How do I put subscripts in a Nichols plot legend? This works fine in a normal plot: figure plot([0 1],[3 4]); hold on plot([...

3 months ago | 1 answer | 0

Question

Trying to set parameter values in a Simulink model using a parameter structure

I'm following the docmentation here in an attempt to set up a Simulink model so I can apply a set of parameter values to it befo...

3 months ago | 1 answer | 0

Answered

I get Error: Invalid expression. Check for missing or extra characters. when commenting out lines in a multi-line statement

Here is one solution but it's hardly very convenient and contrary to commenting-out in other languages: y = ... 1 + ... ...%2...

I get Error: Invalid expression. Check for missing or extra characters. when commenting out lines in a multi-line statement

Here is one solution but it's hardly very convenient and contrary to commenting-out in other languages: y = ... 1 + ... ...%2...

3 months ago | 0

Question

I get Error: Invalid expression. Check for missing or extra characters. when commenting out lines in a multi-line statement

It seems you can't comment-out entire lines in MATLAB within a multi-line statement. Or am I doing it wrong. A few examples be...

3 months ago | 2 answers | 0

Answered

How to implement an RST controller in Simulink?

After some further diagnosis, I think I have solved the problem. The default setting of the Discrete-Time Integrator block is '...

How to implement an RST controller in Simulink?

After some further diagnosis, I think I have solved the problem. The default setting of the Discrete-Time Integrator block is '...

3 months ago | 0

Question

How to implement an RST controller in Simulink?

Every time I search for help on this I am taken to the following page: RST Controller But I don't have access to the Simscape ...

3 months ago | 1 answer | 0

Answered

How to simulate a discrete linear system model with a user-specified disturbance signal?

I found the answer in the documentation: opt = simOptions('AddNoise',true,'NoiseData',e); Turns out I was looking at the wrong...

How to simulate a discrete linear system model with a user-specified disturbance signal?

I found the answer in the documentation: opt = simOptions('AddNoise',true,'NoiseData',e); Turns out I was looking at the wrong...

3 months ago | 0

| accepted

Question

How to simulate a discrete linear system model with a user-specified disturbance signal?

I'm using idpoly and sim to simulate a discrete linear system so I can compare the output with my own (hand-coded) simulation. ...

3 months ago | 1 answer | 0

Answered

Raise a scalar to a descending series of powers in an array

Here is the correct answer I think. Element-wise operation: 0.8.^(3:-1:1)

Raise a scalar to a descending series of powers in an array

Here is the correct answer I think. Element-wise operation: 0.8.^(3:-1:1)

3 months ago | 0

| accepted

Answered

Raise a scalar to a descending series of powers in an array

I found this solution: power(0.8,3:-1:1) ans = 0.5120 0.6400 0.8000 But still surprised if it can't be done ...

Raise a scalar to a descending series of powers in an array

I found this solution: power(0.8,3:-1:1) ans = 0.5120 0.6400 0.8000 But still surprised if it can't be done ...

3 months ago | 0

Question

Raise a scalar to a descending series of powers in an array

I'm trying to compute a series of powers of a scalar. This seems to work but the result is not what I expected: 0.8^1:3 ans...

3 months ago | 3 answers | 0

Answered

How to check if two transfer functions are the same?

There is an answer on Stackoverflow: However, it does not work directly in my case: isequal(tf(C1), Gc1) ans = logical...

How to check if two transfer functions are the same?

There is an answer on Stackoverflow: However, it does not work directly in my case: isequal(tf(C1), Gc1) ans = logical...

3 months ago | 0

Question

How to check if two transfer functions are the same?

I want to verify that two transfer functions are equal. For example: Kc = 0.4262; Ti=1.35; C1 = pidstd(Kc,Ti); tf(C1) s = t...

3 months ago | 3 answers | 0

Question

Solve equation that has a complex subexpression

I want to solve the following equation for omega: where So I tried this: syms s omega G(s) G(s) = 10/(s*(1+s)*(1+0.2*s))...

4 months ago | 1 answer | 0

Question

How to assign values to an array with broadcasting

Is there any way to do broadcasting while assigning values to an array? I know how to broadcast a computation: G = zeros(3) G...

4 months ago | 1 answer | 0

Answered

Undefined function 'workspacefunc' — How to change search path back after accidentally changing it

In the end I simply force-quitted MATLAB and restarted it and it works as normal again. (Remember to save your work first).

Undefined function 'workspacefunc' — How to change search path back after accidentally changing it

In the end I simply force-quitted MATLAB and restarted it and it works as normal again. (Remember to save your work first).

4 months ago | 0

| accepted

Question

Undefined function 'workspacefunc' — How to change search path back after accidentally changing it

I couldn't remember the function to check if a directory exists so I typed the following, and then accepted the suggested correc...

4 months ago | 2 answers | 0

Question

How can I determine the order of a symbolic differential equation?

I'm writing a function that takes a differential equation in symbolic form as an argument and I want to determine the order of t...

4 months ago | 1 answer | 0

Answered

Why do I receive License Manager Error -97?

This is far too complicated and there are too many potential solutions. I have this error after installing MATLAB on a second c...

Why do I receive License Manager Error -97?

This is far too complicated and there are too many potential solutions. I have this error after installing MATLAB on a second c...

4 months ago | 0

Answered

Can't see any effect of NoiseVariance with idpoly and lsim

Maybe lsim is not the right function to use. I solved the problem by using sim instead, which has options including to add nois...

Can't see any effect of NoiseVariance with idpoly and lsim

Maybe lsim is not the right function to use. I solved the problem by using sim instead, which has options including to add nois...

5 months ago | 0