Re: [deal.II] Re: Segmentation fault (core dumped) error

2016-05-20 Thread Martin Kronbichler
Hi Bruno, 2016-05-20 9:12 GMT-04:00 Ehsan : #2 0x75cb614b in dealii::SparsityPattern::reinit (this=this@entry=0x7fffb498, m=829992, n=829992, max_per_row=8032) at /deal_II/dealii-8.3.0/source/lac/sparsity_pattern.cc:251 It could be a memory

Re: [deal.II] Re: precomputation of mass matrix and stiffness matrix

2016-05-17 Thread Martin Kronbichler
Dear Marek, Let's first look at the two distribute_local_to_global calls: constraint_matrix_phase_constant.distribute_local_to_global(local_matrix, dof_indices, system_matrix_phase_constant); constraint_matrix_phase.distribute_local_to_global(local_matrix,

Re: [deal.II] Re: Memory usage using MPI/PETSc on single processor

2016-07-31 Thread Martin Kronbichler
Hi Pete, The difference may be that the NEW version uses a DynamicSparsityPattern while the OLD only guesses on the size with, dof_handler.max_couplings_between_dofs(). Apparently with 3d problems the function overestimates. Presently DynamicSparsityPattern is used in step-8, but, not in

Re: [deal.II] Re: Step-35 Poiseuille flow in a 3D pipe

2016-08-02 Thread Martin Kronbichler
Dear Jiaqi, Besides the literature suggested by Daniel, you should also read the paper J.L. Guermond, P. Minev, J. Shen, An overview of projection methods for incompressible flows, Comput Methods Appl Mech Engrg 195, 2006. Section 3.5 explains this question. As a more general remark to your

Re: [deal.II] Re: Problem building dealii with PETSc

2016-07-13 Thread Martin Kronbichler
Dear Pete, Let me just focus on two of your questions. The first one is related to the OpenMPI installation on Ubuntu 16.04 (and maybe other packages). You should not need more packages than what you list. However, it appears that the software shipped by Ubuntu is buggy. I can reproduce your

Re: [deal.II] Re: Problem building dealii with PETSc

2016-07-13 Thread Martin Kronbichler
Hi Pete, I'm glad that it works. You may include my comments, the first line is the output of 'uname -srv' regarding my system information FYI. Thanks! Best, Martin On 13.07.2016 17:04, Pete Griffin wrote: Thanks All! Martin, after I commented out the line "ADD_FLAGS(DEAL_II_LINKER_FLAGS

Re: [deal.II] Question concerning BlockSparsityPattern.copy_from() member function

2016-07-06 Thread Martin Kronbichler
Dear Dustin, With regard to a lot of tutorial programms I would say that this is the usual way to work with /DynamicSparsityPatterns/, isn't it? Yes, the description you give is exactly the way I would choose for the sparsity pattern. So back to the question. Running the program the copy

Re: [deal.II] Question concerning BlockSparsityPattern.copy_from() member function

2016-07-07 Thread Martin Kronbichler
Dear Dustin, How is your computational setup, i.e., how many nonzero entries do you have in your matrix? I'm not sure if I understand what you mean. Do you mean the number of nonzero entries in /SparseMatrix/ or in the /BlockSparsityPattern/ or in the dynamic one? How can I get this

Re: [deal.II] Exploding solution to advected pulse at the boundary

2016-06-29 Thread Martin Kronbichler
Dear Niek, This does indeed look strange. I cannot give an immediate answer unfortunately. It looks like the problem appears in a single element layer close to the boundary and does not seem to propagate into the domain. Can you confirm this? Since I would expect a wrong Neumann boundary

Re: [deal.II] Question concerning BlockSparsityPattern.copy_from() member function

2016-08-15 Thread Martin Kronbichler
Dear Dustin, I had a look at your program on my machine with the most recent development version of deal.II. Here is the final timer output in release mode: +-+++ | Total wallclock time elapsed since start| 1.02s |

Re: [deal.II] Segfault in EvaluatorTensorProduct::apply when AVX is enabled

2017-02-20 Thread Martin Kronbichler
Dear Stephen, The problem is data alignment: You create an std::vector that internally arranges its data under the assumption that the start address of FEEvaluation is divisible by 32 (the length of the vectorization). If you put an FEEvaluation object on the stack, the compiler will

Re: [deal.II] Segfault in EvaluatorTensorProduct::apply when AVX is enabled

2017-02-22 Thread Martin Kronbichler
ble>' cannot be assigned because its copy assignment operator > is implicitly deleted" error. > > How should I be making my AlignedVector? > > Thanks, > Steve > > > > On Monday, February 20, 2017 at 3:23:09 PM UTC-5, Martin Kronbichler > wrote: > >

