dolfin team mailing list archive
-
dolfin team
-
Mailing list archive
-
Message #01549
Add support for picking sub functions and components of functions. [...]
Commit from logg (2005-11-30 23:20 CET)
----------------
Add support for picking sub functions and components of functions.
Functions can now be indexed to obtain sub functions of functions defined
by a mixed element or components of vector-valued functions.
This means that for a Function w defined by a 3D Taylor-hood element with
(3 + 1) components representing velocity u and pressure p, the following
operations are now supported:
w = Function(...)
u = w[0]; // first sub function of w = (u, p)
p = w[1]; // second sub function of w = (u, p)
u0 = u[0]; // first component of u
u1 = u[1]; // second component of u
u2 = u[2]; // third component of u
This means that it is now possible to for example save individual sub components
to separate files or otherwise work on them separately.
The new implementation has passed some preliminary tests, but more testing
is needed so please try out the new functionality and report any problems.
We should make a new release when we have done some more testing.
dolfin ChangeLog 1.252
dolfin scripts/compileforms 1.11
dolfin src/demo/fem/convergence/Poisson2D_1.h 1.6
dolfin src/demo/fem/convergence/Poisson2D_2.h 1.6
dolfin src/demo/fem/convergence/Poisson2D_3.h 1.6
dolfin src/demo/fem/convergence/Poisson2D_4.h 1.6
dolfin src/demo/fem/convergence/Poisson2D_5.h 1.6
dolfin src/demo/fem/convergence/Poisson3D_1.h 1.6
dolfin src/demo/fem/convergence/Poisson3D_2.h 1.6
dolfin src/demo/fem/convergence/Poisson3D_3.h 1.6
dolfin src/demo/fem/convergence/Poisson3D_4.h 1.7
dolfin src/demo/fem/convergence/Poisson3D_5.h 1.7
dolfin src/demo/nls/Poisson.h 1.3
dolfin src/demo/nls/PoissonNl.h 1.3
dolfin src/demo/poisson/Poisson.h 1.9
dolfin src/demo/solvers/stokes/plotsolution.m 1.3
dolfin src/kernel/fem/FEM.cpp 1.42
dolfin src/kernel/fem/Makefile.am 1.27
dolfin src/kernel/fem/Makefile.in 1.140
dolfin src/kernel/fem/dolfin/FiniteElement.h 1.22
dolfin src/kernel/fem/dolfin/Makefile.am 1.22
dolfin src/kernel/fem/dolfin/Makefile.in 1.139
dolfin src/kernel/fem/dolfin/MassMatrix2D.h 1.6
dolfin src/kernel/fem/dolfin/MassMatrix3D.h 1.6
dolfin src/kernel/fem/dolfin/P1Tet.h 1.5
+ dolfin src/kernel/fem/dolfin/P1TetTemplate.h 1.1
dolfin src/kernel/fem/dolfin/P1Tri.h 1.5
+ dolfin src/kernel/fem/dolfin/P1TriTemplate.h 1.1
dolfin src/kernel/fem/dolfin/StiffnessMatrix2D.h 1.7
dolfin src/kernel/fem/dolfin/StiffnessMatrix3D.h 1.7
dolfin src/kernel/function/DiscreteFunction.cpp 1.3
dolfin src/kernel/function/Function.cpp 1.28
dolfin src/kernel/function/FunctionPointerFunction.cpp 1.3
dolfin src/kernel/function/Makefile.in 1.102
dolfin src/kernel/function/UserFunction.cpp 1.3
dolfin src/kernel/function/dolfin/DiscreteFunction.h 1.3
dolfin src/kernel/function/dolfin/FunctionPointerFunction.h 1.3
dolfin src/kernel/function/dolfin/GenericFunction.h 1.8
dolfin src/kernel/function/dolfin/Makefile.in 1.102
dolfin src/kernel/function/dolfin/UserFunction.h 1.3
dolfin src/kernel/nls/Makefile.in 1.14
dolfin src/kernel/nls/dolfin/Makefile.in 1.14
dolfin src/kernel/settings/Makefile.in 1.114
dolfin src/kernel/settings/dolfin/Makefile.in 1.114
dolfin src/modules/convdiff/dolfin/ConvectionDiffusion.h 1.20
dolfin src/modules/elasticity/dolfin/Elasticity.h 1.22
dolfin src/modules/elasticity/dolfin/ElasticityMass.h 1.15
dolfin src/modules/elasticity-updated/dolfin/ElasticityUpdated.h 1.15
dolfin src/modules/elasticity-updated/dolfin/ElasticityUpdatedMass.h 1.10
dolfin src/modules/elasticity-updated/dolfin/ElasticityUpdatedSigma.h 1.14
dolfin src/modules/heat/dolfin/Heat.h 1.4
dolfin src/modules/navierstokes/dolfin/NSEContinuity.h 1.10
dolfin src/modules/navierstokes/dolfin/NSEMomentum.h 1.10
dolfin src/modules/poisson/dolfin/Poisson.h 1.22
dolfin src/modules/stokes/StokesSolver.cpp 1.3
dolfin src/modules/stokes/dolfin/Stokes.h 1.4
Follow ups