import java.applet.Applet; import java.awt.event.*; import java.awt.*; /**This class does the basic interval arithmetic of complex numbers */ public class IntervalComplex { Interval x,y; /**constructors **/ public IntervalComplex() { this.x=new Interval(); this.y=new Interval(); } public IntervalComplex(Interval x,Interval y) { this.x=new Interval(x); this.y=new Interval(y); } public IntervalComplex(IntervalComplex Z) { this.x=new Interval(Z.x); this.y=new Interval(Z.y); } /**printout**/ public void print() { System.out.print("["+this.x.l+" , "+this.x.r+"] "); System.out.print(" + "); System.out.print("["+this.y.l+" , "+this.y.r+"]"); System.out.print(" I "); System.out.println(); } public static IntervalComplex fat(Complex z) { IntervalComplex Z=new IntervalComplex(); Z.x=Interval.fat(z.x); Z.y=Interval.fat(z.y); return(Z); } public static IntervalComplex plus(IntervalComplex z1,IntervalComplex z2) { return new IntervalComplex(Interval.plus(z1.x,z2.x),Interval.plus(z1.y,z2.y)); } public static IntervalComplex average(IntervalComplex z1,IntervalComplex z2) { IntervalComplex z=plus(z1,z2); Interval H=new Interval(.5); z.x=Interval.times(H,z.x); z.y=Interval.times(H,z.y); return(z); } public static IntervalComplex minus(IntervalComplex z1,IntervalComplex z2) { return new IntervalComplex(Interval.minus(z1.x,z2.x),Interval.minus(z1.y,z2.y)); } public static Interval distMaxNorm(IntervalComplex a,IntervalComplex b) { IntervalComplex z=minus(a,b); Interval t1=Interval.abs(z.x); Interval t2=Interval.abs(z.y); return(Interval.max(t1,t2)); } }