Academia.eduAcademia.edu

Rigid Motion Mesh Morpher: A Novel Approach For Mesh Deformation

2017

In adjoint based shape optimization problems, after the sensitivities have been computed, there are two ways of dealing with the necessary changes to the mesh. The first one is re-meshing based on the new shape, while the second one is adapting the existing mesh (by moving the nodes) to fit the new shape. Re-meshing may be time consuming, as it is introduced as a separate step inside the optimization loop, and tedious as it may require by-hand manipulation. It also introduces inconsistencies in the process as the sensitivities have been computed at isoconnectivity. Morphing also has its share of challenges, namely maintaining the mesh quality (avoiding distorted and negative cells) while deforming it. Within this context, various mesh morphing techniques have been developed. The Spring Analogy [1] is simple but may suffer robustness issues. Laplacian smoothing [11] is suitable for translation but does not account for rotation. The linear elasticity approach [3] does not account for ...

OPT-i An International Conference on Engineering and Applied Sciences Optimization M. Papadrakakis, M.G. Karlaftis, N.D. Lagaros (eds.) Kos Island, Greece, 4-6, June 2014 RIGID MOTION MESH MORPHER: A NOVEL APPROACH FOR MESH DEFORMATION George S. Eleftheriou1,2 , Guillaume Pierrot1 1 ESI-Group 99 rue des Solets, Parc d’Affaires SILIC, 94513 Rungis CEDEX, France 2 National Technical University of Athens P.O. Box 64069, 15710 Athens, Greece e-mail: {george.eleftheriou,guillaume.pierrot}@esi-group.com Keywords: rigid motion mesh morpher, as-rigid-as-possible, mesh morphing, mesh deformation, mesh anisotropy, mesh rotation, distortion, mesh-less, optimization-based, cfd, computational fluid dynamics, adjoint based optimization Abstract. In adjoint based shape optimization problems, after the sensitivities have been computed, there are two ways of dealing with the necessary changes to the mesh. The first one is re-meshing based on the new shape, while the second one is adapting the existing mesh (by moving the nodes) to fit the new shape. Re-meshing may be time consuming, as it is introduced as a separate step inside the optimization loop, and tedious as it may require by-hand manipulation. It also introduces inconsistencies in the process as the sensitivities have been computed at isoconnectivity. Morphing also has its share of challenges, namely maintaining the mesh quality (avoiding distorted and negative cells) while deforming it. Within this context, various mesh morphing techniques have been developed. The Spring Analogy [1] is simple but may suffer robustness issues. Laplacian smoothing [11] is suitable for translation but does not account for rotation. The linear elasticity approach [3] does not account for mesh anisotropy and is difficult to implement for general meshes because finite elements are used to solve the equations. Finally, the Radial Basis Functions [7] are promising but computationally heavy as the matrices involved are full, restricting the mesh size and complicating the implementation. The Rigid Motion Mesh Morpher approach, proposed in the present study, aims at overcoming the above-mentioned limitations, being more flexible and essentially mesh-less, since it does not require any inertial quantities or cell connectivities related to the mesh. Firstly, the set of boundary nodes (nodes defining the shape) of the mesh is identified. The prescribed motion of these nodes (their velocities) is known. Then, all nodes are grouped into “stencils” which are required to deform in an as-rigid-as-possible way. Hence, every stencil has a rotation velocity and a translation velocity. Those, along with the velocities of all internal nodes, form the set of unknowns. The as-close-to-rigid-as-possible motion is ensured by attempting to minimize a metric representing the difference of the actual deformation from a perfectly rigid motion (a translation plus a rotation). It will be shown that this quantity is related to the anisotropic deformation energy. Next, the resulting system of equations is solved, having the prescribed motion of the boundary nodes as boundary conditions. George S. Eleftheriou, Guillaume Pierrot 1 INTRODUCTION Let us consider the general shape optimization problem which, in gradient-based optimization problems, can be described as ~ min J(U, d) ~ d∈D ~ =0 R(U, d) (1) (2) With • J: the objective function • U : the system state given by the natural problem R (Navier-Stokes equations) defined on the domain Ω (if steady) or Ω × (0, T ] (if unsteady) • d~ ∈ D ⊂ RD , D ≥ 1 the design variables of the model. In our study this vector is the nodes coordinates of the mesh Mh related to the physical domain Ω. Let us denote by {Ni }N i=1 the set of these nodes and by ΩB and ΩI respectively the boundary and the interior of the domain Ω. II = {i/ Ni ∈ ΩI } and IB = {i/ Ni ∈ ΩB } are the sets of node indices belonging respectively to ΩI and ΩB . In the case of a gradient-based method, the −∇d~J at each optimization iteration gives the best descent direction. The computed gradient concerns the boundary nodes and the interior nodes must somehow follow their movement. This can be achieved by trashing the existing mesh and creating a new one (re-meshing) based on the new shape. However it is timeconsuming and introduces inconsistencies, as the connectivities of the sequence of meshes produced differ from iteration to iteration. It also requires by-hand manipulation. Another approach is to just make the internal nodes follow the movement of the boundary nodes defining the shape, thereby deforming the existing mesh. The cell connectivities are kept intact during the process and there is no new mesh to be built. This is called mesh morphing or mesh smoothing. The problem of this approach is that the movement does not necessarily end up well for the resulting mesh quality. It might be severly distorted, having negative cells. Within this context, several mesh morphing methods have been developed. They are classified in four principal categories described in the subsections 1.1, 1.2, 1.3 and 1.4. We attempt to quickly cite the principles of the techniques along with their weaknesses and merits. To facilitate notation we can globally define as ~g = (~ui )i∈IB the displacement prescribed over ΩB . 1.1 Spring analogy The spring analogy method [4, 2, 12, 1] is the most simple and classical approach, performing quite well in a number of cases. Unfortunately, it doesn’t prevent cell collapse, and fails when the local mesh motion exceeds significantly the local mesh size. Things become even worse, when it has to deal with mesh anisotropy and mesh rotation. Its principal idea is the introduction of a spring energy Es and the requirement for it to be minimum Es = where Lij is the length of the spring. X 1 (uj − ui )2 L ij ij (3) George S. Eleftheriou, Guillaume Pierrot 1.2 Laplacian smoothing Also known as “Laplacian coordinates” or “Laplacian based”, this approach is based on the solution of a simple Laplace equation [10, 13, 11, 6] such that the displacement ~u of the nodes’ coordinates is the solution of the following problem:  ∇ · (µ(~x)∇~u) = 0 in Ω (4) ~u = ~g on ΩB with µ(~x) as the diffusion coefficient selected over Ω preserving the mesh anisotropy. The computation of the displacement ~u related to the internal nodes (4) comes down to solving a linear system whose dimension is equal to the number of nodes. This method seems efficient when the mesh is subject to translation but suffers robustness issues in cases of more complex transformations such as rotation. 1.3 Linear elasticity In this method [3, 10, 5], in order to handle rotation, a linear elasticity model is introduced to compute the displacements ~u such that:  ∇ · σ(~u) = 0 in Ω (5) ~u = ~g on ΩB σ being the Cauchy stress tensor  σ = λ tr(ε(~u)I + 2µε(~u) ε(~u) = 12 (~uT + ~u) (6) with λ and µ being the Lamé constants. This method reaches its limits with large rotations or mesh anisotropy as it doesn’t handle them intrinsically. Furthermore it is difficult to implement for general polyhedral meshes because finite elements are used to solve the equations. 1.4 Radial Basis Function interpolation This is an interpolation method [8, 7] searching for the displacement ~u(~x) X ~u(~x) = γl φ(k~x − ~xl k) + h(~x) (7) l ~u is the smooth interpolant which minimizes a certain norm. φ is the radial basis function [7]. The constraint is to be exact over the boundary nodes: ~u(~ xi ) = ~v(~ xi ) i ∈ IB . (8) B The search for {γl }N l=1 satisfying (8), requires the solution of a linear system, the matrix of which is unfortunately dense. This causes difficulties in cases of large NB . (NB +1)×(NB +1) B In order to determine the coefficients {γl }#I l=1 we have to solve a linear system in R where NB = #IB . Compared to the previously cited techniques, RBF morphing proves quite robust with respect to both mesh rotation and mesh anisotropy. The problem is that the matrices involved in the computations are always dense by design. Therefore, it’s a matter of choice between a simple implementation at high computational cost, or a complex implementation at the cost of solving the system almost as if it was sparse. George S. Eleftheriou, Guillaume Pierrot 2 THE RIGID MOTION MESH MORPHER CONTRIBUTION The method belongs to the family of optimization-based methods according to the classification cited in [9]. This means that the nodes are not moved based on a heuristic algorithm such as Laplacian smoothing, they are moved to minimize a given distortion metric. More specifically, it tries to favour rigidity in the critical directions of imminent distortion. There is an inherent contradiction starting from the very name of this method. Rigid Motion Mesh Morpher. Why Rigid Motion? Afterall, how could something (a mesh in particular) be kept rigid while being deformed (morphed)? The stated objective of this method and its main philosophy is to deform a mesh, meanwhile keeping elements/parts of it as-rigid-as-possible. Obviously they cannnot be kept entirely rigid, as this would defeat the purpose, however there are ways to favour rigidity in certain critical directions when distortion of the element/part becomes imminent. These elements/parts are essentially groups of nodes called stencils. During the mesh deformation, there is a kind of prevention mechanism that kicks-in whenever a particular stencil is about to distort or degenerate to a line segment. The stencils can be defined with freedom as to the choice of nodes belonging to them. In the simple case, a 1:1 ratio between the number of stencils and nodes could be considered as follows; a stencil may consist of one node, plus all of its adjacent/neighbouring nodes sharing a cell. The main qualities of the method is that it is mesh-less and handles intrinsically mesh anisotropy and mesh rotation. Let us assume that an arbitrary rigid stencil s is in motion. Its motion comes as the combination of a translation, under velocity a~s and a rotation under velocity b~s . In this case, the velocity of a node j belonging to it, denoted as υ~sj would be υ~sj = a~s + b~s ∧ (x~j − c~s ) (9) where x~j is the coordinate vector of the node and c~s is the coordinate vector of the stencil’s center of gravity. In the simple case, its coordinates can be computed as the mean value of the coordinates of all nodes constituting the stencil (center of gravity of a point cloud). Moving further, we no longer require that the stencil s be rigid; it is now allowed to deform. Therefore the velocity of the node, υ~j would no longer be equal to υ~sj υ~j 6= a~s + b~s ∧ (x~j − c~s ) = υ~sj (10) Let e~sj be a vector representing this difference, between the actual deformation of the stencil and its perfectly rigid motion. This vector will be a function of the stencil s and the nodes j belonging to it: e~sj = υ~j − υ~sj = υ~j − a~s − b~s ∧ (x~j − c~s ) (11) Taking control over how this vector evolves/develops for every single stencil of the mesh and trying to bound/minimize it, to the extent that this is possible, gives the first idea of how the optimization problem will be posed. Therefore we enhance/enrich it with some weighting coefficients e~sj = √ ws µsj (υ~j − a~s − b~s ∧ (x~j − c~s )) (12) The square root is there just for convenience and the need for it will become clearer in section 5.3; ws is a scalar weight per stencil that may arbitrarily stress the importance of some stencils as higher than others’. It can be objective when set to 1.0. To better explain the need for a per stencil-node scalar weight µsj though, an example will be provided. Consider, for instance, George S. Eleftheriou, Guillaume Pierrot an anisotropic stencil, depicted in figure 1b, that is in a critical condition, meaning that if it is allowed to further deform and squeeze, it risks degenerating to a line segment or distort. This sounds like exactly the case where it would be useful to favour rigidity in the direction of squeeze, freezing any further deformation. This is where µsj comes in handy serving as a limiter to further distortion. For instance, it could be something like   ||x~j − c~s ||2 exp − h2 (13) µsj = ||x~j − c~s ||2 + ε h being the average size of the mesh and ε an arbitrary positive constant just to avoid division by zero when the node under consideration coincides with the stencil’s center of gravity. The coefficient and its underlying logic will be detailed in section 4. The quantity e~sj T · e~sj (scalar), henceforth denoted as ke~sj k2 , will be shown (later) that relates to the anisotropic deformation energy of the stencil. 3 6 9 2 5 8 1 4 7 (a) Isotropic stencil 3 6 9 2 5 8 1 4 7 (b) Squeezed/anisotropic stencil (we favour rigidity in the direction of squeeze) Figure 1: Isotropic and anisotropic stencils George S. Eleftheriou, Guillaume Pierrot 3 TOTAL DISTORTION ENERGY At this point, a quantity called “total distortion energy” of the mesh will be introduced, to serve as the objective function and at the same time the distortion metric, bound to be minimized by the morphing algorithm. It is XX E(u~j , a~s , b~s ) = ke~sj k2 (14) s j∈s which is quadratic. Hence, to find the stationary points of the total distortion energy and minimize it we require for all nodes j and stencils s ∂E ∂E ∂E = = =0 ∂ υ~j ∂ a~s ∂ b~s 4 (15) ASYMPTOTIC DEVELOPMENT We will see in this section how to relate the distortion metric of a stencil S: X Es = µsj n o2 ~vj − α ~ s − β~s ∧ (~xj − ~cs )   j∈S (16) to the strain rate tensor: ε̇ = The first remark is that if (15) then we surely have: n 1 2 ∂v α ∂v β + ∂xβ ∂xα   (~vi )i∈II , α ~ s , β~s 1≤β≤d s∈S o is solution of the optimisation problem n o2   X ~ ~ µsj ~vj − ~as − bs ∧ (~xj − ~cs ) α ~ s , βs = argmin ~as ,~bs (17) 1≤α≤d (18) j∈S And subsequently: X j∈S µsj ! α ~s = X j∈S µsj n o ~vj − β~s ∧ (~xj − ~cs ) (19) and: Ys β~s = X j∈S with: µsj (~xj − ~cs ) ∧ (~vj − α ~ s) (20) George S. Eleftheriou, Guillaume Pierrot Ys = X j∈S µsj {~eδ ∧ (~xj − ~cs )} · {~eγ ∧ (~xj − ~cs )} !1≤γ≤d (21) 1≤δ≤d where (~eδ )1≤δ≤d denotes the canonical basis of Rd . Up to the change of variable: α ~s ← α ~ s + β~s ∧ (~xs − ~cs ) (22) where: equation (19) and (20) become: P xj j∈S µsj ~ xs = P j∈S µsj and: P vj j∈S µsj ~ α ~s = P j∈S µsj Ỹs β~s = X j∈S (23) (24) µsj (~xj − ~xs ) ∧ (~vj − α ~ s) (25) with: Ỹs = X j∈S µsj {~eδ ∧ (~xj − ~xs )} · {~eγ ∧ (~xj − ~xs )} !1≤γ≤d (26) 1≤δ≤d Let’s now assume that (~vj )j∈S is the interpolated of a smooth vector field ~v at nodes location: (~vj )j∈S = (~v (~xj ))j∈S We have the following Taylor expansion: ~v (~xj ) = ~v (~xs ) + D~v (~xj − ~xs ) + O(h2 ) ∀j ∈ S (27) where h is a characteristic size of the stencil and: D~v = is the vector field differential at ~xs .  ∂v α ∂xβ 1≤β≤d 1≤α≤d (28) George S. Eleftheriou, Guillaume Pierrot By the definition of ~xs (23) and (24) it comes then that: α ~ s = ~v (~xs ) + O(h2 ) (29) And (25) becomes: Ỹs β~s = X j∈S µsj (~xj − ~xs ) ∧ (D~v (~xj − ~xs )) + O(h3 ) (30) Now, by introducing the classical splitting of D~v between its symmetric and anti-symmetric part: D~v = ε̇ + Ω̇ (31) where: ε̇ =  1 2  ∂v α ∂v β − ∂xβ ∂xα 1≤β≤d (32) 1≤α≤d is the so-called rotation rate tensor, it comes: Ỹs (β~s − ω ~ s ) = O(h3 ) where (33) 1~ ω ~s = ∇ ∧ ~v 2 is the so-called rotation rate vector. Hence we have: β~s = ω ~ s + O(h) (34) Using now (27),(29) and (34), and substituting back in equation (16) it comes: Es = = X µsj j∈S X µsj j∈S  ~vj − ~v (~xs ) − ω ~ s ∧ (~xj − ~xs ) + O(h2 )  ε̇s (~xj − ~xs ) + O(h2 ) 2 2 = (Xs ε̇s ) : ε̇s + O(h3 ) (35) where : denotes the Frobenius product of 2 matrices and: Xs = X j∈S µsj (~xj − ~xs )α (~xj − ~xs )β !1≤β≤d 1≤α≤d (36) George S. Eleftheriou, Guillaume Pierrot is the so-called stencil anisotropy tensor. We will now consider 2 practical cases. The first one corresponds to a pure isotropic stencil (Fig. 1a). With the weights µsj being chosen as indicated in (13), it is easy to see that: ~cs = ~xs = ~x5 where ~x5 denotes the central node of the stencil and: Xs = µs Id with: µs )  (x1j − x15 )2 kx~j − x~5 k2 = exp − h2 ||x~j − x~5 ||2 + ε j∈S ) (   X (x2j − x25 )2 kx~j − x~5 k2 = exp − h2 ||x~j − x~5 ||2 + ε j∈S ( X  Consequently, there is no favoured direction on the stencil distortion metric. In case of a squeezed mesh, on the other hand (Fig. 1b), as it happens in boundary layers for instance, things are quite different. Indeed, we have again that ~cs = ~xs = ~x5 but the stencil anisotropy tensor is no longer scalar: Xs = DIAG (µαs )1≤α≤d with: µαs = ( X j∈S kx~j − x~5 k2 exp − h2   2 ) xαj − xα5 ||x~j − x~5 ||2 + ε Because this time the stencil dimension in the y direction hy is way smaller than in the x direction hx and we have that: hx c(Xs ) = hy where c(Xs ) denotes the condition number of the matrix. Consequently it comes:  Es = hx c(Xs ) ε̇2yy + ε̇2xx + O(h3 ) and we see that we put more rigidity in the direction of squeezeness, which is is to be preferred as it is the direction of most imminent breakdown of the mesh. In this sense we can say that the Rigid Motion Mesh Morpher algorithm handles naturally mesh anistropy. George S. Eleftheriou, Guillaume Pierrot 5 BUILDING THE SYSTEM OF EQUATIONS The quadratic minimization problem of the total distortion energy of the mesh, as stated in (15), brings us to the following symmetric positive definite system       Pu Auu Au(a|b) u = · (37) A(a|b)u A(a|b)(a|b) P(a|b) (a|b) where the RHS consists of the boundary conditions, namely the prescribed nodes’ velocities. Attempting to solve it using the Schur complement leads to two different cases of elimination: Either u = f (a|b) (a|b) = g(u) or (38) So for instance −1 u = −A−1 uu · Au(a|b) · (a|b) + Auu · Pu → −1 (−A(a|b)u · A−1 (39) uu · Au(a|b) + A(a|b)(a|b) ) · (a|b) = −A(a|b) · Auu · Pu + P(a|b) Specializing the above analysis, for ∂ ∂E = ∂ υ~j ∂ υ~j XX s j∈s ke~sj k2 ! ∂E = 0 we have: ∂ υ~j ∂ = ∂ υ~j X j∈s1 ke~s1 j k2 + X j∈s2 ke~s2 j k2 + ... + X j∈sN kes~N j k2 ! (40) So for a stencil:  X ∂ke~s j k2  k  ∂ X ∂ υ ~ ke~sk j k2 = j j∈sk  ∂ υ~j j∈s  k 0 Considering the above, equation (40) becomes if j ∈ sk if j ∈ / sk X ∂ke~sj k2 X ∂E ∂ e~sj = = =0 2e~sj T ∂ υ~j ∂ υ~j ∂ υ~j s∋j s∋j But X s∋j 2e~sj T (41) X X  ∂ e~sj T ∂ e~sj T ∂ e~sj e~sj = 0 =0⇔ e~sj =0⇔ ∂ υ~j ∂ υ~j ∂ υ~j s∋j s∋j (42) (43) Since e~sj is linear with respect to υ~j , a~s , b~s , it could also be expressed as follows: e~sj = ∂ e~sj ∂ e~sj ~ ∂ e~sj υ~j + a~s + bs ∂ υ~j ∂ a~s ∂ b~s (44) Hence  X  ∂ e~sj T  ∂ e~sj ∂ e~sj ∂ e~sj ~ ∂E = υ~j + a~s + bs = 0 ∂ υ~j ∂ υ~j ∂ υ~j ∂ a~s ∂ b~s s∋j (45) George S. Eleftheriou, Guillaume Pierrot We denote by X  ∂ e~sj T ∂ e~sj Nj = ∂ υ~j ∂ υ~j s∋j  T   ∂ e~sj ∂ e~sj ∂ e~sj Hjs = ∂ a~s ∂ b~s ∂ υ~j the equation becomes Nj υ~j = − For ∂E = 0 we have ∂ a~s ∂ ∂E = ∂ a~s ∂ a~s XX s j∈s ke~sj k2 ! ∂ = ∂ a~s X s∋j X j∈s1 (46) (47)   a~s Hjs ~ bs ke~s1 j k2 + X j∈s2 (48) ke~s2 j k2 + ... + X j∈sN kes~N j k2 ! (49) depending on the stencil  X ∂ke~s j k2  k  ∂ X 2 ∂ a~s ke~sk j k = j∈sk  ∂ a~s j∈s  k 0 equation (49) becomes if s = sk (50) if s 6= sk X ∂ke~sj k2 ∂E = ∂ a~s ∂ a~s j∈s  X  ∂ e~sj T  ∂ e~sj ∂ e~sj ∂ e~sj ~ = υ~j + a~s + bs = 0 ⇒ ∂ a~s ∂ a~s ∂ υ~j ∂ a~s ∂ b~s j∈s j∈s ! ! X  ∂ e~sj T ∂ e~sj X  ∂ e~sj T ∂ e~sj X  ∂ e~sj T ∂ e~sj ~ bs = − a~s + υ~j ~s ∂ a ~ ∂ a ~ ∂ a ~ ∂ a ~ ∂ υ ~ s s s s j ∂ b j∈s j∈s j∈s (51) X ∂ke~sj k2 ∂E = 0 we end up with: ∂ b~s ! ! X  ∂ e~sj T ∂ e~sj X  ∂ e~sj T ∂ e~sj X  ∂ e~sj T ∂ e~sj a~s + υ~j b~s = − ~s ~s ~s ~s ∂ a ~ ∂ υ ~ s j ∂ b ∂ b ∂ b ∂ b j∈s j∈s j∈s (52) Similarly for Combining equations (52) (53) into a more compact form:    T ∂ e~sj ∂ e~sj  ∂ a~ ∂ υ~j    s   X X  a~s   υ~j = − Ms ~ = − HTjs υ~j   bs   j∈s   j∈s  ∂ e~sj T ∂ e~sj  ∂ υ~j ∂ b~s (53) (54) George S. Eleftheriou, Guillaume Pierrot Where  X  ∂ e~sj T ∂ e~sj  ∂ a~s  j∈s ∂ a~s   Ms =    X  ∂ e~sj T ∂ e~sj  ∂ a~s ∂ b~s j∈s is a symmetric 6x6 matrix. 5.1  X  ∂ e~sj T ∂ e~sj  ∂ a~s ∂ b~s  j∈s       T X ∂ e~sj ∂ e~sj   ~s ~s ∂ b ∂ b j∈s (55) eliminating the node velocities υ~j From (48) we have: υ~j = − X N−1 j Hjs s∋j   a~s b~s (56) and replacing υ~j in equation (54) (the two relations do not necessarily concern the same stencil, that’s why an s′ is introduced),  !   X X a~s′ a~s −1 T Nj Hjs′ ~ ⇒ Hjs − Ms ~ = − b s′ bs j∈s s′ ∋j  !   X X a~s′ a~s − HTjs N−1 ⇒ Ms ~ = − j Hjs′ ~s′ b bs ′ j∈s s ∋j  !   X X a~s′ a~s HTjs N−1 ⇒ Ms ~ = j Hjs′ b~s′ bs s′ j∈s∩s′       X X  a~s′  a~s −1 T  ′ Ms ~ − N H H js js j  b~s′ = 0  bs   ′ ′ s j∈s∩s (57) ass′ s6=s′ 5.2 eliminating stencil velocities a~s , b~s Starting from equation (54)   X a~s T = − M−1 ~j s Hjs υ ~ bs j∈s (58) Changing the node index to i (instead of j so far), since it’s not the same nodes we are referring to, equation (48) becomes   X a~s (59) Ni υ~i = − His ~ bs s∋i George S. Eleftheriou, Guillaume Pierrot   a~s Replacing ~ as it is expressed in (58) in the above equation yields bs     X X  −1 T   H M H Ni υ~i − is s js   υ~j = 0  j s∋{i,j} (60) aij i6=j 5.3 Elaborating on some expressions So far we referred generically to some expressions without getting into the details of computing them or making them more explicit. Finally, this subsection is detailing this aspect. Let us first consider the partial derivatives of e~sj : ∂ e~sj √ = ws µsj I(3×3) ∂ υ~j ∂ e~sj √ = − ws µsj I(3×3) ∂ a~s   0 cs3 − xj3 xj2 − cs2 ∂ e~sj √ 0 cs1 − xj1  = ws µsj xj3 − cs3 ~ ∂ bs cs2 − xj2 xj1 − cs1 0 It is worth noting that compact notation (61) (62) (63) ∂ e~sj ∂ e~sj ∂ e~sj , are diagonal and is antisymmetric. Using a more ∂ υ~j ∂ a~s ∂ b~s  ∂ e~sj ∂ b~   s −1 0 0 0 cs3 − xj3 xj2 − cs2 √ 0 cs1 − xj1  = ws µsj  0 −1 0 xj3 − cs3 0 0 −1 cs2 − xj2 xj1 − cs1 0  ∂ e~sj ∂ e~sj = ∂ a~s ∂(a~s , b~s ) (64) In light of the differentiation of e~sj the expressions of Nj and Hjs now become clearer  ∂ e~sj Hjs = ∂ υ~j T  ∂ e~sj ∂ a~s  ∂ e~sj ⇒ ∂ b~s  −1 0 0 0 cs3 − xj3 xj2 − cs2 0 cs1 − xj1  Hjs = ws µsj  0 −1 0 xj3 − cs3 0 0 −1 cs2 − xj2 xj1 − cs1 0  X  ∂ e~sj T ∂ e~sj Nj = ⇒ ∂ υ ~ ∂ υ ~ j j s∋j X Nj = ws µsj I(3×3) s∋j (65) (66) George S. Eleftheriou, Guillaume Pierrot We denote M = diag(Ms ) N = diag(Ni ) (67) (68) ≤ j ≤ nnodes H = (Hjs )11 ≤ s ≤ nstencil (69) As an example, eliminating u as shown in (39), would mean M = A(a|b)(a|b) H = Au(a|b) N = Auu (70) (71) (72) Thus, the coefficient matrices indexed according to the two different cases of elimination (38) are given: Au = N − HM−1 HT T −1 A(a|b) = M − H N H 6 (73) (74) CONCLUSIONS • In the present article, a novel method, Rigid Motion Mesh Morpher has been introduced. We provided indications, according to which, it handles intrinsically, at the same time, the rotations and the mesh anisotropy of any mesh, since its design is mesh-less. • It necessitates the solution of a sparse, symmetric positive definite (SPD) problem, proportional to the size of the mesh. • Ongoing work: we need to validate the approach on a variety of test cases and compare it to existing approaches with the hope to demonstrate its superiority. • It will be implemented as a part of an adjoint solver loop. • Future work may include smoothing of the surface node velocity field as provided by the adjoint solver or equivalently a CAD-free parametrization of the surface. 7 ACKNOWLEDGEMENTS This work was funded by the EU through the FP7-PEOPLE-2012-ITN ”AboutFlow” Grant agreement number:317006. REFERENCES [1] Carlo L. Botasso, David Detomi, and Roberto Serra. The Ball-Vertex Method: a New Simple Spring Analogy Method for Unstructured Dynamic Meshes. Computer Methods in Applied Mechanics and Engineering, 194:4244–4264, 2005. [2] Christoph Degand and Charbel Farhat. A three-dimensional torsional spring analogy method for unstructured dynamic meshes. Computers & structures, 80(3):305–316, 2002. George S. Eleftheriou, Guillaume Pierrot [3] Richard P. Dwight. Robust Mesh Deformation using the Linear Elasticity Equations. In Computational Fluid Dynamics 2006, pages 401–406. Springer, 2009. [4] Ch Farhat, C Degand, B Koobus, and M Lesoinne. Torsional springs for two-dimensional dynamic unstructured fluid meshes. Computer methods in applied mechanics and engineering, 163(1):231–245, 1998. [5] David A Field. Laplacian smoothing and Delaunay triangulations. Communications in applied numerical methods, 4(6):709–712, 1988. [6] Peter Hansbo. Generalized laplacian smoothing of unstructured grids. Communications in numerical methods in engineering, 11(5):455–464, 1995. [7] Stefan Jakobsson and Olivier Amoignon. Mesh deformation using radial basis functions for gradient-based aerodynamic shape optimization. Computers & Fluids, 36(6):1119– 1136, 2007. [8] AM Morris, CB Allen, and TCS Rendall. Cfd-based optimization of aerofoils using radial basis functions for domain element parameterization and mesh deformation. International journal for numerical methods in fluids, 58(8):827–860, 2008. [9] Nilanjan Mukherjee. A Hybrid, Variational 3D Smoother for Orphaned Shell Meshes. In IMR, pages 379–390. Citeseer, 2002. [10] Marco Andrea Pischedda. Mesh Morphing techniques based on continuum deformation models. Master’s thesis, Politecnico di Milano, 2008. [11] Z. Su, S. Wang, C. Yu, F. Liu, and X. Shi. A Novel Laplacian Based Method for Mesh Deformation. Journal of Information and Computational Science, 7(4):877–883, 2010. [12] Anh H Truong, Chad A Oldfield, and David W Zingg. Mesh movement for a discrete-adjoint Newton-Krylov algorithm for aerodynamic optimization. AIAA journal, 46(7):1695–1704, 2008. [13] Shaoting Zhang, Junzhou Huang, and Dimitris N Metaxas. Robust mesh editing using Laplacian coordinates. Graphical Models, 73(1):10–19, 2011.