Package gov.nih.mipav.model.algorithms
Class SchwarzChristoffelMapping2
- java.lang.Object
-
- java.lang.Thread
-
- gov.nih.mipav.model.algorithms.AlgorithmBase
-
- gov.nih.mipav.model.algorithms.SchwarzChristoffelMapping2
-
- All Implemented Interfaces:
java.awt.event.ActionListener,java.awt.event.WindowListener,java.lang.Runnable,java.util.EventListener
public class SchwarzChristoffelMapping2 extends AlgorithmBase
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) classSchwarzChristoffelMapping2.hppfun(package private) classSchwarzChristoffelMapping2.ODEHPModel(package private) classSchwarzChristoffelMapping2.ODESTModel(package private) classSchwarzChristoffelMapping2.stpfun(package private) classSchwarzChristoffelMapping2.stpfun2(package private) classSchwarzChristoffelMapping2.stpfun3(package private) classSchwarzChristoffelMapping2.stpfunEP
-
Field Summary
Fields Modifier and Type Field Description private doubleepsprivate SchwarzChristoffelMappingscmprivate booleantestRoutineprivate doubletoleranceprivate double[][]w-
Fields inherited from class gov.nih.mipav.model.algorithms.AlgorithmBase
destFlag, destImage, image25D, mask, maxProgressValue, minProgressValue, multiThreadingEnabled, nthreads, progress, progressModulus, progressStep, runningInSeparateThread, separable, srcImage, threadStopped
-
-
Constructor Summary
Constructors Constructor Description SchwarzChristoffelMapping2()SchwarzChristoffelMapping2(ModelImage destImg, ModelImage srcImg, double[][] w)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private SchwarzChristoffelMapping.polygonforwardpoly(SchwarzChristoffelMapping.scmap map)private doublehpaccuracy(SchwarzChristoffelMapping.scmap M)private double[][]hpderiv(double[][] zp, double[][] z, double[] beta, double[] c)private voidhpevalinv(double[][] zp, SchwarzChristoffelMapping.scmap M, double[][] wp)private voidhpinvmap(double[][] zp, double[][] wp, double[][] w, double[] beta, double[][] z, double[] c, double[][] qdat, double[][] z0, boolean ode, boolean newton, double tol, int maxiter)SchwarzChristoffelMapping.scmaphplmap(SchwarzChristoffelMapping.polygon poly, double[][] zin, double[] alphain, double[] c)voidhplot(SchwarzChristoffelMapping.scmap M, double[] re, double[] im, int yInvert, boolean closed, double[] axis)private voidhpparam(double[][] z, double[] c, double[][] qdat, double[][] w, double[] beta, double[] z0, double tol)voidhpplot(double[][] w, double[] beta, double[][] z, double[] c, double[] re, double[] im, int yInvert, boolean closed, double[] axis)voidrunAlgorithm()Actually runs the algorithm.DoubleDoublesign(DoubleDouble d)private DoubleDouble[][]stderivEP(DoubleDouble[][] zp, DoubleDouble[][] z, DoubleDouble[] beta, DoubleDouble[] c, int j)private double[][]stinvmap(double[][] wp, double[][] w, double[] beta, double[][] z, double[] c, double[][] qdat, double[][] z0, boolean ode, boolean newton, double tol, int maxiter)private voidstparam(double[][] z, double[] c, double[][] qdat, double[][] w, double[] beta, int[] ends, double[][] z0, double tol)voidstplot(double[][] w, double[] beta, double[][] z, double[] c, double[] re, double[] im, int yInvert, boolean closed, double[] axis)private DoubleDouble[][]stquadEP(DoubleDouble[][] z1, DoubleDouble[][] z2, int[] sing1, DoubleDouble[][] z, DoubleDouble[] beta, DoubleDouble[][] qdat)private DoubleDouble[][]stquadhEP(DoubleDouble[][] z1, DoubleDouble[][] z2, int[] sing1, DoubleDouble[][] z, DoubleDouble[] beta, DoubleDouble[][] qdat)private doublestripAccuracy(SchwarzChristoffelMapping.scmap M)private double[][]stripeval(SchwarzChristoffelMapping.scmap M, double[][] zp)private double[][]stripevalinv(SchwarzChristoffelMapping.scmap M, double[][] wp, double[][] z0)private SchwarzChristoffelMapping.scmapstripmap(SchwarzChristoffelMapping.polygon poly, int[] endidx)voidstripplot(SchwarzChristoffelMapping.scmap M, double[] re, double[] im, int yInvert, boolean closed, double[] axis)private voidtestHplmap1()private voidtestHplmap2()private voidtestHplmap3()private voidtestStripmap1()private voidtestStripmap2()private DoubleDoublezabs(DoubleDouble zr, DoubleDouble zi)zabs computes the absolute value or magnitude of a DoubleDouble precision complex variable zr + j*zi.private voidzdiv(DoubleDouble ar, DoubleDouble ai, DoubleDouble br, DoubleDouble bi, DoubleDouble[] cr, DoubleDouble[] ci)complex divide c = a/b.private voidzmlt(DoubleDouble ar, DoubleDouble ai, DoubleDouble br, DoubleDouble bi, DoubleDouble[] cr, DoubleDouble[] ci)complex multiply c = a * b.-
Methods inherited from class gov.nih.mipav.model.algorithms.AlgorithmBase
actionPerformed, addListener, addProgressChangeListener, calculateImageSize, calculatePrincipleAxis, computeElapsedTime, computeElapsedTime, convertIntoFloat, delinkProgressToAlgorithm, delinkProgressToAlgorithmMulti, displayError, errorCleanUp, finalize, fireProgressStateChanged, fireProgressStateChanged, fireProgressStateChanged, fireProgressStateChanged, fireProgressStateChanged, generateProgressValues, getDestImage, getElapsedTime, getMask, getMaxProgressValue, getMinProgressValue, getNumberOfThreads, getProgress, getProgressChangeListener, getProgressChangeListeners, getProgressModulus, getProgressStep, getProgressValues, getSrcImage, isCompleted, isImage25D, isMultiThreadingEnabled, isRunningInSeparateThread, isThreadStopped, linkProgressToAlgorithm, linkProgressToAlgorithm, makeProgress, notifyListeners, removeListener, removeProgressChangeListener, run, setCompleted, setImage25D, setMask, setMaxProgressValue, setMinProgressValue, setMultiThreadingEnabled, setNumberOfThreads, setProgress, setProgressModulus, setProgressStep, setProgressValues, setProgressValues, setRunningInSeparateThread, setSrcImage, setStartTime, setThreadStopped, startMethod, windowActivated, windowClosed, windowClosing, windowDeactivated, windowDeiconified, windowIconified, windowOpened
-
Methods inherited from class java.lang.Thread
activeCount, checkAccess, clone, countStackFrames, currentThread, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, onSpinWait, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, suspend, toString, yield
-
-
-
-
Field Detail
-
tolerance
private double tolerance
-
eps
private double eps
-
w
private double[][] w
-
testRoutine
private boolean testRoutine
-
scm
private SchwarzChristoffelMapping scm
-
-
Constructor Detail
-
SchwarzChristoffelMapping2
public SchwarzChristoffelMapping2()
-
SchwarzChristoffelMapping2
public SchwarzChristoffelMapping2(ModelImage destImg, ModelImage srcImg, double[][] w)
-
-
Method Detail
-
runAlgorithm
public void runAlgorithm()
Description copied from class:AlgorithmBaseActually runs the algorithm. Implemented by inheriting algorithms.- Specified by:
runAlgorithmin classAlgorithmBase
-
testHplmap1
private void testHplmap1()
-
testHplmap2
private void testHplmap2()
-
testHplmap3
private void testHplmap3()
-
testStripmap1
private void testStripmap1()
-
testStripmap2
private void testStripmap2()
-
stripmap
private SchwarzChristoffelMapping.scmap stripmap(SchwarzChristoffelMapping.polygon poly, int[] endidx)
-
stripAccuracy
private double stripAccuracy(SchwarzChristoffelMapping.scmap M)
-
stparam
private void stparam(double[][] z, double[] c, double[][] qdat, double[][] w, double[] beta, int[] ends, double[][] z0, double tol)
-
stripeval
private double[][] stripeval(SchwarzChristoffelMapping.scmap M, double[][] zp)
-
stripevalinv
private double[][] stripevalinv(SchwarzChristoffelMapping.scmap M, double[][] wp, double[][] z0)
-
stinvmap
private double[][] stinvmap(double[][] wp, double[][] w, double[] beta, double[][] z, double[] c, double[][] qdat, double[][] z0, boolean ode, boolean newton, double tol, int maxiter)
-
hpevalinv
private void hpevalinv(double[][] zp, SchwarzChristoffelMapping.scmap M, double[][] wp)
-
hpinvmap
private void hpinvmap(double[][] zp, double[][] wp, double[][] w, double[] beta, double[][] z, double[] c, double[][] qdat, double[][] z0, boolean ode, boolean newton, double tol, int maxiter)
-
hpderiv
private double[][] hpderiv(double[][] zp, double[][] z, double[] beta, double[] c)
-
stripplot
public void stripplot(SchwarzChristoffelMapping.scmap M, double[] re, double[] im, int yInvert, boolean closed, double[] axis)
-
stplot
public void stplot(double[][] w, double[] beta, double[][] z, double[] c, double[] re, double[] im, int yInvert, boolean closed, double[] axis)
-
hplot
public void hplot(SchwarzChristoffelMapping.scmap M, double[] re, double[] im, int yInvert, boolean closed, double[] axis)
-
hpplot
public void hpplot(double[][] w, double[] beta, double[][] z, double[] c, double[] re, double[] im, int yInvert, boolean closed, double[] axis)
-
hplmap
public SchwarzChristoffelMapping.scmap hplmap(SchwarzChristoffelMapping.polygon poly, double[][] zin, double[] alphain, double[] c)
-
forwardpoly
private SchwarzChristoffelMapping.polygon forwardpoly(SchwarzChristoffelMapping.scmap map)
-
hpaccuracy
private double hpaccuracy(SchwarzChristoffelMapping.scmap M)
-
hpparam
private void hpparam(double[][] z, double[] c, double[][] qdat, double[][] w, double[] beta, double[] z0, double tol)
-
sign
public DoubleDouble sign(DoubleDouble d)
-
zabs
private DoubleDouble zabs(DoubleDouble zr, DoubleDouble zi)
zabs computes the absolute value or magnitude of a DoubleDouble precision complex variable zr + j*zi.- Parameters:
zr- DoubleDoublezi- DoubleDouble- Returns:
- DoubleDouble
-
zmlt
private void zmlt(DoubleDouble ar, DoubleDouble ai, DoubleDouble br, DoubleDouble bi, DoubleDouble[] cr, DoubleDouble[] ci)
complex multiply c = a * b.- Parameters:
ar- DoubleDoubleai- DoubleDoublebr- DoubleDoublebi- DoubleDoublecr- DoubleDouble[]ci- DoubleDouble[]
-
zdiv
private void zdiv(DoubleDouble ar, DoubleDouble ai, DoubleDouble br, DoubleDouble bi, DoubleDouble[] cr, DoubleDouble[] ci)
complex divide c = a/b.- Parameters:
ar- DoubleDoubleai- DoubleDoublebr- DoubleDoublebi- DoubleDoublecr- DoubleDouble[]ci- DoubleDouble[]
-
stquadhEP
private DoubleDouble[][] stquadhEP(DoubleDouble[][] z1, DoubleDouble[][] z2, int[] sing1, DoubleDouble[][] z, DoubleDouble[] beta, DoubleDouble[][] qdat)
-
stquadEP
private DoubleDouble[][] stquadEP(DoubleDouble[][] z1, DoubleDouble[][] z2, int[] sing1, DoubleDouble[][] z, DoubleDouble[] beta, DoubleDouble[][] qdat)
-
stderivEP
private DoubleDouble[][] stderivEP(DoubleDouble[][] zp, DoubleDouble[][] z, DoubleDouble[] beta, DoubleDouble[] c, int j)
-
-