Skip to main content

On the virtual element method for topology optimization of non-Newtonian fluid-flow problems

Abstract

This paper presents some virtual element method (VEM) applications for topology optimization of non-Newtonian fluid-flow problems in arbitrary two-dimensional domains. The objective is to design an optimal layout for the incompressible non-Newtonian fluid flow, governed by the Navier–Stokes–Brinkman equations, to minimize the viscous drag. The porosity approach is used in the topology optimization formulation. The VEM is used to solve the governing boundary value problem. The key feature distinguishing the VEM from the classical finite element method is that the local basis functions in the VEM are only implicitly known. Instead, the VEM uses local projection operators to describe each element’s rigid body motion and constant strain components. Therefore, the VEM can handle meshes with arbitrarily shaped elements. Several numerical examples are provided to demonstrate the efficacy and efficiency of the VEM for the topology optimization of fluid-flow problems. A MATLAB code for reproducing the results provided in this paper is freely available at https://github.com/mampueros/VEM_TopOpt_FluidFlow.

This is a preview of subscription content, access via your institution.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19
Fig. 20
Fig. 21
Fig. 22
Fig. 23

Data Availability Statement

The supplementary material (source code written in MATLAB) to this article can be found online at https://github.com/mampueros/VEM_TopOpt_FluidFlow. The code can be extended for other examples by modifying the input data. Moreover, the code inherits mesh data structure from PolyMesher [52] and VEM architecture from [51].

Notes

  1. For detailed discussions on the VEM formulation, the readers are referred to the following References: [23, 42, 49,50,51].

