116 |
call oad_tape_push(A_uv_p) |
call oad_tape_push(A_uv_p) |
117 |
call oad_tape_push(A_vu_p) |
call oad_tape_push(A_vu_p) |
118 |
call oad_tape_push(A_vv_p) |
call oad_tape_push(A_vv_p) |
119 |
|
call oad_tape_push(tolerance) |
120 |
call oad_tape_push(mythid) |
call oad_tape_push(mythid) |
121 |
call STREAMICE_CG_SOLVE( |
call STREAMICE_CG_SOLVE( |
122 |
U cg_Uin_p, |
U cg_Uin_p, |
146 |
call oad_tape_pop(cg_Vin_p) |
call oad_tape_pop(cg_Vin_p) |
147 |
call oad_tape_pop(cg_Uin_p) |
call oad_tape_pop(cg_Uin_p) |
148 |
call oad_tape_pop(mythid) |
call oad_tape_pop(mythid) |
149 |
|
call oad_tape_pop(tolerance) |
150 |
call oad_tape_pop(A_vv_p) |
call oad_tape_pop(A_vv_p) |
151 |
call oad_tape_pop(A_vu_p) |
call oad_tape_pop(A_vu_p) |
152 |
call oad_tape_pop(A_uv_p) |
call oad_tape_pop(A_uv_p) |
175 |
A_vv_d = A_vv%d |
A_vv_d = A_vv%d |
176 |
call ADSTREAMICE_CG_SOLVE( |
call ADSTREAMICE_CG_SOLVE( |
177 |
U cg_Uin_p, ! velocities - solution |
U cg_Uin_p, ! velocities - solution |
178 |
I cg_Bu_d, ! adjoint of vel (input) |
I cg_Uin_d, ! adjoint of vel (input) |
179 |
U cg_Vin_p, ! velocities - solution |
U cg_Vin_p, ! velocities - solution |
180 |
I cg_Bv_d, ! adjoint of vel (input) |
I cg_Vin_d, ! adjoint of vel (input) |
181 |
I cg_Bu_p, ! to recalc velocities |
I cg_Bu_p, ! to recalc velocities |
182 |
U cg_Uin_d, ! adjoint of RHS (output) |
U cg_Bu_d, ! adjoint of RHS (output) |
183 |
I cg_Bv_p, ! to recalc velocities |
I cg_Bv_p, ! to recalc velocities |
184 |
U cg_Vin_d, ! adjoint of RHS (output) |
U cg_Bv_d, ! adjoint of RHS (output) |
185 |
I A_uu_p, ! section of matrix that multiplies u and projects on u |
I A_uu_p, ! section of matrix that multiplies u and projects on u |
186 |
U A_uu_d, ! adjoint of matrix coeffs (output) |
U A_uu_d, ! adjoint of matrix coeffs (output) |
187 |
I A_uv_p, ! section of matrix that multiplies v and projects on u |
I A_uv_p, ! section of matrix that multiplies v and projects on u |