History log of /petsc/src/dm/impls/plex/plexrefine.c (Results 276 – 300 of 477)
Revision Date Author Comments
# 1575c14d 11-Aug-2015 Barry Smith <bsmith@mcs.anl.gov>

Replaced PetscViewerASCIISynchronizedAllow() with PetscViewerASCIIPushSynchronized() PetscViewerASCIIPopSynchronized()


# 219ef7ec 10-Aug-2015 Toby Isaac <tisaac@ices.utexas.edu>

Merge branch 'tisaac/dmplex-stable-tet-refinement'

The previous tet refinement strategy was not stable: element shape
quality deteriorated with repeated refinement. This branch fixes that.

* tisaa

Merge branch 'tisaac/dmplex-stable-tet-refinement'

The previous tet refinement strategy was not stable: element shape
quality deteriorated with repeated refinement. This branch fixes that.

* tisaac/dmplex-stable-tet-refinement:
plex: added tet shape regression test
plexrefine: remove replaced code
plex: update test output for new tet refinement order
plex: fix tet refinement for stable element shape
DMPlex: added test of shape quality to ex1

show more ...


# 6ec35a92 07-Aug-2015 Toby Isaac <tisaac@ices.utexas.edu>

plexrefine: remove replaced code


# 3fe31fa2 07-Aug-2015 Toby Isaac <tisaac@ices.utexas.edu>

plex: fix tet refinement for stable element shape

Each refined tetrahedron defines a change of bases that maps the corners
of the parent to the corners of the child. If we rescale this transform
so

plex: fix tet refinement for stable element shape

Each refined tetrahedron defines a change of bases that maps the corners
of the parent to the corners of the child. If we rescale this transform
so that the determinant is 1, we get a volume preserving distortion of
the parent tetrahedron.

One sufficient condition for stable tetrahedral refinement is for all of
these transforms to form a finite group: then each of the recursively
refined tets will fall into one of a fixed set of congruency classes.

A classic stable refinement pattern from Freudenthal [1] and Bey [2] is
used by HHG grids [3], which is good for producing refinement patterns
that match regular grids and only a few congruency classes. This
method, however, inverts the signed volume of some refined tetrahedra,
which we don't want in DMPlex. Sign reversal could be avoid, but we
would have to tag two different types of tetrahedra, which we also don't
want in DMPlex.

I did a brute force search for a transformation. Starting with the old,
unstable refinement pattern, I wrote a script that rotated the four
interior tetrahedra independently, reporting all the combinations that
formed a finite group. There turned out to be a few, so I selected the
one with the smallest group size (12, which is twice the size of the
group using Freudenthal-Bey refinement). I then somehow figured out how
to apply these rotations in the CellRefiner code.

As a result, testing shape regularity with plex ex1 now yields:

$ ./ex1 -dim 3 -interpolate -dm_refine_hierarchy 5 -test_shape
Mesh with 196608 cells, shape condition numbers: min = 3, max = 8.77496, mean = 5.27739, stddev = 1.26754
Mesh with 24576 cells, shape condition numbers: min = 3, max = 8.77496, mean = 5.28768, stddev = 1.2648
Mesh with 3072 cells, shape condition numbers: min = 3, max = 8.77496, mean = 5.28715, stddev = 1.26312
Mesh with 384 cells, shape condition numbers: min = 3, max = 8.77496, mean = 5.23795, stddev = 1.263
Mesh with 48 cells, shape condition numbers: min = 4, max = 8.77496, mean = 5.01933, stddev = 1.2307
Mesh with 6 cells, shape condition numbers: min = 4, max = 5.47723, mean = 4.2462, stddev = 0.550529

I am now a tetrahedron. Like the old Shaker hymn says, "'Tis a gift to
be simplicial."

[1] Freudenthal, H.: Simplizialzerlegungen von beschraenkter Flachheit.
Ann. Math. 43, 580-582 (1992).

[2] Bey, J.: Tetrahedral Grid Refinement. Computing 55, 355-378 (1995).

[3] Bergen, B., Gradl, T., Ruede, U., Huelsemann, F.: A massively
parallel multigrid method for finite elements

show more ...


# 82169f37 24-Jul-2015 Matthew G. Knepley <knepley@gmail.com>

Plex: Fixed function header


# b28003e6 20-Jul-2015 Matthew G. Knepley <knepley@gmail.com>