References

  1. Borrvall T, Petersson J (2003) Topology optimization of fluids in Stokes flow. J Numer Methods 41:77–107

    MathSciNet  MATH  Google Scholar 

  2. Gersborg-Hansen A, Sigmund O, Haber RB (2005) Topology optimization of channel flow problems. Struct Multidiscip Optim 30:181–192

    MathSciNet  MATH  Google Scholar 

  3. Guest JK, Prévost JH (2006) Topology optimization of creeping fluid flows using a Darcy-Stokes finite element. Int J Numer Meth Eng 66:461–484

    MathSciNet  MATH  Google Scholar 

  4. Wiker N, Klarbring A, Borrvall T (2007) Topology optimization of regions of Darcy and Stokes flow. Int J Numer Meth Eng 69:1374–1404

    MathSciNet  MATH  Google Scholar 

  5. Pereira A, Talischi C, Paulino MIFMGH, Carvalho MS (2016) Fluid flow topology optimization in PolyTop: stability and computational implementation. Struct Multidiscip Optim 54:1345–1364

    MathSciNet  Google Scholar 

  6. Challis VJ, Guest JK (2009) Level set topology optimization of fluids in Stokes flow. Int J Numer Meth Eng 79:1284–1308

    MathSciNet  MATH  Google Scholar 

  7. Okkels F, Olesen LH, Bruus H (2005) Applications of topology optimization in the design of micro-and nanofluidic systems. Numer Algor 1:575–578

    Google Scholar 

  8. Olesen LH, Okkels F, Bruus H (2005) A high-level programming-language implementation of topology optimization applied to steady-state Navier-Stokes flow. Int J Numer Meth Eng 65(1):975–1001

    MathSciNet  MATH  Google Scholar 

  9. Deng Y, Liu Z, Wu Y (2011) Topology optimization of unsteady incompressible Navier - Stokes flow. J Comput Phys 230:6688–6708

    MathSciNet  MATH  Google Scholar 

  10. Kreissl S, Pingen G, Maute K (2011) An explicit level set approach for generalized shape optimization of fluids with the lattice Boltzmann method. Int J Numer Meth Fluids 65:496–519

    MATH  Google Scholar 

  11. Kreissl S, Pingen G, Maute K (2011) Topology optimization for unsteady flow. Int J Numer Meth Eng 87:1229–1253

    MathSciNet  MATH  Google Scholar 

  12. Kreissl S, Maute K (2012) Levelset based fluid topology optimization using the extended finite element method. Struct Multidiscip Optim 46:311–326

    MathSciNet  MATH  Google Scholar 

  13. Deng Y, Liu Z, Wu Y (2013) Topology optimization of steady and unsteady incompressible Navier - Stokes flows driven by body forces. Struct Multidiscip Optim 47:555–570

    MathSciNet  MATH  Google Scholar 

  14. Romero JS, Silva ECN (2014) A topology optimization approach applied to laminar flow machine rotor design. Comput Methods Appl Mech Engrg. 279:268–300

    MathSciNet  MATH  Google Scholar 

  15. Sá LFN, Novotny AA, Romero JS, Silva ECN (2017) Design optimization of laminar flow machine rotors based on the topological derivative concept. Struct Multidiscip Optim 56:1013–1026

    MathSciNet  Google Scholar 

  16. Pingen G, Maute K (2010) Optimal design for non-Newtonian flows using a topology optimization approach. Comput Math Appl 59:2340–2350

    MathSciNet  MATH  Google Scholar 

  17. Zhang B, Liu X, Sun J (2016) Topology optimization design of non-Newtonian roller-type viscous micropumps. Struct Multidiscip Optim 53:409–424

    MathSciNet  Google Scholar 

  18. Hyun J, Wang S, Yang S (2014) Topology optimization of the shear thinning non-Newtonian fluidic systems for minimizing wall shear stress. Comput Math Appl 67:1154–1170

    MathSciNet  MATH  Google Scholar 

  19. Alonso DH, Romero JS, Silva ECN (2020) Non-newtonian laminar 2D swirl flow design by the topology optimization method. Struct Multidiscip Optim 62:299–321

    MathSciNet  Google Scholar 

  20. Zhang B, Liu X (2015) Topology optimization study of arterial bypass configurations using the level set method. Struct Multidiscip Optim 51:773–798

    MathSciNet  Google Scholar 

  21. Romero JS, Silva ECN (2017) Non-newtonian laminar flow machine rotor design by using topology optimization. Struct Multidiscip Optim 55:1711–1732

    MathSciNet  Google Scholar 

  22. Alexandersen J, Andreasen CS (2020) A review of topology optimisation for fluid-based problems. Fluids. 5(1):1–32

    Google Scholar 

  23. da Beirão Veiga L, Brezzi F, Marini LD (2013) Virtual elements for linear elasticity problems. SIAM J Numer Anal 51(2):794–812

    MathSciNet  MATH  Google Scholar 

  24. Gain AL, Talischi C, Paulino GH (2014) On the Virtual Element Method for three-dimensional linear elasticity problems on arbitrary polyhedral meshes. Comput Methods Appl Mech Engrg. 282:132–160

    MathSciNet  MATH  Google Scholar 

  25. Artioli E, Miranda SC Lovadini, Patruno L (2017) A stress/displacement Virtual Element method for plane elasticity problems. Comput Methods Appl Mech Engrg 325:155–174

    MathSciNet  MATH  Google Scholar 

  26. Artioli E, Beirão da Veiga L, Lovadini C, Sacco E (2017) Arbitrary order 2D virtual elements for polygonal meshes. Computational Mechanics. 60(3):355–377

  27. Chi H, Beirão da-Veiga L, Paulino GH (2017) Some basic formulations of the virtual element method (VEM) for finite deformations. Comput Methods Appl Mech Eng 318:148–192

    MathSciNet  MATH  Google Scholar 

  28. Brezzi F, Marini LD (2013) Virtual element methods for plate bending problems. Comput Methods Appl Mech Eng 253:455–462

    MathSciNet  MATH  Google Scholar 

  29. Wriggers P, Rust WT, Reddy BD (2016) A virtual element method for contact. Comput Mech 58:1039–1050

    MathSciNet  MATH  Google Scholar 

  30. Rivera G, Mora D (2018) A priori and a posteriori error estimates for a virtual element spectral analysis for the elasticity equations. IMA J Numer Anal 2018:5

    Google Scholar 

  31. Benedetto MF, Caggiano A, Etse G (2018) Applications of the Virtual Element Method for cracking analysis of cement-based composites using interface elements. In: MECOM 2018. Tucumám, Argentina: Asociación Argentina de Mecánica Computacional; pp 2555–2566

  32. Antonietti PF, Beirão da-Veiga L, Mora D, Verani M (2014) A stream virtual element formulation of the stokes problem on polygonal meshes. SIAM J Numer Anal 52(1):386–404

    MathSciNet  MATH  Google Scholar 

  33. Cangiani A, Gyrya V, Manzini G (2016) The non-conforming virtual element method for the stokes equations. SIAM J Numer Anal 54(6):3411–3435

    MathSciNet  MATH  Google Scholar 

  34. Beirão da Veiga L, Lovadina C, Vacca G (2017) Divergence free virtual elements for the stokes problem on polygonal meshes. ESAIM Math Model Numer Anal 51(2):509–535

    MathSciNet  MATH  Google Scholar 

  35. Xin L, Jian L, Zhangxin C (2017) A nonconforming virtual element method for the Stokes problem on general meshes. Comput Methods Appl Mech Eng 320:694–711

    MathSciNet  MATH  Google Scholar 

  36. Ernesto C, Gatica GN (2017) A mixed virtual element method for the pseudostress - velocity formulation of the Stokes problem. IMA J Numer Anal 37:296–331

    MathSciNet  MATH  Google Scholar 

  37. Beirão da Veiga L, Lovadina C, Vacca G (2018) Virtual Elements for the Navier-Stokes problem on polygonal meshes. SIAM J Numer Anal 56(3):1210–1242

    MathSciNet  MATH  Google Scholar 

  38. Beirão da Veiga L, Mora D, Vacca G (2019) The stokes complex for virtual elements with application to Navier-Stokes flows. J Sci Comput 81(2):990–1018

    MathSciNet  MATH  Google Scholar 

  39. Beirão da Veiga L, Dassi L, Vacca G (2020) The Stokes complex for virtual elements in three dimensions. Math Models Methods Appl Sci 30(3):477–512

    MathSciNet  MATH  Google Scholar 

  40. Xin L, Zhangxin C (2019) The nonconforming virtual element method for the Navier-Stokes equations. Adv Comput Math 45:51–74

    MathSciNet  MATH  Google Scholar 

  41. Paulino GH, Gain AL (2015) Bridging art and engineering using Escher-based virtual elements. Struct Multidiscip Optim 51(4):867–883

    MathSciNet  Google Scholar 

  42. Gain AL, Paulino GH, Duarte LS, Menezes IFM (2015) Topology optimization using polytopes. Comput Methods Appl Mech Eng 293:411–430

    MathSciNet  MATH  Google Scholar 

  43. Antonietti PF, Bruggi M, Scacchi S, Verani M (2017) On the virtual element method for topology optimization on polygonal meshes: A numerical study. SIAM J Numer Anal 74:1091–1109

    MathSciNet  MATH  Google Scholar 

  44. Suárez MAA, Romero JS, Menezes IFM (2018) Topology Optimization for fluid flow problems using the Virtual Element Method. In: MECOM 2018. Tucumám, Argentina: Asociación Argentina de Mecánica Computacional; pp 2037–2046

  45. Zhang XS, Chi H, Paulino GH (2020) A virtual element approach. Comput Methods Appl Mech Eng, Adaptive multi-material topology optimization with hyperelastic materials under large deformations, p 370

  46. Gartling DK, Hickox CE, Givler RC (1996) Simulation of coupled viscous and porous flow problems. Int J Comput Fluid Dyn 7:23–48

    MATH  Google Scholar 

  47. Cho Y, Kensey KR (1991) Effects of the non-Newtonian viscosity of blood on flows in a diseased arterial vessel. Part 1: Steady flows. Biorheology 28:241–262

    Google Scholar 

  48. Abraham F, Behr M, Heinkenschloss M (2005) Shape optimization in steady blood flow: a numerical study of non-Newtonian effects. Comput Methods Biomech Biomed Eng 8:127–137

    Google Scholar 

  49. Beirão da Veiga L, Brezzi F, Cangiani A (2013) Basic principles of virtual element methods. Math Models Methods Appl Sci 23(1):199–214

    MathSciNet  MATH  Google Scholar 

  50. Beirão da Veiga L, Brezzi F, Marini LD, Russo A (2013) The Hitchhiker’s guide to the virtual element method. Math Models Methods Appl Sci 24(8):1541–1573

    MathSciNet  MATH  Google Scholar 

  51. Chi H, Pereira A, Menezes IFM, Paulino GH (2020) Virtual element method (VEM)-based topology optimization: an integrated framework. Struct Multidiscip Optim 62(3):1089–1114

    MathSciNet  Google Scholar 

  52. Talischi C, Paulino GH, Pereira A, Menezes IFM (2012) PolyMesher: a general-purpose mesh generator for polygonal elements written in Matlab. Struct Multidiscip Optim 45(3):309–328

    MathSciNet  MATH  Google Scholar 

  53. Fish J, Belytschko T (2007) A first course in finite elements. Wiley, Hoboken

    MATH  Google Scholar 

  54. Shih TM, Tan CH, Hwang BC (1989) Effects of grid staggering on numerical schemes. Int J Numer Meth Fluids 9:193–212

    MATH  Google Scholar 

  55. Miller W (1995) Flow in the driven cavity calculated by the lattice Boltzmann method. Phys Rev E 51(4):1013–1026

    Google Scholar 

  56. Svanberg K (1987) The Method of Moving Asymptotes-A new method for Structural Optimization. Int J Numer Meth Eng 24:359–373

    MathSciNet  MATH  Google Scholar 

  57. Kian JM (2017) Topology optimization method applied to design channels considering non-newtonian fluid flow [Master thesis]. USP—University of São Paulo. São Paulo, Brazil

  58. Alonso DH, Nelli EC (2021) Topology optimization for blood flow considering a hemolysis model. Struct Multidiscip Optim 63:2103–2123

    MathSciNet  Google Scholar 

  59. Brenner SC, Guan Q, Sung L (2017) Some estimates for virtual element methods. Comput Methods Appl Math 17(4):553–574

    MathSciNet  MATH  Google Scholar 

