Module: MSolve#

Semi-implicit thin film solver for second order differential equations of form:

\[ \frac{\eta}{\Delta t} - G_{ij} \eta_{,ij}= rhs \]

Defined Types#

type_msolve

Variable

Type

Dimension

Mmsolve,Vmsolve,Ymsolve

real64

dimension(:, :, :, :)

delop

real64

dimension(:, :, :, :)

bc

complex real64

dimension(:, :, :, :)

BCTop,BCBot

int32

-

type_mupro_MsolveContext#

Variable

Type

Dimension

Meaning

gradient_coefficient

real64

(3)

Gradient coefficient

BCTop

int32

-

BC for film surface

BCBot

int32

-

BC for film substrate interface

sysArray

type_msolve

-

Necessary information for the solver

type_mupro_MsolveSolveContext#

Variable

Type

Dimension

Meaning

rin

real64

(z,y,x)

The right hand side of the equation

pout

real64

(z,y,x)

The evolved order parameter distribution

dt

real64

-

Marching step for each simulation

sysArray

type_msolve

-

sysArray from the msolve_setup

Defined Subroutines#

mupro_msolve_setup#

Preparation for the msolve solver

call mupro_msolve_setup(context)

Argument

Type(Intent)

Meaning

context

type_mupro_MsolveContext(INOUT)

The msolve setup context

mupro_msolve_solve#

Evolve the Time-Dependent Ginzburg Landau equation semi-implicitly, march forward the order parameter distribution for one time step.

call mupro_msolve_solve(context)

Argument

Type(Intent)

Dimension

context

type_mupro_MsolveSolveContext(INOUT)

The msolve solver context