matfree Subroutine

public subroutine matfree(m)

Deallocate a boolean sparse matrix (in Yale format)

Arguments

Type IntentOptional Attributes Name
type(yale_sparse), intent(inout) :: m

Matrix to free


Called by

proc~~matfree~~CalledByGraph proc~matfree matfree proc~build_conn_upto_n build_conn_upto_n proc~build_conn_upto_n->proc~matfree proc~topology_terminate topology_terminate proc~topology_terminate->proc~matfree proc~electrostatics_terminate electrostatics_terminate proc~electrostatics_terminate->proc~matfree proc~nl_terminate nl_terminate proc~nl_terminate->proc~matfree proc~check_conn_matrix check_conn_matrix proc~check_conn_matrix->proc~matfree proc~check_conn_matrix->proc~build_conn_upto_n proc~qm_helper_update_coord qm_helper_update_coord proc~qm_helper_update_coord->proc~matfree proc~ommp_update_link_atoms_position ommp_update_link_atoms_position proc~ommp_update_link_atoms_position->proc~qm_helper_update_coord proc~mmpol_prepare mmpol_prepare proc~mmpol_prepare->proc~build_conn_upto_n proc~qm_helper_terminate qm_helper_terminate proc~qm_helper_terminate->proc~topology_terminate proc~vdw_terminate vdw_terminate proc~qm_helper_terminate->proc~vdw_terminate proc~mmpol_init_from_xyz mmpol_init_from_xyz proc~mmpol_init_from_xyz->proc~build_conn_upto_n proc~mmpol_init_from_xyz->proc~check_conn_matrix proc~mmpol_init_from_xyz->proc~mmpol_prepare proc~ommp_system_from_qm_helper ommp_system_from_qm_helper proc~ommp_system_from_qm_helper->proc~build_conn_upto_n proc~ommp_system_from_qm_helper->proc~check_conn_matrix proc~ommp_system_from_qm_helper->proc~mmpol_prepare proc~mmpol_terminate mmpol_terminate proc~mmpol_terminate->proc~topology_terminate proc~mmpol_terminate->proc~electrostatics_terminate proc~mmpol_terminate->proc~vdw_terminate proc~vdw_terminate->proc~nl_terminate proc~vdw_set_cutoff vdw_set_cutoff proc~vdw_set_cutoff->proc~nl_terminate proc~init_vdw_for_link_atom init_vdw_for_link_atom proc~init_vdw_for_link_atom->proc~check_conn_matrix proc~init_bonded_for_link_atom init_bonded_for_link_atom proc~init_bonded_for_link_atom->proc~check_conn_matrix proc~ommp_create_link_atom ommp_create_link_atom proc~ommp_create_link_atom->proc~qm_helper_update_coord proc~ommp_create_link_atom->proc~init_vdw_for_link_atom proc~ommp_create_link_atom->proc~init_bonded_for_link_atom proc~ommp_qm_helper_update_coord ommp_qm_helper_update_coord proc~ommp_qm_helper_update_coord->proc~qm_helper_update_coord proc~c_ommp_qm_helper_update_coord C_ommp_qm_helper_update_coord proc~c_ommp_qm_helper_update_coord->proc~ommp_qm_helper_update_coord proc~ommp_set_vdw_cutoff ommp_set_vdw_cutoff proc~ommp_set_vdw_cutoff->proc~vdw_set_cutoff proc~c_ommp_update_link_atoms_position C_ommp_update_link_atoms_position proc~c_ommp_update_link_atoms_position->proc~ommp_update_link_atoms_position proc~ommp_terminate_qm_helper ommp_terminate_qm_helper proc~ommp_terminate_qm_helper->proc~qm_helper_terminate proc~c_ommp_terminate_qm_helper C_ommp_terminate_qm_helper proc~c_ommp_terminate_qm_helper->proc~qm_helper_terminate proc~mmpol_init_from_mmp mmpol_init_from_mmp proc~mmpol_init_from_mmp->proc~mmpol_prepare proc~update_coordinates_qmmm update_coordinates_qmmm proc~update_coordinates_qmmm->proc~ommp_update_link_atoms_position proc~update_coordinates_qmmm->proc~ommp_qm_helper_update_coord proc~ommp_init_xyz ommp_init_xyz proc~ommp_init_xyz->proc~mmpol_init_from_xyz proc~c_ommp_system_from_qm_helper C_ommp_system_from_qm_helper proc~c_ommp_system_from_qm_helper->proc~ommp_system_from_qm_helper program~test_si_geomgrad test_SI_geomgrad program~test_si_geomgrad->proc~ommp_system_from_qm_helper program~test_si_geomgrad->proc~ommp_terminate_qm_helper proc~ommp_terminate ommp_terminate program~test_si_geomgrad->proc~ommp_terminate program~test_si_geomgrad_num test_SI_geomgrad_num program~test_si_geomgrad_num->proc~ommp_system_from_qm_helper program~test_si_geomgrad_num->proc~ommp_terminate_qm_helper program~test_si_geomgrad_num->proc~ommp_terminate proc~ommp_terminate->proc~mmpol_terminate proc~c_ommp_create_link_atom C_ommp_create_link_atom proc~c_ommp_create_link_atom->proc~ommp_create_link_atom proc~c_ommp_set_vdw_cutoff C_ommp_set_vdw_cutoff proc~c_ommp_set_vdw_cutoff->proc~ommp_set_vdw_cutoff program~test_si_init test_SI_init program~test_si_init->proc~ommp_terminate_qm_helper program~test_si_init->proc~ommp_terminate proc~numerical_geomgrad_qmmm numerical_geomgrad_qmmm proc~numerical_geomgrad_qmmm->proc~update_coordinates_qmmm proc~ommp_init_mmp ommp_init_mmp proc~ommp_init_mmp->proc~mmpol_init_from_mmp program~test_si_potential test_SI_potential program~test_si_potential->proc~ommp_terminate_qm_helper program~test_si_potential->proc~ommp_terminate proc~c_ommp_init_xyz C_ommp_init_xyz proc~c_ommp_init_xyz->proc~ommp_init_xyz proc~c_ommp_terminate C_ommp_terminate proc~c_ommp_terminate->proc~ommp_terminate proc~c_ommp_init_mmp C_ommp_init_mmp proc~c_ommp_init_mmp->proc~ommp_init_mmp

Contents

Source Code


Source Code

        subroutine matfree(m)
            !! Deallocate a boolean sparse matrix (in Yale format) 
            implicit none
            
            type(yale_sparse), intent(inout) :: m !! Matrix to free

            if(allocated(m%ri)) deallocate(m%ri)
            if(allocated(m%ci)) deallocate(m%ci)
            m%n=0_ip
        end subroutine matfree