Plex: Using a refinement function


# e1b06f76 20-May-2015 Matthew G. Knepley <knepley@gmail.com>

Merge branch 'master' into knepley/solkx

* master: (6933 commits)
Bib: Added reference
Includegraph: Updated for compatibility with new folder layout.
Add SNESLineSearchReason to fortran inclu

Merge branch 'master' into knepley/solkx

* master: (6933 commits)
Bib: Added reference
Includegraph: Updated for compatibility with new folder layout.
Add SNESLineSearchReason to fortran includes Also truncate names to fit 32 char fortran limit
fix compile warnings /usr/home/balay/petsc.clone-2/src/vec/vec/interface/vector.c:1944: warning: division by zero in '1.0e+0 / 0.' /usr/home/balay/petsc.clone-2/src/ksp/ksp/interface/itfunc.c:508: warning: 'vec_rhs' may be used uninitialized in this function
updated output for new trust region initial size
initial size of the trust region is set as a percent of the norm of the initial guess, it should not be related to the initial norm of the function (which is kind of nuts).
The default bounds for SNESVISetVariableBounds() in the manual page were reversed from correct values
Bib: Added refs
Bib: Update MPICH webpage
Plex: Forgot to close file
removed nonexistent ex46f from makefile test rule
Revert "fixed bad merge into master"
fixed bad merge into master
fix memory leak in mkl_pardiso fix some formatting in mkl_pardiso code
mv runex111 from TESTEXAMPLES_C to TESTEXAMPLES_DATAFILESPATH
Mat+Doc: More Fortran docs
Plex ex3: Run tests with the correct number of field components
Bib: Added TetGen cite
parmetis: make sure 'ldd libparmetis.so' points to the correct libmetis.so that its linked with.
small fix as reported by the nightly test
...

Conflicts:
config/builder.py

show more ...


# fbbfd472 18-May-2015 Toby Isaac <tisaac@ices.utexas.edu>

Merge branch 'master' into tisaac/dmforest

directory layout changed again: merging to switching branches back and forth
doesn't cause reconfigure to have a hard time

* master: (357 commits)
remov

Merge branch 'master' into tisaac/dmforest

directory layout changed again: merging to switching branches back and forth
doesn't cause reconfigure to have a hard time

* master: (357 commits)
removed nonexistent ex46f from makefile test rule
Revert "fixed bad merge into master"
fixed bad merge into master
fix memory leak in mkl_pardiso fix some formatting in mkl_pardiso code
mv runex111 from TESTEXAMPLES_C to TESTEXAMPLES_DATAFILESPATH
Mat+Doc: More Fortran docs
Bib: Added TetGen cite
parmetis: make sure 'ldd libparmetis.so' points to the correct libmetis.so that its linked with.
small fix as reported by the nightly test
add a test for MatPtAP()
small cleanup; add tests
cleanup MatPtAPSymbolic_MPIAIJ_MPIAIJ()
Fix nonzerostate tracking in all MATMPI types.
update location of test matrices in faq.html file
unused variable still declared
Fix for MatLoad_MPIDense() from sparsely stored matrix also fix for MatLoad_MPIDense_DenseInFile() when matrix has not had its local sizes preset by user
Preserve the B nonzerostate during disassembly.
TSEvent: Fix arch-mswin nightly errors due to declaring variables in the middle of a function.
Fix error in parallel loading of dense format matrix
removed KSPSetNullSpace() since mat already carries that information and having two locations for it is confusing, unnecessary and prone to error added MatSetTransposeNullSpace() for providing the null space of the transpose of the matrix and added support in KSPSolve() to remove this null space from the right handside of the linear system thus making the system consistent.
...

show more ...


# c45870e7 04-May-2015 Matthew G. Knepley <knepley@gmail.com>

Merge branch 'master' into knepley/feature-composable-callbacks

* master: (151 commits)
PetscMalloc: Fix handling of zero-sized allocations
add note to DMGetLocal/GlobalVector() about intended s

Merge branch 'master' into knepley/feature-composable-callbacks

