Model Exchange

Electrokinetic Motion of a Nonspherical Particle in Microfluidic Channel

Scott Davison, Penn State University

This script file follows the motion of a nonspherical particle in a fluid filled microchannel moving under the action of an applied electric field. The channel surfaces and the particle posses a native surface charge (zeta potential), so that the electric field causes both the bulk fluid and the particle to translate along the channel. The transient incompressible Navier-Stokes mode accounts for the fluid motion, while the conductive media DC mode determines the electric field. The ALE moving mesh mode deforms the mesh to allow the particle to translate. Boundary integration coupling variables calculate the forces and torques exerted on the particle, while ODEs are used to calculate the velocities and translations.

A script file was used so that the process of creating new geometry from the deformed mesh and then meshing the new geometry could be automated. The model seeks to track the motion of the particle over a very large displacement, in this case upwards of 50 remeshes were required. The script file can be executed by Comsol Script (versions prior to 3.5), with Matlab+Comsol Multiphysics, or through batch mode of Comsol Multiphysics.

The script file used to model this motion is included, as is a movie file that demonstrates the motion of the particle through the channel (the background in the movie is the electric field strength).

This material is based upon work supported by the National Science Foundation under Grant No. 0348149.

User Comments

Tosin Dada
Apr 8, 2009 at 1:36am UTC

Will be nice to see the model built in comsol multiphysics

Nick Bruno
May 22, 2009 at 6:43pm UTC

FYI,
To onlookers, I believe this model was developed using eqn's found from this paper.

"Implementation of ALE Moving Mesh for Transient Modeling of
Nanowire Trajectories Caused by Electrokinetic Forces"

Scott M. Davison and Kendra V. Sharp*
The Pennsylvania State University

It contains some good information.

Tom Myers
Jun 17, 2009 at 6:21pm UTC

This model is excellent and shows many useful interactions and techniques. The .m file is very well documented!

Good Work!

Frederick Phelan Jr.
Jun 29, 2009 at 9:47pm UTC

Can't seem to run this in 3.5a. The m-file comes from 3.2b, is there an update.

Nick Bruno
Sep 15, 2009 at 3:46pm UTC

Do you have the correct application modes to run this file? I dont think it will work unless you have licenses for the modules used in the m-file

Dibyadeep Paul
Oct 12, 2009 at 2:33am UTC

I too get problems while running the m-file...

I dont think the problem is due to the presence of modes..If you look at the modes used..they are "MovingMesh", FlNavierStokes and ConductiveMediaDC...

These are present in even the most basic versions of COMSOL Multiphysics.

I think its due to the version that was used. COMSOL is not generally backward compatible. I have faced this problem earlier too...programs which run fine in earlier version..suddenly stop working in 3.5a or 3.4

thibault honegger
Nov 18, 2009 at 10:56am UTC

Comment removed by thibault honegger.

thibault honegger
Nov 18, 2009 at 10:56am UTC

It seems coming from a negative sqrt (Sqrt of negative - Function: sqrt) when evaluating
nojac((min((gijgij_ns^-0.25),((U_ns*rho_ns)/(eta_ns*48)))*(0.5*min((ck_ns*sqrt((((taum_ns*res_v_ns)^2)+((((tauc_ns*res_p_ns)/(nojac((rhoint_g1_ns/vol_g1_ns))*nojac(sqrt((u2int_g1_ns/vol_g1_ns))))))^2+((taum_ns*res_u_ns))^2)))),U_ns))))

Anyone could help with solving this issue ?
running with 3.5a and matlab r14

Nick Bruno
Nov 22, 2009 at 10:46pm UTC

turn off corner smoothing in the fluid module

Hari Krishnan
Apr 6, 2010 at 6:31am UTC


Anybody succeeded to run this in COMSOL Script 1.2?. I use COMSOL 3.4.

I get a warning message ;

"Failed to find consistent initial values / Nonlinear solver did not converge"

What could be the problem?

Widya Apriari
Apr 22, 2010 at 1:19pm UTC

Comment removed by Widya Apriari.

Xiaodong Chen
May 13, 2010 at 2:08pm UTC

I even tried to run in 3.3, it still do not work.
fem.appl{2}.prop.weakconstr.dim has wrong number of dependent variables
I am not sure if I still keep 3.2 version.

Login to comment on this entry.