Project x onto X, the space of old solutions and back again.
More...
|
subroutine | projection_init (this, n, L, activ_step) |
|
subroutine | projection_free (this) |
|
subroutine | projection_pre_solving (this, b, tstep, coef, n, dt_controller, string) |
|
subroutine | projection_post_solving (this, x, Ax, coef, bclst, gs_h, n, tstep, dt_controller) |
|
subroutine | bcknd_project_on (this, b, coef, n) |
|
subroutine | bcknd_project_back (this, x, Ax, coef, bclst, gs_h, n) |
|
subroutine | cpu_project_on (this, b, coef, n) |
|
subroutine | device_project_on (this, b, coef, n) |
|
subroutine | device_proj_ortho (this, xx_d, bb_d, w_d, n) |
|
subroutine | cpu_proj_ortho (this, xx, bb, w, n) |
|
subroutine | print_proj_info (this, string) |
|
subroutine | bcknd_clear (this, n) |
|
- Note
- In this code we assume that the matrix project for the pressure Ax does not vary in time.
◆ bcknd_clear()
subroutine projection::bcknd_clear |
( |
class(projection_t) |
this, |
|
|
integer, intent(in) |
n |
|
) |
| |
|
private |
◆ bcknd_project_back()
subroutine projection::bcknd_project_back |
( |
class(projection_t) |
this, |
|
|
real(kind=rp), dimension(n), intent(inout) |
x, |
|
|
class(ax_t), intent(inout) |
Ax, |
|
|
class(coef_t), intent(inout) |
coef, |
|
|
class(bc_list_t), intent(inout) |
bclst, |
|
|
type(gs_t), intent(inout) |
gs_h, |
|
|
integer, intent(inout) |
n |
|
) |
| |
|
private |
◆ bcknd_project_on()
subroutine projection::bcknd_project_on |
( |
class(projection_t), intent(inout) |
this, |
|
|
real(kind=rp), dimension(n), intent(inout) |
b, |
|
|
class(coef_t), intent(inout) |
coef, |
|
|
integer, intent(inout) |
n |
|
) |
| |
|
private |
◆ cpu_proj_ortho()
subroutine projection::cpu_proj_ortho |
( |
type(projection_t) |
this, |
|
|
real(kind=rp), dimension(n, this%l), intent(inout) |
xx, |
|
|
real(kind=rp), dimension(n, this%l), intent(inout) |
bb, |
|
|
real(kind=rp), dimension(n), intent(inout) |
w, |
|
|
integer, intent(inout) |
n |
|
) |
| |
|
private |
◆ cpu_project_on()
subroutine projection::cpu_project_on |
( |
class(projection_t), intent(inout) |
this, |
|
|
real(kind=rp), dimension(n), intent(inout) |
b, |
|
|
class(coef_t), intent(inout) |
coef, |
|
|
integer, intent(inout) |
n |
|
) |
| |
|
private |
◆ device_proj_ortho()
subroutine projection::device_proj_ortho |
( |
type(projection_t) |
this, |
|
|
type(c_ptr), dimension(this%l) |
xx_d, |
|
|
type(c_ptr), dimension(this%l) |
bb_d, |
|
|
type(c_ptr) |
w_d, |
|
|
integer, intent(inout) |
n |
|
) |
| |
|
private |
◆ device_project_on()
subroutine projection::device_project_on |
( |
class(projection_t), intent(inout) |
this, |
|
|
real(kind=rp), dimension(n), intent(inout) |
b, |
|
|
class(coef_t), intent(inout) |
coef, |
|
|
integer, intent(inout) |
n |
|
) |
| |
|
private |
◆ print_proj_info()
subroutine projection::print_proj_info |
( |
class(projection_t) |
this, |
|
|
character(len=*) |
string |
|
) |
| |
|
private |
◆ projection_free()
subroutine projection::projection_free |
( |
class(projection_t), intent(inout) |
this | ) |
|
|
private |
◆ projection_init()
subroutine projection::projection_init |
( |
class(projection_t), intent(inout), target |
this, |
|
|
integer, intent(in) |
n, |
|
|
integer, intent(in), optional |
L, |
|
|
integer, intent(in), optional |
activ_step |
|
) |
| |
◆ projection_post_solving()
subroutine projection::projection_post_solving |
( |
class(projection_t), intent(inout) |
this, |
|
|
real(kind=rp), dimension(n), intent(inout) |
x, |
|
|
class(ax_t), intent(inout) |
Ax, |
|
|
class(coef_t), intent(inout) |
coef, |
|
|
class(bc_list_t), intent(inout) |
bclst, |
|
|
type(gs_t), intent(inout) |
gs_h, |
|
|
integer, intent(inout) |
n, |
|
|
integer, intent(in) |
tstep, |
|
|
type(time_step_controller_t), intent(in) |
dt_controller |
|
) |
| |
|
private |
◆ projection_pre_solving()
subroutine projection::projection_pre_solving |
( |
class(projection_t), intent(inout) |
this, |
|
|
real(kind=rp), dimension(n), intent(inout) |
b, |
|
|
integer, intent(in) |
tstep, |
|
|
class(coef_t), intent(inout) |
coef, |
|
|
integer, intent(inout) |
n, |
|
|
type(time_step_controller_t), intent(in) |
dt_controller, |
|
|
character(len=*), optional |
string |
|
) |
| |
|
private |