/* ** Simple circuit with R-E and ac source */ euclid ?- solve_circuit( [ [ac_source,source1,[10,20],[n1,n2]], [ampere_meter,am1,[I],[n2,n3]], [resistor,res1,[10],[n3,n1]], [volt_meter,vo1,[V],[n3,n1]]], [[n1,n2,n3,n1]]). [B1,A1]:reals I= -sin(20*B1)//B1 V= -10*sin(20*A1)//A1 More (y/n) y *** No *** /* ** sample circuit R-C with ac source */ euclid ?- V@0=0,solve_circuit( [ [resistor, re1, [10], [n1,n2]], [ampere_meter,am1,[I],[n2,n3]], [capacitor,cap1,[0.1],[n3,n4]], [volt_meter,vo1,[V],[n3,n4]], [dc_source,source1,[10],[n4,n1]]], [[n1,n2,n3,n4,n1]]). [A1]:reals I= -0.1*10/e^ (1.0*A1)//A1 V= -10.0+1.0*10/e^ (1.0*A1)//A1 More (y/n) y *** No *** euclid ?- V@0=0,solve_circuit( [ [resistor, re1, [R], [n1,n2]], [ampere_meter,am1,[I],[n2,n3]], [capacitor,cap1,[C],[n3,n4]], [volt_meter,vo1,[V],[n3,n4]], [dc_source,source1,[E],[n4,n1]]], [[n1,n2,n3,n4,n1]]). [A1,R,C,E]:reals I= -E/ (R*e^ (A1/ (R*C)))//A1 V= -E+E/e^ (A1/ (R*C))//A1 More (y/n) y *** No *** /* ** Example from E Kougioumtzopoulos, Electricity (Wheatstone Bridge) ** E in Volts , R in Ohms, I in Amps ** Do not forget that I,V are real formulae ** r4 must be 30Ohms ** */ euclid ?- solve_circuit( [ [volt_meter,v1,[0//X],[n1,n4]],[dc_source,s1,[2],[n3,n2]], [resistor,r1,[10],[n3,n1]], [resistor,r2,[20],[n2,n1]], [resistor,r3,[60],[n4,n2]], [resistor,r4,[R],[n3,n4]] ], [ [n1,n2,n3,n1], [n1,n4,n2,n1], [n3,n2,n4,n3], [n1,n4,n3,n1] ]). [X]:reals R=30 More (y/n) y *** No *** /* ** Sample R-C Circuit with AC source */ euclid ?- V@0=0,solve_circuit( [ [resistor, re1, [R], [n1,n2]], [ampere_meter,am1,[I],[n2,n3]], [capacitor,cap1,[C],[n3,n4]], [volt_meter,vo1,[V],[n3,n4]], [ac_source,source1,[E,W],[n4,n1]]], [[n1,n2,n3,n4,n1]]). [B1,A1,R,C,E,W]:reals I= (-A1-W^2*R^2*C^2*A1-E*W*R*C*e^ (B1/ (R*C))*cos(W*B1)-E*W^2*R^2*C^2*e^ (B1/ (R*C))*sin(W*B1))/ ((R+W^2*R^3*C^2)*e^ (B1/ (R*C)))//B1 V= (A1+W^2*R^2*C^2*A1+E*W*R*C*e^ (B1/ (R*C))*cos(W*B1)-E*e^ (B1/ (R*C))*sin(W*B1))/ ((1+W^2*R^2*C^2)*e^ (B1/ (R*C)))//B1 E= -A1/ (W*R*C)-A1*W*R*C More (y/n) y *** No ***