Questions on simulating epoxy wicking - possibly similar to water flow in porous media

33 views
Skip to first unread message

CJH

unread,
Aug 11, 2015, 9:22:02 PM8/11/15
to sailfish-cfd

Hello usergroup,

First of all I want to say that sailfish is great, and thank you for all the hard work that went into it.  I’ve been reading the manual and the threads as well as searching the repository and it has helped me get fairly far but I’m stuck on a few concepts.

I would like to use Sailfish to simulate the wicking of epoxy into a flip-chip bonded structure, where two semiconductor chips are connected by pressed indium bumps, so you essentially have a 3D channel of small height (typically about 6 to 10 microns) and an array of posts impeding the capillary flow.  One fluid would be air and the other fluid would be epoxy, and I would like to watch the formation and evolution of voids.  If you see immediate problems with this approach, please point them out.  I’d like to do something similar to Wicklund and Uesaka’s “Edge-wicking: Micro-fluidics of two-dimensional liquid penetration into porous structures” paper from Nordic Pulp and Paper Research Journal Vol 27 no.2/2012 to track the wicking into the structure I generate, but I understand that they used a different model and engine for their LBM. 

As prepwork, I have installed Sailfish and ran most of the examples.  I have modified some of the binary Shan-Chen droplet examples to make something like a large reservoir drop and then push it through my lattice of circular wall nodes which I made with either for loops or some mod functions.   I can see already see voids form depending on my velocities and densities.  I have several questions, and as a neophyte in CFD I would very much appreciate verbosity or even a short snippet of pseudocode to help with the explanations:


1) Is the binary Shan-Chen the best model for this, or is there something more appropriate?

2) I see in lb_binary.py that G11, G12 and G22 are implemented.  Am I correct in assuming G12 controls mixing /keeps the phases separated, and G11 and G22 will change the surface tension of the rho and phi components, respectively?  As written, a positive G12 encourages phase separation.  Should G11 and G22 greater than the default of 0 indicate a higher surface tension?  A search of the github doesn’t show these other two terms ever being used.

3) Will the underlying  3D models Sailfish uses properly take into account the capillary force that causes wicking to occur, or will I have to keep using a force node condition to simulate flow?

4) The initial conditions for rho and phi are a bit confusing.  It seems that every node gets initialized, as in rho[:]=A and phi[:]=B, and then on the next lines a droplet swaps the A and B values.  Could you please let me know what is going on there, why every node has both a rho and phi value, and what I have to look out for?

5) More of an extension to 4, is there a standard way to treat something like air and water in these codes, such that the density ratios and overall viscosity are close to lab conditions?

6) Can I set a node as always being of a certain rho/phi combination, so that in effect I can have a source of epoxy that just keeps flowing into my simulation until everything is epoxy?  Similarly, can you have one edge of the simulation just get dumped instead of hitting a wall or coming back through periodic boundary conditions?  As is I have to have one large blob of it that has to get pushed into the lattice and it seems very wasteful in terms of computation. 


Sorry about the laundry list.  I’m happy with answers to any or all points.  Thank you very much for your time.  -CJH

Reply all
Reply to author
Forward
0 new messages