Download references

Funding

This work was supported by Conselho nacional de desenvolvimento científico e tecnológico (Grant no. 313833/2018-4).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Anderson Pereira.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Appendix A: virtual element projections

Appendix A: virtual element projections

Virtual element projection \({\Pi }_E^0 \nabla v\)

Based on the works of Gain et al. [24], Beirão da Veiga et al. [50] and Brenner et al. [59], we consider the lower order element \((i.e., k=1,n_{p_{k}}=3\) and \(n_{p_{k-1}}=2)\) in which the set of basis functions for \(P_k (E)\), (linear polynomial space): \(m_\alpha ^{(k)},\alpha =1,\ldots , n_{p_{k}}\) is defined as

$$\begin{aligned} \begin{aligned} m_1^{(1)}=1, \ m_2^{(1)}= \displaystyle \frac{ x-x_C}{ h_E}, \ m_3^{(1)}= \displaystyle \frac{y-y_C}{h_E}, \end{aligned} \end{aligned}$$
(51)

the gradients of \(P_k (E)\) are

$$\begin{aligned} \begin{aligned} \nabla m_1^{(1)}&=\begin{bmatrix} 0\\ 0\\ \end{bmatrix}, \ \nabla m_2^{(1)}&=\begin{bmatrix} 1\\ 0\\ \end{bmatrix}, \ \nabla m_3^{(1)}&=\begin{bmatrix} 0\\ 1\\ \end{bmatrix} , \end{aligned} \end{aligned}$$
(52)

