clear; close all; x = -2:0.1:2; f1 = @(x) exp(-x)+1.4*exp(-x.^2); f2 = @(x) exp(x)+1.4*exp(-x.^2); plot(f1(x),f2(x),'o'); hold on; x1 = 0:0.1:7; y1 = interp1(f2(x),f1(x),x1,'spline'); plot(x1,y1,'-'); xlim([0,7]); ylim([0,7]); syms f1_symbol(t) f2_symbol(t) f1_symbol(t) = @(t) exp(-t)+1.4*exp(-t.^2); f2_symbol(t) = @(t) exp(t)+1.4*exp(-t.^2); df1 = diff(f1_symbol); df2 = diff(f2_symbol); t12 = -df2/df1; t_val = 0.5; t12_val = eval(subs(t12,'t',t_val)); t21_val = 1/t12_val; T = [-1 t12_val; t21_val -1]; D = (t12 - 1).^2; ts = -2:0.01:2; figure; plot(ts,subs(D,t,ts),'-'); ylim([0 10]); title('D=(t_{12}-1)^2') hold on; xA1 = fminsearch(D, -2); xA2 = fminsearch(D, -0.1); xA3 = fminsearch(D, 2); f1a = f1(xA2); f2a = f2(xA2); f1i = 0; f2i = 0; w1 = 1/(f1a-f1i); w2 = 1/(f2a-f2i); C = max(w1*(f1(x)-f1a),w2*(f2(x)-f2a)); xopt = x(find(C==min(C))); f1opt = f1(xopt); f2opt = f2(xopt); t_val = xopt; t12_val = eval(subs(t12,'t',t_val)); t21_val = 1/t12_val; T = [-1 t12_val; t21_val -1] big;