% householder reflection v0 = [1; 0]; v0 = v0./norm(v0); v1 = [1; -1]; v1 = v1./norm(v1); v = 1/2.*(v1-v0); vnorm = norm(v); H = eye(2) - 2/(vnorm^2).*(v*v') A = [... ]; f = [... 0; -4.33681e-19; 0; 1.0842e-19; -2.66671e-06; -4.94914e-07; 0; -2.71051e-20; -4.19923e-06; -4.21374e-07; -3.92235e-06; -8.64817e-07; 0; -5.42101e-20; -4.96301e-06; -4.13502e-06; 0; 0; -7.03515e-06; -5.84881e-06; -4.93309e-06; -2.37804e-06; 0; 0; -2.90755e-06; -1.23334e-06; 0; 0; -2.2449e-06; -8.21563e-07; 0; 0; 0; 0; 0; 0; -7.24652e-06; -8.25293e-07; 0; 2.4104e-06; -8.19294e-06; -1.18617e-06; -5.58223e-06; -1.69348e-06; 0; 1.88001e-06; -1.03387e-05; -8.22886e-06; 0; 0; -1.07258e-05; -8.62344e-06; -9.76077e-06; -4.93954e-06; -9.10261e-06; -7.35307e-06; -4.01973e-06; -2.38351e-06; -5.92659e-06; -4.23858e-07; -7.9911e-06; -4.04139e-06; -3.80594e-06; -3.06903e-06; -3.92924e-06; -2.71681e-06; -5.12975e-06; -1.37642e-06; -4.79892e-06; -1.14935e-06; -7.19726e-06; -3.54967e-06; -6.62755e-06; -6.1499e-07; 0; 1.28701e-05; 0; 0; -1.09944e-05; -1.92221e-06; 0; 1.17853e-05; -1.21456e-05; -2.20784e-06; -8.3682e-06; -2.01449e-06; 0; 0; -1.43122e-05; -1.00938e-05; 0; 0; -1.48374e-05; -1.03947e-05; -1.3684e-05; -6.31825e-06; -1.35318e-05; -9.3703e-06; -5.76679e-06; -1.88878e-06; -9.18524e-06; -1.51544e-06; -1.16296e-05; -5.64398e-06; -5.20301e-06; -2.13559e-06; -5.55432e-06; -2.017e-06; -7.96841e-06; -1.7895e-06; -7.95375e-06; -1.76175e-06; -1.0596e-05; -5.24553e-06; -1.02345e-05; -1.74422e-06; -2.16064e-05; -1.85059e-06; -2.24752e-05; -3.34957e-07; -1.34774e-05; -2.51353e-06; -2.18312e-05; -1.04202e-06; -1.99898e-05; -1.463e-06; -1.94256e-05; -2.11821e-06; -5e-05; 5.03269e-07; -2.00631e-05; -2.41829e-06; -2.11637e-05; -1.12298e-06; -1.61508e-05; -1.11752e-05; -1.7267e-05; -6.9337e-06; -1.43931e-05; -6.46903e-06; -1.70354e-05; -2.45177e-06; -5e-05; -2.50465e-06; -5e-05; -1.21588e-05; -2.01431e-05; -1.19797e-05; ]; d = 0.00075745; A2 = [... ]; f2 = [... 0; 0; 0; 0; -3.01994e-06; -1.76298e-07; 0; 0; -4.78204e-06; -2.0995e-07; -5.01951e-06; 1.22653e-06; 0; 0; -4.98476e-06; -3.57931e-06; 0; 0; -7.06572e-06; -4.97786e-06; -5.40025e-06; -1.91591e-06; 0; 0; -3.26344e-06; -9.4196e-07; 0; 0; -3.47107e-06; 1.69693e-06; 0; 0; 0; 0; 0; 0; -8.36624e-06; -3.21786e-07; 0; 0; -9.19771e-06; -4.8646e-07; -9.46319e-06; 2.13218e-06; 0; 0; -1.03261e-05; -6.78209e-06; 0; 0; -1.09634e-05; -7.09926e-06; -1.01615e-05; -3.77678e-06; -9.09151e-06; -6.13484e-06; -9.06507e-06; 4.28268e-06; -6.83374e-06; -2.4706e-07; -8.51881e-06; -3.22169e-06; -7.83369e-06; 3.49294e-06; -8.45665e-06; 3.90404e-06; -7.913e-06; 1.91502e-06; -7.13457e-06; 1.77604e-06; -7.71821e-06; -2.87949e-06; -7.58455e-06; -3.19117e-07; 0; 0; 0; 0; -1.17905e-05; -6.57623e-07; 0; 0; -1.26738e-05; -7.75536e-07; -1.28663e-05; 2.59111e-06; 0; 0; -1.33726e-05; -8.23012e-06; 0; 0; -1.40382e-05; -8.4827e-06; -1.3445e-05; -4.60248e-06; -1.21277e-05; -7.7075e-06; -1.20933e-05; 5.59837e-06; -1.00511e-05; -5.83173e-07; -1.16989e-05; -4.19969e-06; -1.07938e-05; 5.03904e-06; -1.14551e-05; 5.33497e-06; -1.1057e-05; 2.39173e-06; -1.01977e-05; 2.22842e-06; -1.08385e-05; -3.93909e-06; -1.09119e-05; -6.59537e-07; -1.51572e-05; 6.80143e-06; -1.97651e-05; 7.92292e-06; -1.3582e-05; -8.81729e-07; -1.73372e-05; 7.52177e-06; -1.63794e-05; 2.79237e-06; -1.33659e-05; 2.38778e-06; -5e-05; 7.93536e-06; -1.92072e-05; -9.96979e-07; -1.93357e-05; 3.15138e-06; -1.54595e-05; -9.11795e-06; -1.68142e-05; -5.1397e-06; -1.4113e-05; -4.66534e-06; -1.63265e-05; -9.49749e-07; -5e-05; -1.0631e-06; -5e-05; -1.02021e-05; -1.98778e-05; -9.99727e-06; ]; d2 = 0; sum(sum(abs(f-f2)>1e-14)) sum(sum(abs(A-A2)>1e-14)) alpha0 = 100; V = 1e-5; %1e-20; V0 = 5e-5; L = 2.25e-5; alpha = @(t) log(exp(alpha0 - V.*t./L ) - V0 * (exp(-t./L.*V)-1)./V); x = [0:0.001:0.1]; alpha(x) plot(x, alpha(x)); %abs(d-d2) % x = [... % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % -1.2337e-10; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % -1.2337e-10; % 0; % -1.2337e-10; % 0; % 0; % 0; % ]; % % ignore = [... % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 1; % 1; % 0; % 0; % 1; % 1; % 0; % 0; % 1; % 1; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 1; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 0; % 1; % 0; % 1; % 0; % 0; % 0; % ]; % % newA = A; % newf = f; % for i=1:length(ignore) % if (ignore(i)==1) % for j=1:length(ignore) % newA(i,j) = (i==j); % end % newf(i) = x(i); % end % end % newA % newf % ignore = zeros(1, length(f)); % for i=1:length(ignore) % if (A(i,i)==0) % ignore(1, i) = 1; % end % end % % indices = []; % for i=1:length(ignore) % if (ignore(i)==0) % indices = [indices i]; % end % end % % len = length(indices); % newA = zeros(len, len); % newf = zeros(1, len); % for i=1:len % newf(i) = f(indices(i)); % % for j=1:len % newA(i,j) = A(indices(i), indices(j)); % end % end % newf; % newA %inv(A); % sol = newA\newf % % tnnmgSol = [... % -1.03349; % -0.0502635; % 0.0161336; % -0.00852914; % -0.0130659; % 0.00660115; % -0.434915; % -0.0128241; % -0.00893317; % 0.00884256; % -0.0110232; % -0.10936; % 1.14978; % 0.0581132; % 0.019598; % 0.190758; % 0.478393; % -0.00433049; % 0.0513446; % 0.353218; % -0.00482644; % 0.11758; % 0; % 0; % -0.013677; % 0.0512563; % 0; % 0; % -0.00514197; % -0.117664; % 0; % 0; % 0.130034; % 0.574041; % 0.0136965; % 0.214953; % 0.0335986; % -0.00703477; % 0.0438202; % 0.346506; % -0.000896805; % 0.127837; % 0.041946; % 0.217409; % -1.2337e-10; % 0.112528; % -0.00828618; % 0.00453345; % -0.00898709; % 0.0781683; % 0.092355; % -0.556143; % -0.00443686; % -0.140953; % 0.0424371; % -0.250082; % -0.00336878; % 0.00105471; % -1.2337e-10; % 0.0188452; % -1.2337e-10; % -0.14111; % 0.00298499; % -0.190904; % ]; % % sol-tnnmgSol