- Module add_div_stress_tensor
[AJ]:: Generalize explicit formulation to rectilinear grids. Currently only supports Cartesian grids.
- Module containers
- documentation
- Module doc_discretization_node_level_schemes
- Use the
type_discrete_stencil for all submodule
- Module doc_finite_differences_schemes
- MCO: correct this depracated documentation If you have a particular numerical scheme that you want to implement, you should follow the main
scheme_builder_non_uniform interface. To do so, simply write a function that simply:
- define the fd_scheme's boundaries (thanks to the
fd_scheme%declare_stencil member routine)
- fill the
fd_scheme%stencilweight array
- returns the
fd_scheme
- Module doc_point_interpolation
- MCO: do a proper integration of "Lagrange" point interpolation in the new framework. But before I need to test for efficiency matters.
- Page How to simulate with adaptative time steps
- Implement the same keyword for diffusion equation.
- Module io_read_global_cell_file
- do the routine with MPI IO
- Subprogram mod_add_cell_diffusion_term_centered_o2::add_cell_diffusion_term_centered_o2 (matrix, flux_coef, equation_stencil, equation_ls_map)
- check order with irregular grids
- Subprogram mod_add_face_bc_tangent::add_face_bc_tangent (matrix, rhs, boundary_condition, face_equation_stencil, face_equation_ls_map)
- check for irregular mesh
- Subprogram mod_add_face_bc_tangent_noghost::add_face_bc_tangent_noghost (matrix, rhs, boundary_condition, face_equation_stencil, face_equation_ls_map)
- check for irregular mesh
- Subprogram mod_apply_cell_advection_scheme::apply_cell_advection_generic_upwind_reconstruction_scheme (coefficient, velocity, matrix_line, rec_fast_scheme_backward, rec_fast_scheme_forward, ns, i, j, k)
The coefficient argument could be factorized.
- Subprogram mod_apply_cell_advection_scheme::apply_cell_advection_houc3_scheme (coefficient, velocity, matrix_line, ns, i, j, k)
The coefficient argument could be factorized.
- Subprogram mod_apply_cell_advection_scheme::apply_cell_advection_o1_upwind_scheme (coefficient, velocity, matrix_line, ns, i, j, k)
The coefficient argument could be factorized.
- Subprogram mod_apply_cell_advection_scheme::apply_cell_advection_o2_centered_scheme (coefficient, velocity, matrix_line, ns, i, j, k)
The coefficient argument could be factorized.
- Subprogram mod_apply_cell_advection_scheme::apply_cell_advection_o2_upwind_scheme (coefficient, velocity, matrix_line, ns, i, j, k)
The coefficient argument could be factorized.
- Subprogram mod_apply_cell_advection_scheme::apply_cell_advection_quick_scheme (coefficient, velocity, matrix_line, ns, i, j, k)
The coefficient argument could be factorized.
- Subprogram mod_apply_cell_diffusion_scheme::apply_cell_diffusion_o2_centered_scheme (face_diffusion_coefficient, matrix_line, ns, i, j, k, extra_inside_gradient_coef2)
- check order with irregular grids
- Subprogram mod_arrays::is_in_array (val, array)
- replace this routine by the intrinsic Fortran procedure 'findloc'
- Subprogram mod_compute_cell_advection_term_exp_semi_lagrangian::compute_cell_advection_term_exp_semi_lagrangian (velocity, time_step, scalar, flux_type, directions, divut)
MCO: 3rd dimension
MCO: deal with boundaries
MCO: correct with reconstruction of the field
MCO: question the precision with Eulerian vs RK schemes
MCO: deal with splitted method (with "directions")
- Subprogram mod_compute_cell_cons_advection_term_exp_generic_weno::compute_cell_advection_term_explicit_weno3_fd (velocity, scalar, divut)
- [AJ]: Generalize for rectilinear grids. Only supports Cartesian grids.
- Subprogram mod_compute_cell_cons_advection_term_exp_generic_weno::compute_cell_advection_term_explicit_weno5_fd (velocity, scalar, divut)
- [AJ]: Generalize for rectilinear grids. Only supports Cartesian grids.
- Subprogram mod_compute_cell_diffusion_term_explicit_centered::compute_cell_diffusion_term_explicit_centered_o2 (div_grad_phi, phi, flux_coef)
check order with irregular grids
- Subprogram mod_compute_cell_diffusion_term_explicit_centered::compute_cell_diffusion_term_explicit_centered_o4 (div_grad_phi, phi, flux_coef)
- [AJ] Generalize \( 4^{th} \) order scheme for rectilinear grids.
- Subprogram mod_compute_div_u_psi_term_explicit_generic_fast_weno::compute_div_u_psi_term_explicit_generic_fast_weno (psi, velocity, dt, flux_type, directions, divupsi, weno_scheme_backward, weno_scheme_forward)
- MCO: use the mean face value for the velocity at orthogonal faces
- Subprogram mod_compute_div_u_psi_term_explicit_generic_fast_weno::compute_div_u_psi_term_generic_fast_weno_godunov (psi, velocity, dt, flux_type, directions, divupsi, weno_scheme_backward, weno_scheme_forward)
- MCO: use the mean face value for the velocity at orthogonal faces
- Subprogram mod_compute_div_u_psi_term_explicit_generic_fast_weno::compute_div_u_psi_term_generic_fast_weno_upwind (psi, velocity, dt, flux_type, directions, divupsi, weno_scheme_backward, weno_scheme_forward)
- MCO: use the mean face value for the velocity at orthogonal faces
- Subprogram mod_compute_div_u_psi_term_explicit_generic_weno::compute_div_u_psi_term_explicit_generic_weno (psi, velocity, dt, flux_type, directions, divupsi, weno_scheme_backward, weno_scheme_forward)
- MCO: use the mean face value for the velocity at orthogonal faces
- Subprogram mod_compute_div_u_psi_term_explicit_generic_weno::compute_face_advection_term_explicit_weno3_fd (velocityl, velocityr, advec_explicit)
- [AJ]: Generalize for rectilinear grids. Only supports Cartesian grids.
- Subprogram mod_compute_div_u_psi_term_explicit_generic_weno::compute_face_advection_term_explicit_weno5_fd (velocityl, velocityr, advec_explicit)
- [AJ]: Generalize for rectilinear grids. Only supports Cartesian grids.
- Subprogram mod_compute_stress_tensor::compute_stress_tensor (stress_tensor, velocity, viscosity)
- extrapolation on ghost boundary cells
- Subprogram mod_compute_stress_tensor_divergence::compute_stress_tensor_divergence (stress_tensor, stress_tensor_divergence)
- extrapolation on ghost boundary cells
- Subprogram mod_discretize_cell_advection_term::discretize_cell_advection_term (matrix, coefficient, divergence, equation_advection_term_discretization_type, equation_advection_term_scheme, equation_has_div_u_advection_term, equation_has_immersed_boundaries, equation_ib_has_one_sided_inner_discretization, equation_ib_inner_discretization_order, equation_stencil, time_step_n, time_step, equation_cfl_cell_advection, scalar_field_n, equation_explicit_time_order_discretization, flux_type, boundary_condition, equation_ls_map, velocity_nm1, velocity_n, velocity, work_cell_field, equation_advection_term_splitting_scheme, equation_splitting_time_coef, directional_splitting, ibc_variable, equation_isd_target)
- Consider velocity interpolation when STRETCHED RECTILINEAR MESH are used.
- Module mod_discretize_cell_explicit_diffusion_term_o2
- to be improved for 1st/2nd order ibm.
- Subprogram mod_explicit_add_cell_bc::explicit_add_cell_bc (scalar, boundary_condition)
- MCO: do better extrapolation (not sequential)
- Subprogram mod_explicit_add_cell_bc_nh::explicit_add_cell_bc_nh (scalar)
- MCO: unalloc bc_value
- Subprogram mod_extrapolate_cells_outside_boundaries::extrapolate_cells_outside_boundaries (field, fd_order)
- MCO Deal with corners (currently covered by other dimensions)
- Subprogram mod_extrapolate_cells_outside_boundaries::extrapolate_cells_outside_boundaries_generic (field, backward_scheme, forward_scheme)
- MCO Deal with corners (currently covered by other dimensions)
- Subprogram mod_extrapolate_faces_outside_boundaries::extrapolate_faces_outside_boundaries (field, fd_order)
- MCO Deal with corners (currently covered by other dimensions)
- Subprogram mod_extrapolate_faces_outside_boundaries::extrapolate_faces_outside_boundaries_generic (field, backward_scheme, forward_scheme)
- MCO Deal with corners (currently covered by other dimensions)
- Subprogram mod_extrapolate_faces_to_faces::extrapolate_faces_to_faces (field, scheme, axis, index)
- MCO evaluate the efficiency of the use of field(:,index+schemedir,:)
- Subprogram mod_finalize_cell_linear_system::finalize_cell_linear_system (matrix, rhs, stencil_size, equation_ls_map)
- improve unused nodes values
- Subprogram mod_finalize_face_linear_system::finalize_face_linear_system (matrix, rhs, stencil_size, equation_face_ls_map)
- improve unused nodes values (extrapolation)
- Module mod_finite_differences_scheme_fifth_o1
- MCO: introduce variable steps
- Module mod_finite_differences_scheme_fifth_o2
- MCO: introduce variable steps
- Module mod_finite_differences_scheme_first_o5
- MCO: introduce variable steps
- Module mod_finite_differences_scheme_first_o6
- MCO: introduce variable steps
- Subprogram mod_finite_differences_scheme_fourth_o1::t_fd_scheme_fourth_o1_backward_fill (self, steps)
- MCO: implement the variable step formula
- Subprogram mod_finite_differences_scheme_fourth_o1::t_fd_scheme_fourth_o1_forward_fill (self, steps)
- MCO: implement the variable step formula
- Module mod_finite_differences_scheme_fourth_o2
- MCO: introduce variable steps
- Module mod_finite_differences_scheme_fourth_o3
- MCO: introduce variable steps
- Module mod_finite_differences_scheme_second_o5
- MCO: introduce variable steps
- Module mod_finite_differences_scheme_sixth_o1
- MCO: introduce variable steps
- Subprogram mod_finite_differences_scheme_third_o2::t_fd_scheme_third_o2_backward_fill (self, steps)
- MCO: implement the variable step formula
- Subprogram mod_finite_differences_scheme_third_o2::t_fd_scheme_third_o2_forward_fill (self, steps)
- MCO: implement the variable step formula
- Module mod_finite_differences_scheme_third_o3
- MCO: introduce variable steps
- Module mod_finite_differences_scheme_third_o4
- MCO: introduce variable steps
- Module mod_generic_list
documentation
- Module mod_generic_stack
documentation
- Subprogram mod_gradient_operator_cell_to_face::gradient_operator_cell_to_face (gradient, array, order)
- MCO: deal with point/mean quantity
- Subprogram mod_interpolate_scalar_cell_to_vertices::interpolate_scalar_cell_to_vertices (field_cell, field_vertices, order)
- deal with the boundaries (extrapolate?) With the index (i,j,k) corresponding to the intersection of cells (i+{0,1},j+{0,1},k+{0,1})
- Subprogram mod_interpolate_scalar_cell_to_vertices::interpolate_scalar_cell_to_vertices_generic (field_cell, field_vertices, scheme)
- deal with the boundaries (extrapolate?) With the index (i,j,k) corresponding to the intersection of cells (i+{0,1},j+{0,1},k+{0,1})
- Subprogram mod_interpolation_computer::int_weno_compute_from_array (scheme, int_step, step_array, array, index, fv)
- MCO derivate from ext_scheme would be better
- Subprogram mod_interpolation_weno_scheme_o5z::t_int_weno_scheme_o5z_backward_apply (self, step, steps, values)
MCO: compute the appropriate smoothness_indicator factors
MCO: compute the optimal gamma factors with "step"
- Subprogram mod_interpolation_weno_scheme_o5z_reconstruction::t_int_weno_scheme_o5z_reconstruction_backward_apply_opt (self, step, steps, values)
- MCO: compute the optimal gamma factors with variables steps
- Subprogram mod_lsm_advect::levelset_advect (ls, dt, velocity_nm1, velocity_n, velocity_np1, dt_nm1, dt_n)
- MCO: plug back refined grid (bnd cond not ready for it)
- Subprogram mod_lsm_advect_eulerian_euler::levelset_advect_eulerian_weno5_nssp32 (levelset, velocity_nm1, velocity_n, velocity_np1, local_time, dt_nm1, dt_n, time_step)
- MCO: the boundary conditions are at time \(t^n\), even during the RK integration!
- Subprogram mod_lsm_band::compute_levelset_band (levelset_field, levelset_band, width)
- Could be optimized by precomputing the corners values
- Subprogram mod_lsm_cp_field::compute_closest_point_array (cp_array, ls, cp_rest)
MCO: now cp_rest can be safely removed!
: check this function for grid
- Subprogram mod_lsm_curvature::compute_levelset_curvature_div_n (my_levelset, curvature)
- MCO: find another solution for bndc
- Subprogram mod_lsm_normal::compute_levelset_gradient_outline (my_levelset, gradient, order)
- documentation missing
- Subprogram mod_lsm_volume_fraction_bc::translate_vf_bc_to_ls_bc (phi, vf_boundary_condition, ls_boundary_condition)
- MCO: deal with Neumann bndc (impose Dirichlet with distance function)
- Subprogram mod_mpi_grid_info::grid_information ()
- JPI: to document and to summarize?
- Subprogram mod_mpi_localization::get_neighbor_id_containing_point (position)
- Write the function answering the former note.
- Subprogram mod_point_interpolation_field::reconstruct_face_field_comp (field, pos, order, comp)
- MCO
- Subprogram mod_point_interpolation_prepare::interpolation_set_stencil_centered (data, xxi, yyi, zzi, xo, yo, zo)
- : Print a graceful exit message when nx == 1. Currently, it should produce an array overflow.
- Subprogram mod_point_interpolation_prepare::interpolation_set_stencil_oriented (data, i_pi, j_pi, k_pi, tx, ty, tz)
- : Treat domain boundaries.
- Module mod_rec_d_point_lagrange_o1
- MCO: For 2D and 3D: those are only for derivative in the x direction, we should do y and z too
- Module mod_rec_d_point_lagrange_o2
- MCO: For 2D and 3D: those are only for derivative in the x direction, we should do y and z too
- Module mod_rec_d_point_lagrange_o3
- MCO: For 2D and 3D: those are only for derivative in the x direction, we should do y and z too
- Subprogram mod_staggered_indice_links::staggered_indice_links ()
- finish documentation
- Module type_edge_field
- finish doc
- Module type_face_field
- finish doc
- Module type_face_vector_gradient
- finish doc
- Module type_fv_flux
- MCO: details needed here
- Module type_int_fast_scheme
- MCO: gfortran is making the code crash when using the inner compute_weights() method, while ifort is fine with it. For now, use a supplied procedure given to precompte(). When the problem is solved, switch back to overloaded compute_weights call, much more elegant.
- Subprogram type_int_fast_scheme::t_int_fast_scheme_apply_dummy (self, values)
- Throw exception
- Subprogram type_int_point_1d::int_point_1d_construct (self, index_start, index_end)
- MCO: bring back the "construct" function instead for more clarity
- Subprogram type_int_point_weno_2d::int_point_weno_2d_interpolate (self, x, coordinates_x, coordinates_y, values, derivatives, cv_x, cv_y)
- MCO: deal with reconstruction schemes for 2D
- Subprogram type_int_point_weno_3d::int_point_weno_3d_interpolate (self, x, coordinates_x, coordinates_y, coordinates_z, values, derivatives, cv_x, cv_y, cv_z)
- MCO: deal with reconstruction schemes for 3D
- Subprogram type_levelset::levelset_constructor (self, parameters)
- Treat periodic boundaries
- Subprogram type_levelset::levelset_destructor (self)
- MCO: with modern Fortran, it is no more necessary to unallocate the various arrays
- Subprogram type_levelset::levelset_set (self, phi)
- MCO: the function compute_initial_info() is not callable before the phase_advection_grid_volume is initialized, hence we cannot call it here when the LS is set by the UI!
- Subprogram type_particle_list::t_particle_list_mpi_exchange (self)
- This could be done with less memory usage by using a map of destination nodes or a real list of outgoing particles
- Module type_stress_tensor
- finish doc