[CIG-MC] creating a viscosity structure in CitcomS

tan2 tan2tan2 at gmail.com
Sun Sep 21 20:33:42 PDT 2014

Hi William,

You can start reading the code of get_system_viscosity(). This function
computes the temperature-, composition-, and stress-dependence of

In your case, you need to modify the array
  evisc[m][(i-1)*vpts + j]

m is always equal to 1 in this version of code.
i is the element number, starting from 1 to E->lmesh.nel.
j is the gauss quadrature point, starting from 1 to vpts (==8).

By varying i and j, you can change the viscosity of different regions.

One thing important to note: CitcomS interpolates the viscosity field from
quadrature points to nodal points for output purpose. Therefore, the
viscosity field plotted by opendx or paraview, which reads the interpolated
viscosity output, is a smoothed version of the true viscosity used in
calculating the stiffness matrix.


Eh Tan

On Fri, Sep 19, 2014 at 4:43 AM, Snow, William Ragan <
william.snow at email.wsu.edu> wrote:

>  Hello,
>  I am using CitcomS(3.2.0) for my masters research and would like to be
> able to impose a region of fixed viscosity that I could easily change the
> size of. From reading through the mailing archives I've gathered that I
> need to modify the Viscosity_structures.c file to accomplish this. I'm
> pretty comfortable using the cookbooks to change parameters but I'm not
> familiar enough with C-code to tell exactly what is going on in the files.
> Any help or pointers as to how to modify the code would be greatly
> appreciated.
>  Thanks
> William Snow
> william.snow at email.wsu.edu
> _______________________________________________
> CIG-MC mailing list
> CIG-MC at geodynamics.org
> http://lists.geodynamics.org/cgi-bin/mailman/listinfo/cig-mc
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.geodynamics.org/pipermail/cig-mc/attachments/20140922/b9e76a29/attachment.html>

More information about the CIG-MC mailing list