102 |
|
|
103 |
DoubleHashedMatrix& A = dynamic_cast<DoubleHashedMatrix&>(__A); |
DoubleHashedMatrix& A = dynamic_cast<DoubleHashedMatrix&>(__A); |
104 |
|
|
105 |
for(typename MeshType::const_iterator icell=__mesh.begin(); |
for(typename MeshType::const_iterator icell(__mesh); |
106 |
icell != __mesh.end(); ++icell) { |
not(icell.end()); ++icell) { |
107 |
const ElementsGeometry& K = *icell; |
const ElementsGeometry& K = *icell; |
108 |
|
|
109 |
size_t indices[FiniteElement::NumberOfDOF]; |
size_t indices[FiniteElement::NumberOfDOF]; |
168 |
Vector<real_t>& z = dynamic_cast<Vector<real_t>&>(Z); |
Vector<real_t>& z = dynamic_cast<Vector<real_t>&>(Z); |
169 |
z=0; |
z=0; |
170 |
|
|
171 |
for(typename MeshType::const_iterator icell=__mesh.begin(); |
for(typename MeshType::const_iterator icell(__mesh); |
172 |
icell != __mesh.end(); ++icell) { |
not(icell.end()); ++icell) { |
173 |
const ElementsGeometry& K = *icell; |
const ElementsGeometry& K = *icell; |
174 |
|
|
175 |
ConformTransformation T(K); |
ConformTransformation T(K); |
217 |
Vector<real_t>& z = dynamic_cast<Vector<real_t>&>(Z); |
Vector<real_t>& z = dynamic_cast<Vector<real_t>&>(Z); |
218 |
z=0; |
z=0; |
219 |
|
|
220 |
for(typename MeshType::const_iterator icell = __mesh.begin(); |
for(typename MeshType::const_iterator icell(__mesh); |
221 |
icell != __mesh.end(); ++icell) { |
not(icell.end()); ++icell) { |
222 |
const ElementsGeometry& K = *icell; |
const ElementsGeometry& K = *icell; |
223 |
|
|
224 |
ConformTransformation T(K); |
ConformTransformation T(K); |
270 |
const PDESystem& pdeSystem |
const PDESystem& pdeSystem |
271 |
= static_cast<const PDESystem&>(problem()); |
= static_cast<const PDESystem&>(problem()); |
272 |
|
|
273 |
for(typename MeshType::const_iterator icell = __mesh.begin(); |
for(typename MeshType::const_iterator icell(__mesh); |
274 |
icell != __mesh.end(); ++icell) { |
not(icell.end()); ++icell) { |
275 |
|
|
276 |
const ElementsGeometry& K = *icell; |
const ElementsGeometry& K = *icell; |
277 |
eVect = 0; |
eVect = 0; |
399 |
|
|
400 |
DoubleHashedMatrix& A = dynamic_cast<DoubleHashedMatrix&>(__A); |
DoubleHashedMatrix& A = dynamic_cast<DoubleHashedMatrix&>(__A); |
401 |
|
|
402 |
ConformTransformation T0(*(__mesh.begin())); |
MeshType::iterator icell0(__mesh); |
403 |
|
ConformTransformation T0(*icell0); |
404 |
JacobianTransformation J(T0); |
JacobianTransformation J(T0); |
405 |
generatesElementaryMatrix(__eSet,J); |
generatesElementaryMatrix(__eSet,J); |
406 |
|
|
407 |
for(MeshType::const_iterator icell = __mesh.begin(); |
for(MeshType::const_iterator icell(__mesh); |
408 |
icell != __mesh.end(); ++icell) { |
not(icell.end()); ++icell) { |
409 |
const ElementsGeometry& K = *icell; |
const ElementsGeometry& K = *icell; |
410 |
ConformTransformation T(K); |
ConformTransformation T(K); |
411 |
TinyVector<3> massCenter; |
TinyVector<3> massCenter; |
467 |
|
|
468 |
Vector<real_t>& z = dynamic_cast<Vector<real_t>&>(Z); |
Vector<real_t>& z = dynamic_cast<Vector<real_t>&>(Z); |
469 |
z=0; |
z=0; |
470 |
|
MeshType::const_iterator icell(__mesh); |
471 |
ConformTransformation T0(*(__mesh.begin())); |
ConformTransformation T0(*icell); |
472 |
JacobianTransformation J(T0); |
JacobianTransformation J(T0); |
473 |
generatesElementaryMatrix(__eSet,J); |
generatesElementaryMatrix(__eSet,J); |
474 |
|
|
475 |
for(MeshType::const_iterator icell=__mesh.begin(); |
for(MeshType::const_iterator icell(__mesh); |
476 |
icell != __mesh.end(); ++icell) { |
not(icell.end()); ++icell) { |
477 |
const ElementsGeometry& K = *icell; |
const ElementsGeometry& K = *icell; |
478 |
ConformTransformation T(K); |
ConformTransformation T(K); |
479 |
|
|
515 |
{ |
{ |
516 |
Vector<real_t>& z = dynamic_cast<Vector<real_t>&>(Z); |
Vector<real_t>& z = dynamic_cast<Vector<real_t>&>(Z); |
517 |
z=0; |
z=0; |
518 |
ConformTransformation T0(*(__mesh.begin())); |
MeshType::const_iterator icell0(__mesh); |
519 |
|
ConformTransformation T0(*icell0); |
520 |
JacobianTransformation J(T0); |
JacobianTransformation J(T0); |
521 |
generatesElementaryMatrix(__eSet,J); |
generatesElementaryMatrix(__eSet,J); |
522 |
|
|
523 |
for(MeshType::const_iterator icell=__mesh.begin(); |
for(MeshType::const_iterator icell(__mesh); |
524 |
icell != __mesh.end(); ++icell) { |
not(icell.end()); ++icell) { |
525 |
const ElementsGeometry& K = *icell; |
const ElementsGeometry& K = *icell; |
526 |
ConformTransformation T(K); |
ConformTransformation T(K); |
527 |
|
|
568 |
const PDESystem& pdeSystem |
const PDESystem& pdeSystem |
569 |
= static_cast<const PDESystem&>(problem()); |
= static_cast<const PDESystem&>(problem()); |
570 |
|
|
571 |
for(MeshType::const_iterator icell=__mesh.begin(); |
for(MeshType::const_iterator icell(__mesh); |
572 |
icell != __mesh.end(); ++icell) { |
not(icell.end()); ++icell) { |
573 |
const ElementsGeometry& K = *icell; |
const ElementsGeometry& K = *icell; |
574 |
eVect = 0; |
eVect = 0; |
575 |
ConformTransformation T(K); |
ConformTransformation T(K); |
615 |
const UserFunction& F = fv.f(); |
const UserFunction& F = fv.f(); |
616 |
const size_t testFunctionNumber = fv.testFunctionNumber(); |
const size_t testFunctionNumber = fv.testFunctionNumber(); |
617 |
|
|
618 |
for(MeshType::const_iterator icell=__mesh.begin(); |
for(MeshType::const_iterator icell(__mesh); |
619 |
icell != __mesh.end(); ++icell) { |
not(icell.end()); ++icell) { |
620 |
const ElementsGeometry& K = *icell; |
const ElementsGeometry& K = *icell; |
621 |
eVect = 0; |
eVect = 0; |
622 |
ConformTransformation T(K); |
ConformTransformation T(K); |
656 |
|
|
657 |
const size_t testFunctionNumber = fv.testFunctionNumber(); |
const size_t testFunctionNumber = fv.testFunctionNumber(); |
658 |
|
|
659 |
ConformTransformation T0(*(__mesh.begin())); |
MeshType::const_iterator icell0(__mesh); |
660 |
JacobianTransformation J(T0); |
ConformTransformation T0(*icell0); |
661 |
|
JacobianTransformation J(T0); |
662 |
TinyMatrix<FiniteElement::NumberOfDOF, |
|
663 |
FiniteElement::NumberOfDOF, |
TinyMatrix<FiniteElement::NumberOfDOF, |
664 |
TinyVector<3> > eGradV; |
FiniteElement::NumberOfDOF, |
665 |
|
TinyVector<3> > eGradV; |
666 |
|
|
667 |
// Filling the GradV vector |
// Filling the GradV vector |
668 |
//! \warning this uses the fact that mesh is *cartesian* |
//! \warning this uses the fact that mesh is *cartesian* |
677 |
} |
} |
678 |
} |
} |
679 |
|
|
680 |
for(MeshType::const_iterator icell=__mesh.begin(); |
for(MeshType::const_iterator icell(__mesh); |
681 |
icell != __mesh.end(); ++icell) { |
not(icell.end()); ++icell) { |
682 |
const ElementsGeometry& K = *icell; |
const ElementsGeometry& K = *icell; |
683 |
|
|
684 |
TinyVector<FiniteElement::NumberOfDOF,int> index; |
TinyVector<FiniteElement::NumberOfDOF,int> index; |
725 |
const Structured3DMesh& M2 |
const Structured3DMesh& M2 |
726 |
= dynamic_cast<const Structured3DMesh&>(m2); |
= dynamic_cast<const Structured3DMesh&>(m2); |
727 |
|
|
728 |
for(Structured3DMesh::const_iterator icell=M2.begin(); |
for(Structured3DMesh::const_iterator icell(M2); |
729 |
icell != M2.end(); ++icell) { |
not(icell.end()); ++icell) { |
730 |
const ElementsGeometry& K2 = *icell; |
const ElementsGeometry& K2 = *icell; |
731 |
|
|
732 |
TinyVector<FiniteElement::NumberOfDOF,int> index; |
TinyVector<FiniteElement::NumberOfDOF,int> index; |
811 |
gValues[i] = G(__mesh.vertex(i)); |
gValues[i] = G(__mesh.vertex(i)); |
812 |
} |
} |
813 |
|
|
814 |
ConformTransformation T0(*(__mesh.begin())); |
MeshType::const_iterator icell0(__mesh); |
815 |
|
ConformTransformation T0(*icell0); |
816 |
JacobianTransformation J(T0); |
JacobianTransformation J(T0); |
817 |
|
|
818 |
ElementaryMatrixType edxUV = 0; |
ElementaryMatrixType edxUV = 0; |
819 |
generatesElementaryMatrix(PDEOperator::firstorderop, |
generatesElementaryMatrix(PDEOperator::firstorderop, |
820 |
J, edxUV, fv.number()); |
J, edxUV, fv.number()); |
821 |
|
|
822 |
for(MeshType::const_iterator icell=__mesh.begin(); |
for(MeshType::const_iterator icell(__mesh); |
823 |
icell != __mesh.end(); ++icell) { |
not(icell.end()); ++icell) { |
824 |
const ElementsGeometry& K = *icell; |
const ElementsGeometry& K = *icell; |
825 |
|
|
826 |
TinyVector<FiniteElement::NumberOfDOF, int> index; |
TinyVector<FiniteElement::NumberOfDOF, int> index; |