Re: [deal.II] FE_TraceQ using GaussLobatto nodes

2016-09-08 Thread Martin Kronbichler
Dear Praveen, > > When I use FE_TraceQ and am setting initial condition with > VectorTools::interpolate, I get this error > > > > An error occurred in line <127> of file > > in function > > void dealii::VectorTools::interpolate(const

Re: [deal.II] Question concerning BlockSparsityPattern.copy_from() member function

2016-08-31 Thread Martin Kronbichler
Hi Dustin, Thanks for your file. This is indeed a bug in deal.II. Our algorithms for copying the sparsity pattern contain a part that scales quadratically in the number of rows in case most of the rows are empty, as is the case with some of your sparsity patterns. This is very bad if there

[deal.II] Re: C1 elements for 4th order derivatives

2016-10-06 Thread Martin Kronbichler
Dear Jinhyun, deal.II does not support C1-elements (at least not on general meshes and in 3D). However, the standard way of dealing with such problems is to rewrite the phase field equation as a system of two equations, each of which only has up to second derivatives. In terms of the phase

Re: [deal.II] VectorTools::integrate_difference function

2016-09-20 Thread Martin Kronbichler
s, but > > 6 were provided > > void integrate_difference (const Mapping<dim,spacedim>, > > * ^* > > */Users/jaekwangjk/Programs/dealii/include/deal.II/numerics/vector_tools.h:1953:8: > note: * > > candidate function template not viable: req

Re: [deal.II] CXX flags for SIMD and other optimization flags (GCC@6)

2016-09-15 Thread Martin Kronbichler
Hi Denis, > From the matrix-free tutorials 37 and 48, I see that the recommended > flags for VectorizedArrays with GCC are > > -DCMAKE_CXX_FLAGS="-march=native" > > How about using -O3, -ffast-math, -funroll-loops ? Any other > recommended flags for GCC? -march=native gives you AVX vectorization

[deal.II] Re: Can we say that the higher order method, the more accurate?

2016-09-19 Thread Martin Kronbichler
Dear Jaekwank, In addition to what Daniel and Wolfgang said: One does definitely benefit from going to higher degrees and deal.II is able to handle this (the accurate boundary representation by a mapping is one thing that is easily forgotten). In a recent preprint, we considered the flow

Re: [deal.II] Re: Can we say that the higher order method, the more accurate?

2016-09-20 Thread Martin Kronbichler
Dear Jaekwang, if you are using the most recent developer version, you should automatically get the Gauss-Lobatto version of the node distribution. We made those point distributions the default for FE_Q(degree) this spring. Regarding the limits of quadrature formulas: Depending on what exactly

Re: [deal.II] VectorTools::integrate_difference function

2016-09-20 Thread Martin Kronbichler
Jaekwang, can you post the full error message? To me the call looks reasonable (this is a copy from step-7) and the function definition looks good as well. Ah, and in case you want to use this in the context of your other question regarding high order methods: Put a "mapping" as first argument

Re: [deal.II] FE_TraceQ using GaussLobatto nodes

2016-09-06 Thread Martin Kronbichler
Dear Praveen, > The documentation says that GaussLobatto node-based FE_TraceQ will be > implemented in future. Is there any estimate on when this will be > available ? The documentation is outdated. Indeed, FE_TraceQ is based on the nodes of the Gauss-Lobatto quadrature formula. See the code in

Re: [deal.II] Gauss-Lobatto node distribution on FESYSTEM?

2016-09-27 Thread Martin Kronbichler
Dear Jaekwang, > *FESystemfe; * > > > and constructor mentions taylor hood space as follow > > > StokesProblem::StokesProblem (constunsignedintdegree) > > : > > degree (degree), > >*fe (FE_Q(degree+**1), dim,* > > *FE_Q(degree), 1),* > You would write fe

Re: [deal.II] Finite Difference with deal.ii and Parallel Distributed Triangulation

2016-09-28 Thread Martin Kronbichler
Dear Rajat, You could do finite differences using the p4est wrapper in deal.II in principle, but it would probably not be very efficient. You want to know the indices which are not available in our wrapper at least, not sure about p4est. To get them, I would build a DoFHandler based on some

Re: [deal.II] a few questions about matrix-free

2016-09-30 Thread Martin Kronbichler
Hi Denis, I will put the description in the header of the file. PR underway. The best documentation gets written when explaining things to others. :-) > actually it’s not about components, it is about values at quadrature > points for a vector of solution. > Say I have two vectors representing

Re: [deal.II] a few questions about matrix-free

2016-09-30 Thread Martin Kronbichler
On 09/30/2016 05:08 PM, Denis Davydov wrote: > Hi Martin, > >> On 30 Sep 2016, at 16:49, Martin Kronbichler >> <kronbichler.mar...@gmail.com <mailto:kronbichler.mar...@gmail.com>> >> wrote: >> >> There are two possibilities for doing things. One

Re: [deal.II] Alternative to local_range

2016-10-23 Thread Martin Kronbichler
Dear Praveen, you can call IndexSet::nth_index_in_range(0) (in case IndexSet::n_elements() > 0) to get the first entry in the index set. Best, Martin On 23.10.2016 07:38, Praveen C wrote: I have an IndexSet of locally_owned_dofs and I want to know the starting index. praveen On Sun, Oct

Re: [deal.II] Interpolating p::d::Vector

2016-11-23 Thread Martin Kronbichler
Dear Praveen, Called compress(VectorOperation::insert), but the element received from a remote processor, value 3.343515457745695e-15, does not match with the value -3.343515457745695e-15 on the owner processor 0 I dont understand why this error is triggered. The error says that two

Re: [deal.II] LA::distributed::Vector initialized with MatrixFree and Kelly estimator

2016-11-22 Thread Martin Kronbichler
Hi Denis, I wonder what is the best workaround given the fact that i have quite a number of such vectors? You only see this for KellyErrorEstimator, right? Given that the error estimation is much more expensive than the operator evaluation anyway, I would suggest you do the copy exactly the

Re: [deal.II] Re: LA::distributed::Vector initialized with MatrixFree and Kelly estimator

2016-11-22 Thread Martin Kronbichler
Wouldn't it be easier to just create a copy of the vector by ghosted_vector.reinit(locally_owned_set, locally_relevant_set, comm); ghosted_vector = solution; ghosted_vector.update_ghost_values(); not in my case, because i have a lot of vectors and if I can avoid, i would prefer not to

Re: [deal.II] Re: LA::distributed::Vector initialized with MatrixFree and Kelly estimator

2016-11-22 Thread Martin Kronbichler
Hi Denis, Wouldn't it be easier to just create a copy of the vector by ghosted_vector.reinit(locally_owned_set, locally_relevant_set, comm); ghosted_vector = solution; ghosted_vector.update_ghost_values(); The reason why there is a VectorView in the MatrixFreeOperators::Base class is that I

Re: [deal.II] trouble running new step-55

2016-10-17 Thread Martin Kronbichler
Dear Franck, I justed checked on my machine and it works both on an installation that only provides Trilinos and on an installation that has both (and where PETSc is selected). It looks like your installation is 8.4.0 whereas I think that step-55 requires the current developer version

Re: [deal.II] Find dofs supported on each face and quadrature point

2017-01-12 Thread Martin Kronbichler
Dear Praveen, No, we do not have information about these properties available in the library and it cannot be easily introduced either. The reason is that the particular "spectral" evaluation of polynomials with roots in the quadrature points depends on the interaction of the finite element

Re: [deal.II] Re: Workstream, number threads

2016-12-29 Thread Martin Kronbichler
Hi Praveen, Do you happen to use a BLAS that uses threading? I recommend switching to non-threaded BLAS (or "export OMP_NUM_THREADS=1"). deal.II applies threading on a higher level and a threaded BLAS is counter-productive in 98% of cases. Best, Martin On 29.12.2016 11:30, Praveen C

Re: [deal.II] Re: Internal instability of the GMRES Solver / Trilinos

2017-03-16 Thread Martin Kronbichler
lp you? > > Thank you a lot for your support! This had been driving me crazy :) > > Best, > Pascal > > Am Donnerstag, 16. März 2017 08:58:53 UTC+1 schrieb Martin Kronbichler: > > Dear Pascal, > > You are right, in your case one needs to call > &