and the basis functions \(\varvec{m}_\alpha ^{(k-1)}\), for the two-dimensional vector polynomial space \([P_{k-1}(E)]^2\) with \(\alpha =1,\dots ,n_{p_{k-1}}\) are defined as

$$\begin{aligned} \begin{aligned} \varvec{m}_1^{(0)}&=\begin{bmatrix} 1\\ 0\\ \end{bmatrix} \text {and} \ \varvec{m}_2^{(0)}&=\begin{bmatrix} 0\\ 1\\ \end{bmatrix} , \end{aligned} \end{aligned}$$
(53)

where \(x_c\) and \(y_c\) are the coordinates of the centroid of the element E, |E| is the element area, and \(h_E=|E|^{1/2}\) is the average element size (Fig. 24).

Fig. 24
figure 24

Local VEM spaces and degrees of freedom of a given element E

The first projection operator \({\Pi }_E^0 \nabla v\), which projects the gradient of v onto \([P_{k-1}(E)]^2\), satisfies the orthogonality condition as

$$\begin{aligned} \begin{aligned} <(\nabla v-{\Pi }_E^{0} \nabla v),\varvec{p}> = 0, \ \forall \varvec{p} \in [P_{k-1}(E)]^2 \end{aligned} \end{aligned}$$

from the inner product and applying the divergence theorem, we have

$$\begin{aligned} \begin{aligned}&\int _{E}{\Pi }_E^0 \nabla {v}.\varvec{p}{\rm d}\varvec{x}=\int _E \nabla v .\varvec{p}{\rm d}\varvec{x} = \oint _{\partial E} v.\varvec{p}.\varvec{n}{\rm d}s \\&\quad -\int _E v\nabla . \varvec{p} {\rm d}\varvec{x} , \ \forall \varvec{p} \in [P_{k-1}(E)]^2. \end{aligned} \end{aligned}$$
(54)

By introducing a set of shape functions for the local VEM space \(V_h (E)\), \(\phi _i (x),i=1,\ldots ,n_v\), we can express \({\Pi }_E^0 \nabla v\) as

