乙個使用MATLAB手動求二維曲線交點的例子

2021-05-23 18:44:22 字數 1079 閱讀 6367

該例子是通過調節步長和精度進行逼近,不是精確解,也不是很完善,如果精度選擇太大,而步進值選擇太小可能乙個點座標被輸出兩次,僅作為乙個練習用。

technorati 標籤: matlab

%% settings

prec = 0.01;   %精度

step = 0.02;

start = -100;

stop = 100;

%% plot

x=start:step:stop;

l1=3*x+5;

l2 = -0.1*x.^2+50;

plot(x,l1,'red',x,l2,'blue');

legend(,'location','northwest');

title();

xlabel('x');

ylabel('y');

%% find joint

jcount = 0;

joint = [-inf inf];

for i=1:length(x)

if(abs(l1(i)-l2(i)) < prec)

jcount = jcount + 1;

joint=[x(i) l1(i)]

display('the joint point is:');

display(strcat('(',num2str(x(i)),',',num2str(l1(i)),')'));

lh = line([min(x) x(i)],[l1(i) l1(i)]); %縱座標

set(lh,,);

lh = line([x(i) x(i)],[min(min(l1),min(l2)) l1(i)]); %橫座標

set(lh,'color','green');

set(lh,'linestyle','--');

text(joint(1)+5,joint(2)+5,strcat('p_',num2str(jcount),'(',num2str(joint(1)),',',num2str(joint(2)),')'));

end

end

求乙個二維陣列的最大子矩陣

演算法描述 本題可以使用窮舉法,但是那樣不容易實現以及效率不高,我們的想法是,將二維陣列變成一維陣列,再將此 一維陣列 按照上次的做法既可求出最大子陣列,怎麼樣將二維變成一維呢 例如我們做的是四行四列的陣列,將每一行用乙個sum來表示,則有sum 1 sum 2 sum 3 sum 4 sum 1 ...

判斷乙個二維陣列的資料是否在另外乙個二維陣列裡重複

當我最先碰到這個問題是工作中批量匯入資料,防止裡面有資料跟資料庫裡原有的重複。大多數人想到的是挨個迴圈對比,感覺這樣速度有點慢,所以根據php函式來解決的 new cand idcard array column cands,cand idcard array column 先把要匯入的二維陣列,根...

35 求乙個矩陣中最大的二維矩陣

求1個矩陣中最大的二維矩陣 1。單就這一題來說,首先方法就是遍歷 include using namespace std int a 5 int m 3 int n 5 void max matrix void cout 矩陣是 1 1 s 1 s 1 int main void 還有1種情況,給定...