How to write this fuction in Matlab? I have an example code in Python

조회 수: 1 (최근 30일)
Beket
Beket 2023년 1월 25일
답변: Luca Ferro 2023년 1월 25일
How to write this fuction in Matlab?
Someone wrote it in Python like this:
def b(r):
return b_1 - (b_1 - b_2) / (r_2 - r_1) * (r - r_1)

채택된 답변

Jan
Jan 2023년 1월 25일
Assuming that b_1, b_2, r_1, r_2 are constants:
% As anonymous function:
r_1 = rand; % Define the constants
r_2 = rand;
b_1 = rand;
b_2 = rand;
b = @(r) b_1 - (b_1 - b_2) / (r_2 - r_1) * (r - r_1);
% Or as a function:
function out = b(r)
r_1 = rand; % Define the constants
r_2 = rand;
b_1 = rand;
b_2 = rand;
out = b_1 - (b_1 - b_2) / (r_2 - r_1) * (r - r_1);
end

추가 답변 (2개)

Jiri Hajek
Jiri Hajek 2023년 1월 25일
Hi, your function contains four parameters, so the python code is incomplete. You can do this several ways in MATLAB, classic syntax would be:
% Test call
myVar = bFunName(10)
myVar = -5
% function definition
function b = bFunName(r)
b_1 = 1;
b_2 = 2;
r_2 = 3;
r_1 = 4;
b = b_1 - (b_1 - b_2) / (r_2 - r_1) * (r - r_1);
end

Luca Ferro
Luca Ferro 2023년 1월 25일
b= @(r) b1 - ((b1-b2)*(r-r1))/(r2 -r1);
where b1,b2,r1,r2 are constants

카테고리

Help CenterFile Exchange에서 Call Python from MATLAB에 대해 자세히 알아보기

제품


릴리스

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by