$$\begin{aligned} \begin{aligned} {\Pi }_E^0 \nabla {v} = \sum _{i=1}^{n_v}{\Pi }_E^0 \nabla {\phi _i} (\varvec{x})V_i. \end{aligned} \end{aligned}$$
(55)

Therefore, Eq. (54) can be rewritten as

$$\begin{aligned} \begin{aligned}&\int _{E}{\Pi }_E^0 \nabla {\phi _i}.\varvec{m}_\alpha ^{(k-1)} {\rm d}\varvec{x}=\int _E \nabla \phi _i .\varvec{m}_\alpha ^{(k-1)} {\rm d}\varvec{x} \\&\quad = \oint _{\partial E} \phi _i.\varvec{m}_\alpha ^{(k-1)}.\varvec{n}ds -\int _E \phi _i\nabla . \varvec{m}_\alpha ^{(k-1)} {\rm d}\varvec{x}. \end{aligned} \end{aligned}$$
(56)

We can also express \({\Pi }_E^0 \nabla \phi _i\) using the set of basis \(\varvec{m}_\alpha ^{(k-1)}\) for \([P_{k-1}(E)]^2\) as

$$\begin{aligned} \begin{aligned} {\Pi }_E^0 \nabla {\phi _i}(\varvec{x}) = \sum _{\beta =1}^{n_{p_{k-1}}}S_{i\beta }\varvec{m}_\beta ^{(k-1)}(\varvec{x}). \end{aligned} \end{aligned}$$
(57)

Finally, Eq. (56) can be rewritten as

$$\begin{aligned} \begin{aligned}&\sum _{\beta =1}^{n_{p_{k-1}}}S_{i\beta }\underbrace{\int _{E}{\varvec{m}_\beta }^{(k-1)}.{\varvec{m}_\alpha }^{(k-1)}{\rm d}\varvec{x}}_{\varvec{M}}\\&\quad = \underbrace{\oint _{\partial E} \phi _i.\varvec{m}_\alpha ^{(k-1)}.\varvec{n}{\rm d}s -\int _E \phi _i.\nabla . \varvec{m}_\alpha ^{(k-1)} {\rm d}\varvec{x}. }_{\varvec{R}} \end{aligned} \end{aligned}$$
(58)

From Eq. (58), we can form the matrices \(\varvec{M}\) and \(\varvec{R}\) and compute the matrix \(\varvec{S}\) as

$$\begin{aligned} \begin{aligned} \varvec{S}=\varvec{R}\varvec{M}^{-1}. \end{aligned} \end{aligned}$$
(59)

Virtual element projection \({\Pi }_E^{\nabla } v\)

The second projection operator \({\Pi }_E^{\nabla } v\), projects v onto lineal polynomial space \(P_k (E)\), satisfies the orthogonality condition as

$$\begin{aligned} \begin{aligned} <\nabla (v-{\Pi }_E^{\nabla } v),\nabla p> = 0, \ \forall p \in P_{k}(E) \end{aligned} \end{aligned}$$

from the inner product and applying the divergence theorem, we have

$$\begin{aligned} \begin{aligned}&\int _{E}\nabla {\Pi }_E^{\nabla } v.\nabla p {\rm d}\varvec{x}=\int _E {\nabla } v.\nabla p {\rm d}\varvec{x} = \oint _{\partial E} v \nabla {p}.\varvec{n}{\rm d}s \\&\quad -\int _E v\Delta p {\rm d}\varvec{x} , \ \forall p \in P_{k}(E). \end{aligned} \end{aligned}$$
(60)

We express \({\Pi }_E^{\nabla } v\) using the shape functions \(\phi _i\) as

$$\begin{aligned} \begin{aligned} {\Pi }_E^{\nabla } v= \sum _{i=1}^{n_v}{\Pi }_E^{\nabla } {\phi _i} (\varvec{x})V_i. \end{aligned} \end{aligned}$$
(61)

Therefore, Eq. (60) can be rewritten as

$$\begin{aligned} \begin{aligned}&\int _{E}\nabla {\Pi }_E^{\nabla } \phi _i.\nabla m_\alpha ^{(k)} {\rm d}\varvec{x}=\int _E {\nabla } \phi _i.\nabla m_\alpha ^{(k)} {\rm d}\varvec{x} \\&\quad = \oint _{\partial E} \phi _i\nabla m_\alpha ^{(k)}.\varvec{n}ds -\int _E \phi _i\Delta m_\alpha ^{(k)} {\rm d}\varvec{x}. \end{aligned} \end{aligned}$$
(62)

