File: newtonbarrier.e

package info (click to toggle)
euler 1.61.0-12
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, bullseye, forky, sid, trixie
  • size: 5,164 kB
  • sloc: ansic: 24,761; sh: 8,314; makefile: 141; cpp: 47; php: 1
file content (21 lines) | stat: -rw-r--r-- 405 bytes parent folder | download | duplicates (7)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
A=[-1,0;0,-1;1,0;0,1;1,1];
b=[0;0;1;1;1.5];
c=[1,2];

function barrier (x,A,b,a=10)
	return sum(exp(a*(A.x-b))');
endfunction

function fbarrier (x,a)
	global A,b,c;
	return barrier(x',A,b,a)-c.x';
endfunction

function fbarrierlog (x,y,A,b)
	return log(barrier(x',A,b));
endfunction

function barriertest (a)
	global A,b,c;
	return nelder("fbarrier",[0,0],0.1,0.0001;a);
endfunction