Re: [deal.II] Re: Internal instability of the GMRES Solver / Trilinos

2017-03-15 Thread Martin Kronbichler
Dear Pascal, This problem seems related to a problem we recently worked around in https://github.com/dealii/dealii/pull/4043 Can you check what happens if you call GrowingVectorMemory::release_unused_memory() between your optimization steps? If a communicator gets stack in those places it

Re: [deal.II] Re: CMake extra libraries?

2017-07-07 Thread Martin Kronbichler
This code triggers a safety mechanism that I introduced recently (April 26). We also see this on one of the test machines: https://cdash.kyomu.43-1.org/viewBuildError.php?buildid=8758 but I previously thought this is only due to a leftover in the configuration and I did not see it in real life

Re: [deal.II] segmentation fault when calling make_vectorized_array

2017-07-13 Thread Martin Kronbichler
Hi Denis, no, it's just a member variable VectorizedArray: VectorizedArray a; But then the class/struct that holds this member variable is not properly aligned, you probably have it inside an std::vector or allocated it with 'new'. You will need to put it into an AlignedVector or

Re: [deal.II] segmentation fault when calling make_vectorized_array

2017-07-12 Thread Martin Kronbichler
Hi Denis, what is a? Is it an element of an array? If yes, is the array of type AlignedVector (or derived from that). You get this kind of error when there is a load or store to an address that is not aligned by the size of the vectorized array, 32 bytes in your case. The data types

