@@ -25,7 +25,6 @@ module m_derived_variables
2525 private; public :: s_initialize_derived_variables_module, &
2626 s_derive_specific_heat_ratio, &
2727 s_derive_liquid_stiffness, &
28- s_derive_sound_speed, &
2928 s_derive_flux_limiter, &
3029 s_derive_vorticity_component, &
3130 s_derive_qm, &
@@ -167,62 +166,6 @@ contains
167166
168167 end subroutine s_derive_liquid_stiffness
169168
170- !> This subroutine admits as inputs the primitive variables,
171- !! the density, the specific heat ratio function and liquid
172- !! stiffness function. It then computes from those variables
173- !! the values of the speed of sound, which are stored in the
174- !! derived flow quantity storage variable, q_sf.
175- !! @param q_prim_vf Primitive variables
176- !! @param q_sf Speed of sound
177- subroutine s_derive_sound_speed (q_prim_vf , q_sf )
178-
179- type(scalar_field), &
180- dimension (sys_size), &
181- intent (in ) :: q_prim_vf
182-
183- real (wp), &
184- dimension (- offset_x%beg:m + offset_x%end, &
185- - offset_y%beg:n + offset_y%end, &
186- - offset_z%beg:p + offset_z%end), &
187- intent (inout ) :: q_sf
188-
189- integer :: i, j, k !< Generic loop iterators
190-
191- ! Fluid bulk modulus for alternate sound speed
192- real (wp) :: blkmod1, blkmod2
193-
194- ! Computing speed of sound values from those of pressure, density,
195- ! specific heat ratio function and the liquid stiffness function
196- do k = - offset_z%beg, p + offset_z%end
197- do j = - offset_y%beg, n + offset_y%end
198- do i = - offset_x%beg, m + offset_x%end
199-
200- ! Compute mixture sound speed
201- if (alt_soundspeed .neqv. .true. ) then
202- q_sf(i, j, k) = (((gamma_sf(i, j, k) + 1._wp )* &
203- q_prim_vf(E_idx)%sf(i, j, k) + &
204- pi_inf_sf(i, j, k))/ (gamma_sf(i, j, k)* &
205- rho_sf(i, j, k)))
206- else
207- blkmod1 = ((gammas(1 ) + 1._wp )* q_prim_vf(E_idx)%sf(i, j, k) + &
208- pi_infs(1 ))/ gammas(1 )
209- blkmod2 = ((gammas(2 ) + 1._wp )* q_prim_vf(E_idx)%sf(i, j, k) + &
210- pi_infs(2 ))/ gammas(2 )
211- q_sf(i, j, k) = (1._wp / (rho_sf(i, j, k)* (q_prim_vf(adv_idx%beg)%sf(i, j, k)/ blkmod1 + &
212- (1._wp - q_prim_vf(adv_idx%beg)%sf(i, j, k))/ blkmod2)))
213- end if
214-
215- if (mixture_err .and. q_sf(i, j, k) < 0._wp ) then
216- q_sf(i, j, k) = 1.e-16_wp
217- else
218- q_sf(i, j, k) = sqrt (q_sf(i, j, k))
219- end if
220- end do
221- end do
222- end do
223-
224- end subroutine s_derive_sound_speed
225-
226169 !> This subroutine derives the flux_limiter at cell boundary
227170 !! i+1 / 2 . This is an approximation because the velocity used
228171 !! to determine the upwind direction is the velocity at the
@@ -320,52 +263,6 @@ contains
320263 end do
321264 end subroutine s_derive_flux_limiter
322265
323- !> Computes the solution to the linear system Ax= b w/ sol = x
324- !! @param A Input matrix
325- !! @param b right- hane- side
326- !! @param sol Solution
327- !! @param ndim Problem size
328- subroutine s_solve_linear_system (A , b , sol , ndim )
329-
330- integer , intent (in ) :: ndim
331- real (wp), dimension (ndim, ndim), intent (inout ) :: A
332- real (wp), dimension (ndim), intent (inout ) :: b
333- real (wp), dimension (ndim), intent (out ) :: sol
334-
335- !EXTERNAL DGESV
336-
337- integer :: i, j, k
338-
339- ! Solve linear system using own linear solver (Thomson/ Darter/ Comet/ Stampede)
340- ! Forward elimination
341- do i = 1 , ndim
342- ! Pivoting
343- j = i - 1 + maxloc (abs (A(i:ndim, i)), 1 )
344- sol = A(i, :)
345- A(i, :) = A(j, :)
346- A(j, :) = sol
347- sol(1 ) = b(i)
348- b(i) = b(j)
349- b(j) = sol(1 )
350- ! Elimination
351- b(i) = b(i)/ A(i, i)
352- A(i, :) = A(i, :)/ A(i, i)
353- do k = i + 1 , ndim
354- b(k) = b(k) - A(k, i)* b(i)
355- A(k, :) = A(k, :) - A(k, i)* A(i, :)
356- end do
357- end do
358-
359- ! Backward substitution
360- do i = ndim, 1 , - 1
361- sol(i) = b(i)
362- do k = i + 1 , ndim
363- sol(i) = sol(i) - A(i, k)* sol(k)
364- end do
365- end do
366-
367- end subroutine s_solve_linear_system
368-
369266 !> This subroutine receives as inputs the indicator of the
370267 !! component of the vorticity that should be outputted and
371268 !! the primitive variables. From those inputs, it proceeds
0 commit comments