JavaView® v2.12

jvx.numeric
Class PnHodgeW

java.lang.Object
  |
  +--jv.object.PsObject
        |
        +--jvx.numeric.PnFunction
              |
              +--jvx.numeric.PnEnergy
                    |
                    +--jvx.numeric.PnDiriEnergy
                          |
                          +--jvx.numeric.PnHodgeW
All Implemented Interfaces:
java.lang.Cloneable, PsUpdateIf, java.io.Serializable

public class PnHodgeW
extends PnDiriEnergy

Energy to obtain principal function u.

Version:
05.09.00, 1.10 revised (ep) Boundary conditions on/off switch added.
05.09.00, 1.05 revised (ep) m_gradFi -> protected and added method getGradFi.
27.03.00, 1.01 revised (ep) Boundery restrictions.
24.11.99, 1.00 revised (kp)
24.11.99, 1.00 created (kp)
Author:
Konrad Polthier
See Also:
Serialized Form

Fields inherited from class jv.object.PsObject
HAS_CONFIG_PANEL, HAS_INFO_PANEL, HAS_MATERIAL_PANEL, HAS_TEXTURE_PANEL, INSPECTOR_INFO, INSPECTOR_INFO_EXT, IS_DELETED, IS_FIXED, IS_SELECTED, IS_USED, NUM_TAGS
 
Constructor Summary
PnHodgeW()
           
 
Method Summary
 double eval(PdVector coord)
          Compute energy of a coord vector using newly initialized stiffness matrix.
 PdVector evalGradient(PdVector coord, PdVector gradient)
          Evaluate Area gradient of a coord vector using the stiffness matrix of a PnArea instance.
 PdMatrix evalHessian(PdMatrix hessian)
          Compute full hessian of Diri energy of a coord vector using the stiffness matrix.
 PdVector[][] getJGradFi()
           
 void init()
          If instance has missing name then assign default name 'object_NUMBER' where number is the total number of already created instances.
 void initSurface(PgElementSet domain, PgElementSet surface)
          Method called from energyMinimizer.minimizeStep() to update the stiffness matrix after conjugate gradient method has returned.
 boolean setSurface(PgElementSet domain, PgElementSet surface)
          Set domain and surface, and initialize energy structure.
 void setVectorField(PgVectorField vf)
          Set vector field.
 
Methods inherited from class jvx.numeric.PnEnergy
getNumOfVariables, getSpectrum, getZeroGradientAtBounds, setZeroGradientAtBounds, testEigenvalues
 
Methods inherited from class jvx.numeric.PnFunction
enableEvaluation, isEvaluable
 
Methods inherited from class jv.object.PsObject
addInspector, addUpdateListener, assureInspector, clearTag, clone, clone, clone, copy, getFather, getInfoPanel, getInspector, getName, getNumObjects, hasInspector, hasTag, hasUpdateListener, instanceOf, instanceOf, removeInspector, removeUpdateListener, setName, setParent, setTag, toString, update, updatePanels
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

PnHodgeW

public PnHodgeW()
Method Detail

init

public void init()
Description copied from class: PsObject
If instance has missing name then assign default name 'object_NUMBER' where number is the total number of already created instances.
Overrides:
init in class PnDiriEnergy

initSurface

public void initSurface(PgElementSet domain,
                        PgElementSet surface)
Method called from energyMinimizer.minimizeStep() to update the stiffness matrix after conjugate gradient method has returned. E.g. PnHodgeW should copy surface into domain if in iteration mode i.e. if dimension of domain and surface are equal.
Overrides:
initSurface in class PnDiriEnergy

setSurface

public boolean setSurface(PgElementSet domain,
                          PgElementSet surface)
Set domain and surface, and initialize energy structure. Method is called from outside whenever domain or surface has been updated.
Overrides:
setSurface in class PnDiriEnergy

setVectorField

public void setVectorField(PgVectorField vf)
Set vector field. Method is called from outside whenever vector field has been updated.

eval

public double eval(PdVector coord)
Compute energy of a coord vector using newly initialized stiffness matrix. Method uses the array m_store for intermediate storage and modifies its entries.
Overrides:
eval in class PnEnergy
Parameters:
coord - Coordinate vector with list of doubles
Returns:
double Energy of coordinate vector
See Also:
vgp.discrete.harmonic.PnEnergy

evalGradient

public PdVector evalGradient(PdVector coord,
                             PdVector gradient)
Evaluate Area gradient of a coord vector using the stiffness matrix of a PnArea instance.
Overrides:
evalGradient in class PnEnergy
Parameters:
coord - Coordinate vector with list of doubles
gradient - Gradient vector to be modified
See Also:
vgp.discrete.harmonic.PnEnergy

evalHessian

public PdMatrix evalHessian(PdMatrix hessian)
Compute full hessian of Diri energy of a coord vector using the stiffness matrix. If argument is null, then a new matrix of full size is created and returned. Size of argument is enlarged if necessary. Boundary and deleted vertices are not considered.
Overrides:
evalHessian in class PnDiriEnergy
Parameters:
hessian - Empty hessian of Dirichlet energy
coord - Coordinate vector with list of doubles
Returns:
Hessian of Dirichlet energy
See Also:
vgp.discrete.harmonic.PnDiriEnergy

getJGradFi

public PdVector[][] getJGradFi()

JavaView® v2.12

The software JavaView® is copyright protected. All Rights Reserved.