Re: [deal.II] segmentation fault when calling make_vectorized_array

2017-07-13 Thread Martin Kronbichler
Hi Denis, > While on the topic of alignment, do I need to be more careful about using > > template > structQPData > { >Table<2, VectorizedArray > values; > } > QPData qp_data; > > as a member variable in my class? Table is fine because it is based on AlignedVector, so it

Re: [deal.II] Refining a hyper_ball with a spherical_manifold produces nan values

2017-04-25 Thread Martin Kronbichler
Dear Alex, you cannot set a SphericalManifold for the innermost part of a hyper_ball because the transformation degenerates for radius=0. You need to restrict the manifold to only the boundary or only the outer part of the hyper_ball. Best, Martin P.S. for future reference, if I have an

Re: [deal.II] Re: Can we say that the higher order method, the more accurate?

2017-08-09 Thread Martin Kronbichler
Dear Howe, How did you run your simulation? From your picture, it appears that a higher order method is worse at higher degrees than a lower order method, which does not match with my experience. If that were the case, nobody would use high orders. However, you need to bring many pieces in

Re: [deal.II] Re: Can we say that the higher order method, the more accurate?

2017-08-09 Thread Martin Kronbichler
8js/WYrCbyok9mI/BSc/rfs-1D1TA8c71IQZpOEyOoU3C1idNr1DQCLcBGAs/s1600/Image.png> Best, Howe 在 2017年8月9日星期三 UTC+8下午3:25:20,Martin Kronbichler写道: Dear Howe, How did you run your simulation? From your picture, it appears that a higher order method is worse at higher degrees than a lower

Re: [deal.II] Re: Compilation fail with dealii 8.5.0 from Docker

2017-05-11 Thread Martin Kronbichler
sc-3.7.4 > > PETSC_DIR=/home/dealii/libs/petsc-3.7.4 > > OCE_DIR=/home/dealii/libs/oce-0.17.2 > > > On Thursday, May 11, 2017 at 2:09:01 PM UTC+2, Martin Kronbichler wrote: > > Dear Ashkan, > > the error message pops up from line 1043, which is the case

Re: [deal.II] Effect of attaching SphericalManifold to all entities

2017-06-02 Thread Martin Kronbichler
Hi Praveen, no, MappingQ does not unless you set the second boolean flag in the constructor to enable the mapping on all cells and not just the boundary. Even worse, when you have attached a curved manifold on the cells and not just the boundary you will have gaps in your computational domain. I

Re: [deal.II] AssertDimension (partition_blocks[partition], task_info.n_blocks) when calling MatrixFree::reinit() for finest level in GMG

2017-05-06 Thread Martin Kronbichler
Hi Denis, This is a bug somewhere in the initialization of the blocks. Could you please send me the code to reproduce this behavior? Best, Martin -- The deal.II project is located at http://www.dealii.org/ For mailing list/forum options, see https://groups.google.com/d/forum/dealii?hl=en

Re: [deal.II] Matrix-Free framework for vector problems: no assertion for components

2017-10-08 Thread Martin Kronbichler
Dear Michal, Could you please be a bit more specific? What was the error that you obtained? What vector did you pass into FEEvaluation::read_dof_values/distribute_local_to_global? I guess that you handed in a simple vector, e.g. LinearAlgebra::distributed::Vector and got a segmentation

Re: [deal.II] Bug in FEEvaluationAccess::get_symmetric_gradient with Number =float

2017-10-08 Thread Martin Kronbichler
Dear Michal, You are right, this is a bug and your fix is indeed correct. Would you like to create a pull request fixing it? Here are some basic instructions: http://dealii.org/participate.html including a video lecture. This way you get the proper credit for it. Best, Martin On

Re: [deal.II] Bug in FEEvaluationAccess::get_symmetric_gradient with Number =float

