vgp.discrete.catenoid
Class PgCatenoid
java.lang.Object
|
+--jv.object.PsObject
|
+--jv.project.PgGeometry
|
+--jv.geom.PgPointSet
|
+--jv.geom.PgElementSet
|
+--vgp.discrete.catenoid.PgCatenoid
- All Implemented Interfaces:
- java.lang.Cloneable, PgGeometryIf, PsUpdateIf, java.io.Serializable
- public class PgCatenoid
- extends PgElementSet
Discrete catenoid is a critical point for the discrete area functional,
and its profile curve is given by an explicit formula.
Joint work of Konrad Polthier and Wayne Rossman, with help of Ekki Tjaden.
- Version:
- 03.10.99, 2.20 revised (kp) Interpolating catenoid with root finder.
18.08.99, 2.10 revised (kp) Waist radius implemented.
20.07.99, 2.00 revised (kp) Complete explicit formulas, additional bottomHeight control.
13.05.99, 1.05 revised (kp) Explicit formulas and user interface finished.
02.05.99, 1.00 created (kp)
- Author:
- Konrad Polthier
- See Also:
- Serialized Form
|
Field Summary |
protected boolean |
m_bAlternate
Flag to switch between regular, triangulated mesh, and a mesh
whose vertical edges are zig-zag. |
protected boolean |
m_bClosed
Close interior boundary of catenoid. |
protected boolean |
m_bFixedHeight
Fix the distance between both horizontal catenoid rings on top and bottom.
|
protected PuDouble |
m_bottomHeight
Vertical offset of lower ring for unsymmetric catenoid. |
protected boolean |
m_bSymmetric
Ensure that catenoid is symmetric with respect to horizontal plane.
|
protected boolean |
m_bTrueInterpolant
If true then the catenoid parameters are chosen such that
the discrete catenoid interpolates the smooth catenoid. |
protected PuDouble |
m_delta
Distance between two successive rings of the catenoid,
constant for discrete catenoids. |
protected double |
m_height
|
protected PuInteger |
m_k
Dihedral symmetry of catenoid, number of meridians. |
protected PuInteger |
m_n
Number of rings of catenoid. |
protected PuDouble |
m_radius
Radius of Catenoid Waist. |
| Fields inherited from class jv.geom.PgElementSet |
m_bConforming, m_bndList, m_bShowBackface, m_bShowBoundaries, m_bShowEdgeColors, m_bShowEdgeLabels, m_bShowEdges, m_bShowElementBackColor, m_bShowElementBackColors, m_bShowElementColors, m_bShowElementLabels, m_bShowElementNormalArrow, m_bShowElementNormals, m_bShowElements, m_bShowElementTexture, m_bShowOutline, m_bShowTaggedBoundaries, m_bShowTaggedEdges, m_bShowTaggedElements, m_dimOfElements, m_edge, m_edgeColor, m_element, m_elementBackColor, m_elementColor, m_elementNormal, m_elementSaved, m_elementTexture, m_globalBndColor, m_globalBndSize, m_globalBndTagColor, m_globalEdgeColor, m_globalEdgeSize, m_globalEdgeTagColor, m_globalElementBackColor, m_globalElementColor, m_globalElementNormalColor, m_globalElementNormalLength, m_globalElementNormalSize, m_globalElementTagColor, m_maxNumElements, m_neighbour, m_numEdges, m_numElements, m_savedNumVertices |
| Fields inherited from class jv.geom.PgPointSet |
m_bDefaultLabelEnabled, m_bShowIndices, m_bShowTaggedVertices, m_bShowTransparency, m_bShowVectorArrow, m_bShowVectorColors, m_bShowVectorFields, m_bShowVertexColors, m_bShowVertexLabels, m_bShowVertexNormalArrow, m_bShowVertexNormals, m_bShowVertexTexture, m_bShowVertices, m_dimOfColors, m_dimOfTextures, m_dimOfVectors, m_globalVectorColor, m_globalVectorLength, m_globalVectorSize, m_globalVertexColor, m_globalVertexNormalColor, m_globalVertexNormalLength, m_globalVertexNormalSize, m_globalVertexSize, m_globalVertexTagColor, m_maxNumVertices, m_numVectorFields, m_numVertices, m_texture, m_transparency, m_vectorField, m_vertex, m_vertexColor, m_vertexNormal, m_vertexTexture |
| Fields inherited from class jv.project.PgGeometry |
m_ambientProj, m_ambientSpace, m_authorInfo, m_bShowBndBox, m_bShowCenter, m_bShowing, m_bShowTitle, m_center, m_dim, m_dimOfSimplex, m_displayList, m_geometryInfo, m_labelAttribute, m_methodMenu, m_modelMatrix, m_title, m_version, m_versionType |
| Fields inherited from class jv.object.PsObject |
HAS_CONFIG_PANEL, HAS_INFO_PANEL, HAS_MATERIAL_PANEL, INSPECTOR_INFO, INSPECTOR_INFO_EXT, IS_DELETED, IS_FIXED, IS_SELECTED, IS_USED, m_infoPanel, m_name, m_panelList, m_parent, m_tag, m_updateList, NUM_TAGS |
| Fields inherited from interface jv.project.PgGeometryIf |
AMBIENT_H3_HYPERBOLIC, AMBIENT_PROJECTIONS, AMBIENT_R3_EUCLIDEAN, AMBIENT_R4_EUCLIDEAN, AMBIENT_S3_SPHERE, AMBIENT_SPACES, INSPECTOR_CONTROL, INSPECTOR_CONTROL_EXT, INSPECTOR_MATERIAL, INSPECTOR_MATERIAL_EXT, LABEL_BASE, LABEL_CENTER, LABEL_HEAD, LABEL_MIDDLE, LABEL_TAIL, LABEL_TOP, METHOD_EXT, PROJ_KLEIN_BALL, PROJ_PARALLEL, PROJ_POINCARE_BALL, PROJ_STEREOGRAPHIC, PROJ_UPPER_HALFSPACE |
|
Constructor Summary |
PgCatenoid()
Construct an empty discrete catenoid which is a critical value of the
discrete are functional. |
| Methods inherited from class jv.geom.PgElementSet |
addEdge, addElement, addElement, assureBoundary, assureDimOfElements, assureEdgeColors, assureElementBackColors, assureElementColors, assureElementNormals, assureElementTextures, assureNeighbours, blend, buildPolygon, buildPolygonFromCurve, buildQuadr, buildQuadrFromCurve, buildTriangle, buildTriangleFromCurve, checkNeighbour, clearTagElement, clone, close, computeCylinder, computeDisk, computePlane, computeRotation, computeSnail, computeSphere, computeTorus, copy, copyConnectivity, copyElementSet, fixBoundaries, flipEdges, flipOrientation, getArea, getAreaOfElement, getBoundaries, getDimOfElements, getEdge, getEdge, getEdgeColors, getEdgeLength, getEdgeList, getEdges, getElement, getElementBackColor, getElementBackColors, getElementColor, getElementColors, getElementNormal, getElementNormals, getElements, getElementTextures, getElementVertices, getElementWithVertex, getGlobalBndColor, getGlobalBndSize, getGlobalBndTagColor, getGlobalEdgeColor, getGlobalEdgeSize, getGlobalEdgeTagColor, getGlobalElementBackColor, getGlobalElementColor, getGlobalElementNormalColor, getGlobalElementNormalLength, getGlobalElementNormalSize, getGlobalElementTagColor, getJvx, getL2Matrix, getL2Norm, getMaxNumElements, getNeighbour, getNeighbourLocInd, getNeighbours, getNumBoundaries, getNumBoundaryComponents, getNumBoundaryEdges, getNumBoundaryVertices, getNumEdges, getNumElements, getOppVertexInd, getOppVertexLocInd, getSavedElements, getSavedNumVertices, getVertexAngle, getVolume, getVolumeOfElement, hasBoundary, hasEdgeColors, hasEdges, hasElementColors, hasElementNormals, hasElementTextures, hasTagElement, intersectionWithLine, isConforming, isShowingBackface, isShowingBoundaries, isShowingEdgeColors, isShowingEdgeLabels, isShowingEdges, isShowingElementBackColor, isShowingElementBackColors, isShowingElementColors, isShowingElementLabels, isShowingElementNormalArrow, isShowingElementNormals, isShowingElements, isShowingElementTextures, isShowingOutline, isShowingTaggedBoundaries, isShowingTaggedEdges, isShowingTaggedElements, makeAlternatingQuadrConn, makeCylinderConn, makeElementColorsFromXYZ, makeElementColorsFromZ, makeElementColorsFromZHue, makeElementNormals, makeNeighbour, makePatchConn, makeQuadrBnd, makeQuadrConn, makeQuadrElementTexture, makeQuadrVertexTexture, makeTriangleBnd, makeTriangleConn, makeVertexNormals, markBoundary, merge, paint, printEdgeList, refineGlobalIntoFour, reflect, removeBoundaries, removeElement, removeMarkedElements, removeMarkedVertices, removeUnusedVertices, setBoundary, setConforming, setDimOfColors, setDimOfElement, setDimOfElements, setDimOfVectors, setEdge, setEdgeColors, setEdges, setElement, setElement, setElement, setElement, setElementBackColor, setElementBackColors, setElementColor, setElementColors, setElementNormal, setElementNormals, setElements, setElementTexture, setElementTextures, setElementVertices, setGlobalBndColor, setGlobalBndSize, setGlobalBndTagColor, setGlobalEdgeColor, setGlobalEdgeSize, setGlobalEdgeTagColor, setGlobalElementBackColor, setGlobalElementColor, setGlobalElementNormalColor, setGlobalElementNormalLength, setGlobalElementNormalSize, setGlobalElementTagColor, setJvx, setMaxNumElements, setNeighbours, setNumEdges, setNumElements, setSavedElements, setSavedNumVertices, setTagElement, showBackface, showBoundaries, showEdgeColors, showEdgeLabels, showEdges, showElementBackColor, showElementBackColors, showElementColors, showElementLabels, showElementNormalArrow, showElementNormals, showElements, showElementTexture, showOutline, showTaggedBoundaries, showTaggedEdges, showTaggedElements, toString, triangulate |
| Methods inherited from class jv.geom.PgPointSet |
addVectorField, addVertex, assureVertexColors, assureVertexNormals, assureVertexTextures, clearTagVertex, getBounds, getCenterOfBndBox, getCenterOfGravity, getDimOfColors, getDimOfTextures, getDimOfVectors, getGlobalVectorColor, getGlobalVectorLength, getGlobalVectorSize, getGlobalVertexColor, getGlobalVertexNormalColor, getGlobalVertexNormalLength, getGlobalVertexNormalSize, getGlobalVertexSize, getGlobalVertexTagColor, getIndexOfVectorField, getMaxNumVertices, getNumVectorFields, getNumVertices, getTexture, getTextureImage, getTextureImageName, getVectorField, getVectorField, getVectorField, getVertex, getVertexColor, getVertexColors, getVertexNormal, getVertexNormals, getVertexTextures, getVertices, hasTagVertex, hasVertex, hasVertex, hasVertexColors, hasVertexNormals, hasVertexTextures, isDefaultLabelEnabled, isShowingIndices, isShowingTaggedVertices, isShowingVectorArrow, isShowingVectorColors, isShowingVectorField, isShowingVertexColors, isShowingVertexLabels, isShowingVertexNormalArrow, isShowingVertexNormals, isShowingVertexTexture, isShowingVertices, makeColorFromVectorLength, makeVertexColorsFromXYZ, makeVertexColorsFromZ, makeVertexColorsFromZHue, makeVertexTextureFromBndBox, projectToSphere, removeAllVectorFields, removeVectorField, removeVertex, scale, scale, setCenterOfBndBox, setDefaultLabelEnabled, setDimOfTextures, setGlobalVectorColor, setGlobalVectorLength, setGlobalVectorSize, setGlobalVertexColor, setGlobalVertexNormalColor, setGlobalVertexNormalLength, setGlobalVertexNormalSize, setGlobalVertexSize, setGlobalVertexTagColor, setMaxNumVertices, setNumVertices, setTagVertex, setTexture, setTextureImage, setTextureImageName, setTransparency, setVertex, setVertex, setVertex, setVertex, setVertexColor, setVertexColors, setVertexNormal, setVertexNormals, setVertexTextures, setVertices, showIndices, showTaggedVertices, showVectorArrow, showVectorColors, showVectorField, showVertexColors, showVertexLabels, showVertexNormalArrow, showVertexNormals, showVertexTexture, showVertices, translate |
| Methods inherited from class jv.project.PgGeometry |
addDisplay, addPolygon, clearTagPolygon, fillMethodMenu, getAmbientProjection, getAmbientSpace, getAuthorInfo, getAuthors, getCenter, getCenterOfElement, getControlPanel, getDiameter, getDimOfSimplex, getDimOfVertices, getDisplays, getGeometryInfo, getLabelAttribute, getMaterialPanel, getModelMatrix, getPolygon, getTitle, getVersion, getVersionType, hasDisplay, hasModelMatrix, hasTagPolygon, isConfigurable, isShowingBndBox, isShowingCenter, isShowingTitle, isVisible, removeDisplay, removePolygon, setAmbientProjection, setAmbientSpace, setAuthorInfo, setAuthors, setCenter, setDimOfSimplex, setGeometryInfo, setLabelAttribute, setLabelAttribute, setModelMatrix, setPolygon, setTagPolygon, setTitle, setVersion, setVersionType, setVisible, showBndBox, showCenter, showTitle |
| Methods inherited from class jv.object.PsObject |
addInspector, addUpdateListener, clearTag, clone, clone, copy, getFather, getInfoPanel, getInspector, getName, getNumObjects, hasInspector, hasTag, hasUpdateListener, instanceOf, instanceOf, removeInspector, removeUpdateListener, setName, setParent, setTag, updatePanels |
| Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
m_bAlternate
protected boolean m_bAlternate
- Flag to switch between regular, triangulated mesh, and a mesh
whose vertical edges are zig-zag.
m_bTrueInterpolant
protected boolean m_bTrueInterpolant
- If
true then the catenoid parameters are chosen such that
the discrete catenoid interpolates the smooth catenoid.
m_bFixedHeight
protected boolean m_bFixedHeight
- Fix the distance between both horizontal catenoid rings on top and bottom.
If height is fixed and the profile discretization modified then the
distance between two successive rings measured by m_delta is adjusted.
If flag is
false then incrementing the profile discretization
leads to a taller catenoid.
m_bSymmetric
protected boolean m_bSymmetric
- Ensure that catenoid is symmetric with respect to horizontal plane.
If
true then the variable height of the bottom ring
is automatically adjusted, and its slider is disabled.
m_height
protected double m_height
m_bClosed
protected boolean m_bClosed
- Close interior boundary of catenoid.
m_delta
protected PuDouble m_delta
- Distance between two successive rings of the catenoid,
constant for discrete catenoids.
m_bottomHeight
protected PuDouble m_bottomHeight
- Vertical offset of lower ring for unsymmetric catenoid.
m_radius
protected PuDouble m_radius
- Radius of Catenoid Waist. For discrete catenoids the radius is
defined as the zero value of the corresponding cosh curve.
m_k
protected PuInteger m_k
- Dihedral symmetry of catenoid, number of meridians.
m_n
protected PuInteger m_n
- Number of rings of catenoid.
PgCatenoid
public PgCatenoid()
- Construct an empty discrete catenoid which is a critical value of the
discrete are functional.
init
public void init()
- Description copied from class:
PgElementSet
- Initialize and reset instance variables after call to super.init().
- Overrides:
init in class PgElementSet
getDelta
public double getDelta()
setDelta
public void setDelta(double delta)
getRadius
public double getRadius()
setRadius
public void setRadius(double radius)
getWaistDiscr
public int getWaistDiscr()
setWaistDiscr
public void setWaistDiscr(int k)
getProfileDiscr
public int getProfileDiscr()
setProfileDiscr
public void setProfileDiscr(int n)
updateHeight
protected void updateHeight()
optimalInterpolant
public void optimalInterpolant()
- For a given waist discretization and given height compute the sub-optimal
profile discretization such that discrete profile lies close to cosh(z)
while keeping a constant height.
It is possible to choose height-delta such that discrete curve interpolates
exact cosh(z). But since we are interested in having a constant height
when experimenting with eigenfunctions and letting discretization go to zero,
we modify the value preDelta, which leads to cosh(z), to delta such that
constant height is ensured.
- See Also:
trueInterpolant()
trueInterpolant
public void trueInterpolant()
- For a given waist discretization and given height compute the optimal
profile discretization such that discrete profile interpolates cosh(z).
- See Also:
optimalInterpolant()
update
public boolean update(java.lang.Object event)
- Update the class whenever a child has changed.
Method is usually invoked from the children.
- Overrides:
update in class PgElementSet
- Following copied from interface:
jv.object.PsUpdateIf
- Parameters:
event - carries a lot of information- Returns:
- true if event has been handled, otherwise false
- See Also:
PsObject,
PsUpdateIf.getFather(),
PsUpdateIf.setParent(PsUpdateIf)
computeSurface
public void computeSurface(int n_profile,
int k_waist)
computeSurface
protected void computeSurface()
The software JavaView® is copyright protected. All Rights Reserved.