필터 지우기
필터 지우기

How would I go about plotting "eqn = diff(du) + u == 3* cos(w*t)"

조회 수: 1 (최근 30일)
Dinakar Chappa
Dinakar Chappa 2017년 3월 25일
In my various attempts to try and plot this function, I keep getting errors.
ezplot( 'diff(du) + u /( 3* cos(0.5*t))' , [0 15] , u)
In my latest attempt, I received the error: "Error using sym/ezplot (line 45) The number of variables must not exceed two when plotting an equation." (Note that when I changed the 3rd value (u) to t, I received the same error.") The error seems self explanatory, but is there a way I can try to graph this even though it can't go beyond 2 variables. (Also note that du is declared as the derivative of u)

답변 (1개)

Nagini Venkata Krishna Kumari Palem
In my understanding you want to plot an expression with two variables. The function you are using 'ezplot' accepts only single variable. MATLAB has 'fmesh' function which allows you to pass two variables. And 'diff' function helps you to obtain derivatives of 'u'. You can use the following expression.
fmesh(@(u,t) (diff(u)/stepSize)+u/(3*cos(0.5*t)), [0 15])
For more information take a look into the following documentation page fmesh documentation

카테고리

Help CenterFile Exchange에서 Get Started with MATLAB에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by