We can also express \({\Pi }_E^{\nabla } \phi _i\) in terms of the set of basis \(m_\alpha ^{(k)}\) for \(P_{k}(E)\) as

$$\begin{aligned} \begin{aligned} {\Pi }_E^{\nabla } \phi _i= \sum _{\alpha =1}^{n_{p_{k}}}S_{i\alpha }^{\nabla } m_\alpha ^{(k)}. \end{aligned} \end{aligned}$$
(63)

By Combining Eqs. (62) and (63), we obtain

$$\begin{aligned} \begin{aligned} \sum _{\beta =2}^{n_{p_{k}}} S_{i\beta }^{\nabla }\underbrace{\int _{E}\nabla m_\beta ^{(k)}.\nabla m_\alpha ^{(k)} {\rm d}\varvec{x}}_{\varvec{M}^\nabla } = \underbrace{ \oint _{\partial E} \phi _i\nabla m_\alpha ^{(k)}.\varvec{n}{\rm d}s -\int _E \phi _i\Delta m_\alpha ^{(k)} {\rm d}\varvec{x}.}_{\varvec{R}^\nabla }. \end{aligned} \end{aligned}$$
(64)

From Eq. (64), we can form matrices \(\varvec{M}^\nabla\) and \(\varvec{R}^\nabla\) and compute the matrix \(\varvec{S}^\nabla\) as

$$\begin{aligned} \begin{aligned} \varvec{S}^\nabla =\varvec{R}^\nabla (\varvec{M}^{\nabla })^{-1}. \end{aligned} \end{aligned}$$
(65)

Additionally, we can express \({\Pi }_E^{\nabla } \phi _i(\varvec{x})\) in terms of the shape functions \(\phi _i\) as

$$\begin{aligned} \begin{aligned} {\Pi }_E^{\nabla } \phi _i (\varvec{x})= \sum _{i=1}^{n_v}P_{ij}^{\nabla } \phi _j (\varvec{x}), \end{aligned} \end{aligned}$$
(66)

and we can express the set of basis functions \(m_\alpha ^{(k)}\) for \(P_{k}(E)\) as

$$\begin{aligned} \begin{aligned} m_{\alpha }^{(k)}(\varvec{x})= \sum _{j=1}^{n_v} G_{\alpha j}^{\nabla } \phi _j (\varvec{x}). \end{aligned} \end{aligned}$$
(67)

By substituting Eq. (67) into Eq. (63), we obtain

$$\begin{aligned} \begin{aligned} {\Pi }_E^{\nabla } \phi _i = \sum _{\alpha =1}^{n_{pk}} S_{i\alpha }^{\nabla } \sum _{j=1}^{n_{v}} G_{\alpha j}^{\nabla } \phi _j (\varvec{x}) = \sum _{\alpha =1}^{n_{pk}} \sum _{j=1}^{n_{v}} \underbrace{S_{i\alpha }^{\nabla }G_{\alpha j}^{\nabla }}_{P_{ij}^{\nabla }} \phi _j (\varvec{x}). \end{aligned} \end{aligned}$$
(68)

Then, \(\varvec{P}^{\nabla } = \varvec{S}^{\nabla }\varvec{G}^{\nabla }\), where

$$\begin{aligned} \begin{aligned} \varvec{G}^{\nabla } = \begin{bmatrix} 1 &{} \ldots &{} 1 \\ m_{2}^{(1)}(\varvec{x}_1) &{} \ldots &{} m_{2}^{(1)}(\varvec{x}_{n_v}) \\ m_{3}^{(1)}(\varvec{x}_1) &{} \ldots &{} m_{3}^{(1)}(\varvec{x}_{n_v}) \\ \end{bmatrix} . \end{aligned} \end{aligned}$$

It is important to mention that \(m_\alpha ^{(1)} (\varvec{x}_i)\) indicates the \(\alpha\)th basis function for \(P_1 (E)\) evaluated at position \(\varvec{x}_i\) of the vertex i.

Rights and permissions

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Suárez, M.A.A., Romero, J.S., Pereira, A. et al. On the virtual element method for topology optimization of non-Newtonian fluid-flow problems. Engineering with Computers (2022). https://doi.org/10.1007/s00366-022-01637-2

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1007/s00366-022-01637-2

Keywords

  • Topology optimization
  • Virtual element method
  • non–Newtonian fluids
  • Carreau–Yasuda model
  • Navier–Stokes–Brinkman
  • MATLAB software