2017-10-10 Thread Martin Kronbichler
t/': The > requested URL returned error: 403 > > > W dniu niedziela, 8 października 2017 12:58:50 UTC+2 użytkownik Martin > Kronbichler napisał: > > Dear Michal, > > You are right, this is a bug and your fix is indeed correct. Would > you like t

Re: [deal.II] Re: Speeding up characteristic interpolation

2017-09-05 Thread Martin Kronbichler
Dear Praveen, Regarding the performance of your code, there are several fundamental problems: - You run the constructor of Quadrature (allocates memory) and FEValues (allocates lots of memory, evaluates a number of things you don't need) that are both not made for use within the scenario of

Re: [deal.II] Speeding up characteristic interpolation

2017-09-07 Thread Martin Kronbichler
Hi Praveen, - At this point, the performance depends on the transform_real_to_unit_cell (which might be slow due to Newton iterations) and the polynomial evaluation of fe.shape_value and to some extent the virtual function call of the latter. It depends on your polynomial space whether this

Re: [deal.II] Matrix-free: Computing coefficient involving material ID

2017-10-09 Thread Martin Kronbichler
Dear Michal, > for(unsigned int element=0; > elementdata->n_components_filled(cell) instead. It returns how many of the SIMD lanes are actually filled with real data. Best, Martin -- The deal.II project is located at

Re: [deal.II] Matrix-Free framework for vector problems: no assertion for components

2017-10-09 Thread Martin Kronbichler
W dniu niedziela, 8 października 2017 12:55:02 UTC+2 użytkownik Martin > Kronbichler napisał: > > Dear Michal, > > Could you please be a bit more specific? What was the error that > you obtained? What vector did you pass into > FEEvaluation::read_dof_values/distribute

Re: [deal.II] Wrong result in use of FEEvaluation with different ConstraintMatrix objects

2017-12-02 Thread Martin Kronbichler
Dear Sambit, If the result of the two cases is different and ConstraintMatrix::distribute() was called in both cases, I expect there to be some confusion regarding the indices of ghost entries. In debug mode, there should be a check that the parallel partitioner of the vector inside

Re: [deal.II] Non-homogeneus boundary conditions with-matrix-free not working

2017-10-28 Thread Martin Kronbichler
Dear Michal, You mean because once you apply an inhomogeneous Dirichlet condition on the velocity you also get a contribution because the divergence is not zero? You could work around that by applying a function in the whole domain that satisfies the Dirichlet constraints and is divergence

Re: [deal.II] Re: Transfinite Interpolation

2018-05-24 Thread Martin Kronbichler
Hi Narenda and David, Just to add on top of what David Wells said, Luca Heltai and I once had the idea of showing this manifold in a new tutorial program (where we combine it with MappingFEField to show the performance impact). Now step-60 does contain some MappingFEField, but on a different

Re: [deal.II] Add image to step

2018-05-02 Thread Martin Kronbichler
Hi Giovanni, I do have access to the svn for the homepage, so you can send them to me if you want (and nobody else was quicker in replying). Best, Martin On 02.05.2018 16:22, giovannialze...@hotmail.it wrote: > Hi everyone! >    I am working with Luca on step 60, it would be nice to add a

Re: [deal.II] Compute diagonal with Matrix-Free on adaptive meshes

2018-05-02 Thread Martin Kronbichler
Dear Daniel, the problem is, as far as I can tell, the fact that once you assemble into a matrix and once into a vector. The paper K. Kormann: A Time-Space Adaptive Method for the Schrödinger Equation, Commun. Comput. Phys. 2016, doi: 10.4208/cicp.101214.021015a describes this effect in

Re: [deal.II] Petrov-Galerkin stabilization approach to solve Navier-Stoke equations

2017-10-20 Thread Martin Kronbichler
Hi Jie, > Thank you for your hints on my previous question. Now I have > extended step-57 to be time-dependent. I added a u,t term which is > approximated using backward Euler, and all the remaining terms are > treated implicitly. Newton iteration is still used at every time step. > The system

Re: [deal.II] Re: Calculating lift and drag

2017-10-20 Thread Martin Kronbichler
Hi Jie, One needs to move some of the vertices around. I have some code that does generate this geometry in one of my projects: https://github.com/kronbichler/adaflo/blob/master/tests/flow_past_cylinder.cc (check the create_triangulation function) The mesh that comes out from this code is

Re: [deal.II] Re: Calculating lift and drag

2017-10-20 Thread Martin Kronbichler
Hi Jie, One needs to move some of the vertices around. I have some code that does generate this geometry in one of my projects: https://github.com/kronbichler/adaflo/blob/master/tests/flow_past_cylinder.cc (check the create_triangulation function) The mesh that comes out from this code is

Re: [deal.II] Non-homogeneus boundary conditions with-matrix-free not working

2017-10-27 Thread Martin Kronbichler
on. * The full text of the license can be found in the file LICENSE at * the top level of the deal.II distribution. * * ----- * * Authors: Katharina Kormann, Martin Kronbichler, Uppsala University, * 2009-2012, updated to MPI version with parallel vectors in 2016 */ #include #incl

Re: [deal.II] Non-homogeneus boundary conditions with-matrix-free not working

2017-10-27 Thread Martin Kronbichler
k mentioning it step-37 would be great. > > Best, > > Bruno > > On Friday, October 27, 2017 at 3:57:09 AM UTC-4, Martin Kronbichler > wrote: > > Dear Michal, > > This is expected: the matrix-free operator evaluation cannot apply > non-homogeneous bo

Re: [deal.II] Possible bug in the Jacobi preconditioner for MatrixFreeOperators::LaplaceOperator for vector fields

2017-10-27 Thread Martin Kronbichler
Dear Stephen, You are absolutely right, the value of dofs_per_cell is simply wrong in the vector-valued case. I have been hesitant to fix it because there are some downstream projects using it (mostly mine, though), but I guess it is better to switch to the correct notation now rather than

Re: [deal.II] Re: order of cells in two MatrixFree objects on the same Triangulation and Quadrature but different FE spaces

2018-01-29 Thread Martin Kronbichler
Dear Denis, > p.s. the mapping is the same for both cases. > > On Monday, January 29, 2018 at 4:16:48 PM UTC+1, Denis Davydov wrote: > > Dear all, > > I am playing around with something in the following setup: > 1. I have a single p::d::Tria > 2. two different DoFHandler's using

[deal.II] Vertex duplication in DataOut for discontinuous fields - reference to that?

2018-02-08 Thread Martin Kronbichler
Dear users and developers, I have a question regarding our output strategy: When we output our solution fields, we always create separate vertices for each element because this allows us to output discontinuous fields over element edges, for example. We also have an FAQ entry about this:

Re: [deal.II] New deal.II 8.5.1 is 20% slower than deal.II 8.0.0

2017-12-27 Thread Martin Kronbichler
In general, we strive to make deal.II faster with new releases, and for many cases that is also true as I can confirm from my applications. I have ran step-23 on release 8.0 as well as the current development sources and I can confirm that the new version is slower on my machine. If I disable

Re: [deal.II] New deal.II 8.5.1 is 20% slower than deal.II 8.0.0

2017-12-27 Thread Martin Kronbichler
of the wall time (70%) 2. fe_values.reinit -- less often 3. CG solver -- even less often Kind regards, Dmitry On Wednesday, December 27, 2017 at 11:49:42 AM UTC+3, Martin Kronbichler wrote: In general, we strive to make deal.II faster with new releases, and for many cases that is also true as I

Re: [deal.II] Re: Adding an independent DoF to a Trilinos system

2018-03-27 Thread Martin Kronbichler
ems to be causing the problem for my case. I think Martin Kronbichler might have to tell you why this is. But if you're adventurous, take a look how the FillComplete function in Trilinos looks like and whether you could possibly find the same kinds of savings there that I found in deal.II. I susp

Re: [deal.II] Re: Status of matrix-free CUDA support

2018-11-05 Thread Martin Kronbichler
Steve, Just to add on what Bruno said: Explicit time integration typically requires only a subset of what you need for running an iterative solver (no decision making like in convergence test of conjugate gradient, no preconditioner), so running that should be pretty straight-forward. Best,

Re: [deal.II] Re: Linking error while compiling examples: "undefined reference to `dealii::VectorizedArray::n_array_elements'"

2018-10-10 Thread Martin Kronbichler
Dear Maxi, This variable is populated by a series of checks on your particular system. It happens when the configuration stage prints the following lines, and I assume that this is what you see: -- Performing Test DEAL_II_HAVE_SSE2 -- Performing Test DEAL_II_HAVE_SSE2 - Failed -- Performing Test

Re: [deal.II] Poisson test code fails for a fe-degree >= 2

2019-04-04 Thread Martin Kronbichler
Dear Maxi, The problem is the quadrature formula you use in 'assemble_system' and 'calculate_residual'. You should use 'QGauss quadrature_formula(fe.degree+1)`. I am surprised that quadratic elements even worked because the Poisson matrix for d>=2 should have some rank deficiency with

Re: [deal.II] Re: dealii compilation on Cray machine

2019-04-06 Thread Martin Kronbichler
On 05.04.19 21:45, Bruno Turcksin wrote: Le ven. 5 avr. 2019 à 14:48, Phani Motamarri a écrit : No login node is intel-broadwell and compute node is intel-skylake. Problem is that the supercomputer I am compiling on has no way to access compute node (interactive job) directly for

Re: [deal.II] Alternative to local_range in LinearAlgebra::distributed::Vector

2019-02-06 Thread Martin Kronbichler
> On 2/2/19 12:32 AM, Praveen C wrote: >> Thank you for this tip. For my need, I only require the starting global >> index >> on each partition since I am using local_element to do some operations like >> multiplying by a local time step which is different for each cell. The >> local_range

Re: [deal.II] Compilation with ICC18 leads to several undefined AVX/SSE-functions

2019-02-01 Thread Martin Kronbichler
Dear Maxi, I have not yet look at all details, but what strikes my attention is that you added `-march=native` to your C++ compile flags. That is a gcc thing, so I don't know what Intel makes out of that. Can you try what happens if you replace it by `-xhost` which is (mostly) the Intel

[deal.II] Thank you!

2019-05-28 Thread Martin Kronbichler
. Martin, on behalf of the whole deal.II developer team: Daniel Arndt, Wolfgang Bangerth, Denis Davydov, Timo Heister, Luca Heltai, Guido Kanschat, Martin Kronbichler, Matthias Maier, Jean-Paul Pelteret, Bruno Turcksin, and David Wells -- The deal.II project is located at http://www.dealii.org

[deal.II] deal.II version 9.1 released

2019-05-28 Thread Martin Kronbichler
Version 9.1.0 of deal.II, the object-oriented finite element library awarded the J. H. Wilkinson Prize for Numerical Software, has been released. It is available for free under an Open Source license from the deal.II homepage at    https://www.dealii.org/ The major changes of

Re: [deal.II] Installation error on Haswell nodes on Cori at NERSC (failed AVX512 support)

2019-07-10 Thread Martin Kronbichler
Dear Steve, >From what I can see the failure is for the expand_instantiations script of deal.II, which is compiled as part of deal.II. It uses slightly different flags as the full install, but assuming that you either passed -xHASWELL or -xCORE-AVX2 to CMAKE_CXX_FLAGS it should not generate that

Re: [deal.II] DG Matrix-free: getting face iterator form

2019-08-06 Thread Martin Kronbichler
Dear Michal, We do not offer convenience access for all data structures on faces yet, so feel free to suggest what you need. That said, for the access of rho and mu on an element, we provide the following access function:

Re: [deal.II] DG Matrix-free: getting face iterator form

2019-08-06 Thread Martin Kronbichler
Dear Michal, Great. I've opened issue https://github.com/dealii/dealii/issues/8460 for that to keep track of it. We won't get at it immediately but I hope to do so in the coming weeks. Best, Martin -- The deal.II project is located at http://www.dealii.org/ For mailing list/forum options, see

Re: [deal.II] Matrix-free-method for an operator depending on input from solver

2019-07-24 Thread Martin Kronbichler
Dear Maxi, There is not really a simple answer to your request: It depends on how good a preconditioner you need. Matrix-free methods work best if you can use simple preconditioners in the sense that they only need some matrix entries (if any) and the matrix-vector product (or operator evaluation

Re: [deal.II] Create a LinearAlgebra::distributed::Vector from a LinearAlgebra::distributed::Vector

2019-09-23 Thread Martin Kronbichler
Dear Maxi, Did you try to call 'operator=' in the same line as you declare the variable? In that case, you still go through the (missing) constructor. It should work if you first declare the float vector in one statement and then assign in the next. We have this function:

Re: [deal.II] Is MatrixFreeOperators::LaplaceOperator::local_diagonal_cell() something wrong?

2019-11-14 Thread Martin Kronbichler
I should add that you can set a variable coefficient, but it is still scalar and thus the same to all components, so the code is correct. It would be different if we allowed tensor-valued coefficients (which we do not at the moment); then, one would really need to go through all dofs_per_cell

[deal.II] Re: how to implement MatrixFreeOperation::compute_diagonal in vector-valued problem?(which modified based on step-37 which used Multigrid method)

2019-11-14 Thread Martin Kronbichler
Dear m., As you have already found out, the code in the Stokes example should do what you need for computing the diagonal. Usually, the approach with FEEvaluation::begin_dof_values() is slightly simpler than the approach with the tensor you mentioned in the first email. We have computed

Re: [deal.II] Is MatrixFreeOperators::LaplaceOperator::local_diagonal_cell() something wrong?

2019-11-14 Thread Martin Kronbichler
> In the first loop inside the cell loop index i go through from 0 to > phi.dofs_per_component (highlighted) as well as the j index, > but the function phi.begin_dof_values()return a pointer whose index go > throught from 0 the phi.dofs_per_cell, that is said > *in n_component > 1 case the index

Re: [deal.II] Extracting DoF indice from FEEvaluation / Distributing from FEEvaluation to row of a matrix

2019-10-14 Thread Martin Kronbichler
Dear Michal, To answer the first request, we can provide an iterator from `MatrixFree` via `MatrixFree::get_cell_iterator(cell_index, v)`: https://www.dealii.org/developer/doxygen/deal.II/classMatrixFree.html#adb12e97b3905c1cb12d6f90527604476 That would work for the cell part. However, we

Re: [deal.II] Matrix-free DG with adaptive refinements

2019-10-14 Thread Martin Kronbichler
Dear Michal, Thanks for reporting this problem - this is indeed a bug. It seems we did not think carefully about the case with periodic boundary conditions and hanging nodes. I have opened an issue at deal.II so we can try to fix it soon: https://github.com/dealii/dealii/issues/8905 Best,

Re: [deal.II] Facilities for computing the "goodness" of a mesh (i.e. something like a mesh-quality indicator)

2020-01-15 Thread Martin Kronbichler
Dear Krishna, We have recently added one such function, namely GridTools::compute_aspect_ratio_of_cells(), https://dealii.org/developer/doxygen/deal.II/namespaceGridTools.html#a2a9d8801d952ea8afa9ec1573229a329 Best, Martin On 15.01.20 18:26, Krishnakumar Gopalakrishnan wrote: In the

Re: [deal.II] Segfault when calling gather_evaluate() or read_dof_values_plain()

2020-01-14 Thread Martin Kronbichler
Dear Maxi, It looks like you are using a scalar finite element (FE_Q), but you set FEEvaluation to operate on a vectorial field, i.e.,         FEEvaluation phi(data); Notice the 4th template parameter "dim", which should be one. I agree it is unfortunate that we do not provide a better

Re: [deal.II] MtrixFree for biharmonic problem: submit_laplacian

2020-04-25 Thread Martin Kronbichler
Dear Michal, That is great news. There is interest in this functionality also by Julius Witte (I added him here) and there were some steps done. The main difficulty in terms of user interface is the fact that the submit_laplacian() is a bit nastier than the other functions: on non-affine

Re: [deal.II] Geometric Conservation Law

2020-06-16 Thread Martin Kronbichler
Dear Alex, This has been on my list of things to implement and verify with deal.II over a range of examples for quite a while, so I'm glad you bringing the topic up. It is definitely true that our way to define Jacobians does not take those identities into account, but I believe we should add

Re: [deal.II] Geometric Conservation Law

2020-06-19 Thread Martin Kronbichler
to implement it. Do you have any suggestions on where I should start and overall practices I should follow? Thank you, Alex On Wednesday, June 17, 2020 at 1:19:29 AM UTC-4, Martin Kronbichler wrote: Dear Alex, This has been on my list of things to implement and verify with

Re: [deal.II] Geometric Conservation Law

2020-06-24 Thread Martin Kronbichler
ads_tensor or should I create a new function for it? Thank you, Alex On Friday, June 19, 2020 at 5:09:14 AM UTC-4, Martin Kronbichler wrote: Dear Alex, Great! The first thing we need to know is the equation. I had a quick look in the paper by Kopriva and I think we want to use eithe

Re: [deal.II] extract_dofs() extremely slow in for single-thread run?

2020-09-03 Thread Martin Kronbichler
Indeed the other function was fast. I looked into the function already and have a fix posted: https://github.com/dealii/dealii/pull/10883 Best, Martin -- The deal.II project is located at http://www.dealii.org/ For mailing list/forum options, see

Re: [dealii-developers] do_vectorized() in struct Dot and alike for shared memory parallel reduction

2016-12-20 Thread Martin Kronbichler
Hi Denis, | VectorizedArrayr0 =op.do_vectorized(index); VectorizedArrayr1 =op.do_vectorized(index+nvecs); VectorizedArrayr2 =op.do_vectorized(index+2*nvecs); VectorizedArrayr3 =op.do_vectorized(index+3*nvecs); | where | constunsignedintnvecs =VectorizedArray::n_array_elements; | I wonder