MultiScale FE solution of the Reynolds equation
This module can be used for a two-scale solution of the lubrication problems (more particularly for rough surface problems)
MS_FE_FILM is a data structure containing a FE_FILM which is the Top Scale or macro-scale of the problem and a table of FE_FILM which is the Bottom Scale or micro-scale
This module can be used to create a MS_FE_FILM, assemble the MS_FE_FILM, and solve it. Some post-treatements like fluxes, forces are available.
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
type(SCALE_SURF), | private | :: | scal_tmp | object SCALE_SURF |
|||
logical(kind=I4), | private, | parameter | :: | SMOOTH_MS | = | .true. | at the end of the iterative process, the pressure field can be smoothed |
MS_FE_FILM is the top-scale FE_FILM plus all of the bottom-scale FE_FILM
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
type(FE_FILM), | public | :: | ts_fe_f | top-scale fe_film |
|||
type(FE_FILM), | public, | dimension(:), allocatable | :: | bs_fe_f | bottom-scale fe_film |
procedure, public :: ms_fx | force computation along |
procedure, public :: ms_fy | force computation along |
procedure, public :: ms_fz | force computation along |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(MS_FE_FILM), | intent(inout) | :: | ms_fe_f | MS FE film |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(MS_FE_FILM), | intent(inout) | :: | ms_fe_f |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(MS_FE_FILM), | intent(inout) | :: | ms_fe_f |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(DATA_FILM), | intent(inout) | :: | data_f | data of the film |
||
integer(kind=I4), | intent(in) | :: | bs_nx | number of nodes in direction for the bottom scale |
||
integer(kind=I4), | intent(in) | :: | bs_ny | number of nodes in direction for the bottom scale |
||
type(NUM_PAR), | intent(in) | :: | num_pts | numerical parameters for iterative solution, top scale |
||
type(NUM_PAR), | intent(in) | :: | num_pbs | numerical parameters for iterative solution, bottom scale |
||
type(MS_FE_FILM), | intent(inout) | :: | ms_fe_f | MS FE film |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(MS_FE_FILM), | intent(inout) | :: | ms_fe_f | multi-scale FE film |
||
type(MS_MAT_SOLV), | intent(inout) | :: | ms_mat | multi-scale solver matrices |
||
real(kind=R8), | intent(in), | dimension(MAX_NNC) | :: | bc | boundary conditions at the corners |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(MS_FE_FILM), | intent(in) | :: | ms_fe_f | |||
character(len=*), | intent(in) | :: | file_name | filename like "./out/pressure.sur" |
||
integer(kind=I4), | intent(in) | :: | code | saved information like P_N |
||
logical(kind=I4), | intent(in) | :: | nodal | if false : cell value, if true : nodal value |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(MS_FE_FILM), | intent(in) | :: | ms_fe_f | |||
integer(kind=I4), | intent(in) | :: | code | saved information like P_N |
||
logical(kind=I4), | intent(in) | :: | nodal | if false : cell value, if true : nodal value |
||
real(kind=R8), | intent(inout), | allocatable | :: | mat(:,:) | output matrix containing the information |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(MS_FE_FILM), | intent(inout) | :: | ms_fe_f | |||
integer(kind=I4), | intent(in) | :: | code | saved information like P_N |
||
logical(kind=I4), | intent(in) | :: | nodal | if false : cell value, if true : nodal value |
||
real(kind=R8), | intent(in), | dimension(:,:) | :: | mat | input matrix containing the information |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(MS_FE_FILM), | intent(inout) | :: | ms_fe_f | |||
integer(kind=I4), | intent(in) | :: | code | saved information like P_N |
||
logical(kind=I4), | intent(in) | :: | nodal | if false : cell value, if true : nodal value |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=R8), | intent(inout), | dimension(nx, ny) | :: | mat | matrix |
|
integer(kind=I4), | intent(in) | :: | nx | matrix x size |
||
integer(kind=I4), | intent(in) | :: | ny | matrix y size |
||
integer(kind=I4), | intent(in) | :: | s | kernel size |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(MS_FE_FILM), | intent(inout) | :: | ms_fe_f | |||
type(MS_MAT_SOLV), | intent(inout) | :: | ms_mat | solver type matrices table |
||
integer(kind=I4), | intent(in) | :: | ass_c | assembly type |