* master: (151 commits)
PetscMalloc: Fix handling of zero-sized allocations
add note to DMGetLocal/GlobalVector() about intended short-time usage of the vectors.
sf: use patched openmpi tarball that has a potential fix for sf example hang
SNES problems that set VI bounds must use a VI solver since the other solvers ignore the bounds
pounders viewer did not cast PetscReal to double in printf nor use %D instead of %d
fix ts ex20adj
fix ts theta
fixed another variable declaration in the middle of a code block
example main() had PetscInt return type and argument that should be int
DMDAVTKWriteAll_VTS: Fix handling of higher-dimension coordinates
fixed example that declared variables in the middle of a function
C programs do not return PetscInt nor do they take an argument that is PetscInt, fixed example that did
You cannot declare variables in the middle of functions in PETSc.
add ierr checking to PetscOptionsBegin/End() in example
configure: add error check if user specifies PETSC_ARCH=-dbg [i.e starts with a '-']
scale norm of vector difference by norm of vector to insure it is small enough to consider the two vectors equal
missing PetscViewerDestroy() added
MatNestGetISs: use custom fortranstub to handle PETSC_NULL_OBJECT
update location of open-mx website on FAQ page
If the user sets bounds and calls a solver that does not support them, throw an error.
...

show more ...


# af3d4eeb 16-Apr-2015 Fande Kong <fdkong.jd@gmail.com>

Merge branch 'pr192/Fande-Kong/scalable-matincreaseoverlap/master' of https://bitbucket.org/petsc/petsc


# f1c23e0e 15-Apr-2015 Fande Kong <fdkong.jd@gmail.com>

Merged petsc/petsc into master


# 4bc2dc4b 15-Apr-2015 Stefano Zampini <stefano.zampini@gmail.com>

Merge branch 'master' into stefano_zampini/pcbddc-adaptive-selection

Conflicts:
src/ksp/pc/impls/bddc/bddcprivate.c
src/ksp/pc/impls/bddc/bddcscalingbasic.c
src/mat/impls/aij/mpi/mumps/mumps.c
s

Merge branch 'master' into stefano_zampini/pcbddc-adaptive-selection

Conflicts:
src/ksp/pc/impls/bddc/bddcprivate.c
src/ksp/pc/impls/bddc/bddcscalingbasic.c
src/mat/impls/aij/mpi/mumps/mumps.c
src/mat/impls/is/matis.h

show more ...


# 305f5a7e 14-Apr-2015 semihozmen <semihozmen@gmail.com>

Merged master into semihozmen/ksp-fcg-eigen-comp-support


# f9185b66 13-Apr-2015 Barry Smith <bsmith@mcs.anl.gov>

Merge branch 'master' into pr192/Fande-Kong/scalable-matincreaseoverlap/master

Needed to merge master to update to new calling sequence PetscCommBuildTwoSided


# 66d7bb0d 12-Apr-2015 semihozmen <semihozmen@gmail.com>

Merged petsc/petsc into master


# 255664f4 12-Apr-2015 Barry Smith <bsmith@mcs.anl.gov>

Merge branch 'barry/fix-directory-layout'


# af0996ce 11-Apr-2015 Barry Smith <bsmith@mcs.anl.gov>

updated PETSc directory layout to match standard packaging strategies

include/petsc finclude,private,mpiuni
lib/petsc conf
bin/petsc*


# 5a4ab5ab 02-Apr-2015 Toby Isaac <tisaac@ices.utexas.edu>

Merge branch 'master' into tisaac/dmforest

If we're going to start developing on this again, the recent changes to the
location of configuration files will make it annoying to switch to and from
thi

Merge branch 'master' into tisaac/dmforest

If we're going to start developing on this again, the recent changes to the
location of configuration files will make it annoying to switch to and from
this branch. Matt's and my fixes in DMPlex will also be relevant.

* master: (1557 commits)
MatLoad_MPIDense() always allocated array space even if it was previously provided
Clarified lumping options for PCFieldSplitSchurPreType SELFP.
fixed up PetscInfo in GAMG
TSErrorWeightedNorm[2|Infinity]: API changes
MatLoad_SeqDense() always allocated new space for the data even if the user already provided it
Fixed DMCompositeGetAccessArray() to support readonly vectors
Fix obviously-wrong aspects of documentation on SNESVINEWTONRSLS and SNESVINEWTONSSLS.
fixed example to compile - demonstrates a bug
var name 'len' was F90 key word
For user provided Jacobian functions they should always assembly into the second matrix, the one from which the preconditioner is built because the first may be used as matrix-free with -snes_mf_operator
Suggest --with-64-bit-indices if users mistakenly use --with-64bit-indices
Fix configure logging of integer size.
missing underscore in #define of vecgetarrayread translation of fortran stub for VECGETARRAYREAD
updated test output files to reflect differences introduced previously in PCView output
-ksp_type preonly does not support -ksp_monitor_short so remove from test line to prevent extranious warning output
missing CHKERRQ; and ugly double declaration of ierr
Plex ex3: For want of a semicolon, the kingdom was lost
MatSetValuesMPISBAIJ will now print correct global indices when error generated due to new nonzero location
completed basic use of MatSetValuesBlocked_SeqBAIJ_Inlined() by MatSetValuesBlocked_MPIBAIJ() to allow proper global indices being printed when error generated by new nonzero locations.
Added inline version of MatSetValuesBlocked_SeqBAIJ() to be used by MatSetValuesBlocked_MPIBAIJ() to print error message for nonzero block with global indices
...

show more ...


# d9e4b6ef 23-Mar-2015 Matthew G. Knepley <knepley@gmail.com>

Merge branch 'knepley/feature-harmonic-advection'

* knepley/feature-harmonic-advection: (86 commits)
SNES: Some docs for NASM
TS: Added view for MIMEX
Plex: Silence compiler warnings
Builder

Merge branch 'knepley/feature-harmonic-advection'

* knepley/feature-harmonic-advection: (86 commits)
SNES: Some docs for NASM
TS: Added view for MIMEX
Plex: Silence compiler warnings
Builder: Check for missing numProcs was wrong
PetscFE: Turn off Fortran binding for PetscFECompositeGetMapping()
Plex: Fix big bug in DMPlexGetGlobalFieldOffset_Internal() - If offset is negative (dof is on another proc), then we must have end < start
Builder: Allow override of numProcs
Plex: Fix Fortran wrappers for DMLabelView() and DMPlexDistribute()
Plex+Label: Added Fortran wrapper for DMPlexCreateLabel()
Plex: Dammit, how did this not get checked in?
Plex: Refiner check for hybrid cells must use hybrid faces as well - Ghost cells in FV method are hybrid
TS: MIMEX now uses work vectors for correct grid
Plex: Adding support for FV in automatic interpolator construction - Notice that the injector cannot do the right thing until we scrap VecScatter
Plex+FEM: Using PetscFVGetDualSpace()
SNES+Doc: Added Options Database keys
PetscFV: Added PetscFVRefine() - This allows interpolation to finer grids needed for FAS
PetscFV: Added a dual space for calculating projections
DM: Better error checking in DMCoarsen()
DMDT+PetscFE: Added PetscQuadratureExpandComposite() - Replaces PetscFECompositeExpandQuadrature() - Added PetscFECompositeGetMapping()
Plex: Fixed complex type error
...

Conflicts:
src/dm/impls/plex/ftn-custom/makefile
src/ts/interface/ts.c

show more ...


# 0f9259d6 12-Mar-2015 Matthew G. Knepley <knepley@gmail.com>

Plex: Dammit, how did this not get checked in?


# 89b38ed4 11-Mar-2015 Matthew G. Knepley <knepley@gmail.com>

Plex: Refiner check for hybrid cells must use hybrid faces as well
- Ghost cells in FV method are hybrid


# 898446f9 11-Mar-2015 Shri Abhyankar <abhyshr@mcs.anl.gov>

Merge branch 'master' into shri/ts-is-for-differential-variables

Conflicts:
include/petsc-private/tsimpl.h
src/ts/impls/eimex/eimex.c
src/ts/interface/ts.c


# f2dee214 06-Mar-2015 Barry Smith <bsmith@mcs.anl.gov>

Merge branch 'master' into jed/chem
Note merging a branch with good stuff in it for a year and a half is insane!

Conflicts:
src/ts/examples/tutorials/makefile
src/ts/interface/ts.c


# 5dc8c3f7 26-Feb-2015 Matthew G. Knepley <knepley@gmail.com>

DM: Now also save the DMBoundaryType for each dimension
- Should get rid of this in DMDA eventually


# 4e7385fa 16-Feb-2015 Stefano Zampini <stefano.zampini@gmail.com>

Merge branch 'master' into stefano_zampini/pcbddc-adaptive-selection

Conflicts:
src/ksp/pc/impls/bddc/bddcprivate.c


1...<<11121314151617181920