tokenize Function

public function tokenize(s, ib, ntok)

Uses

  • proc~~tokenize~~UsesGraph proc~tokenize tokenize module~mod_memory mod_memory proc~tokenize->module~mod_memory module~mod_io mod_io module~mod_memory->module~mod_io module~mod_constants mod_constants module~mod_memory->module~mod_constants iso_c_binding iso_c_binding module~mod_memory->iso_c_binding module~mod_io->module~mod_constants module~mod_constants->iso_c_binding

This function is used to subsequently break a string into tokens. Tokens separators are any number of spaces.
If just the string is provided, the function returns the position of the first printable character;
If also ib is provided it saves the position of the first printable character after position ib (or ib itself) in ib and return the position of the last printable character before the first space after ib. If ntok is specified instead of a single token, ntok are returned. In case of last token hitten -1 is returned.
To divide a string follow the following scheme:
1. ib = tokenize(s)
2. ie = tokenize(s, ib)
3. tok1 = s(ib:ie)
4a. ib = ib+1
4b. ie = tokenize(s, ib)
5. tok2 = s(ib:ie)

Arguments

Type IntentOptional Attributes Name
character(len=OMMP_STR_CHAR_MAX), intent(in) :: s

String to subdivide in token

integer(kind=ip), intent(inout), optional :: ib

Index where to start token research (input)/Index where token begins (output)

integer(kind=ip), intent(in), optional :: ntok

Number of token to be extracted

Return Value integer(kind=ip)

Index where token ends.


Called by

proc~~tokenize~~CalledByGraph proc~tokenize tokenize proc~assign_pol assign_pol proc~assign_pol->proc~tokenize proc~assign_strtor assign_strtor proc~assign_strtor->proc~tokenize proc~read_atom_cards read_atom_cards proc~assign_strtor->proc~read_atom_cards proc~assign_imptorsion assign_imptorsion proc~assign_imptorsion->proc~tokenize proc~assign_imptorsion->proc~read_atom_cards proc~assign_strbnd assign_strbnd proc~assign_strbnd->proc~tokenize proc~assign_strbnd->proc~read_atom_cards proc~assign_pitors assign_pitors proc~assign_pitors->proc~tokenize proc~assign_pitors->proc~read_atom_cards proc~assign_opb assign_opb proc~assign_opb->proc~tokenize proc~assign_opb->proc~read_atom_cards proc~assign_angtor assign_angtor proc~assign_angtor->proc~tokenize proc~assign_angtor->proc~read_atom_cards proc~assign_tortors assign_tortors proc~assign_tortors->proc~tokenize proc~assign_tortors->proc~read_atom_cards proc~check_keyword check_keyword proc~check_keyword->proc~tokenize proc~assign_mpoles assign_mpoles proc~assign_mpoles->proc~tokenize proc~assign_bond assign_bond proc~assign_bond->proc~tokenize proc~assign_bond->proc~read_atom_cards proc~read_atom_cards->proc~tokenize proc~assign_torsion assign_torsion proc~assign_torsion->proc~tokenize proc~assign_torsion->proc~read_atom_cards proc~get_prm_ff_type get_prm_ff_type proc~get_prm_ff_type->proc~tokenize proc~assign_urey assign_urey proc~assign_urey->proc~tokenize proc~assign_urey->proc~read_atom_cards proc~check_keyword~2 check_keyword proc~check_keyword~2->proc~tokenize proc~assign_angle assign_angle proc~assign_angle->proc~tokenize proc~assign_angle->proc~read_atom_cards proc~assign_vdw assign_vdw proc~assign_vdw->proc~tokenize proc~assign_vdw->proc~read_atom_cards proc~mmpol_init_from_xyz mmpol_init_from_xyz proc~mmpol_init_from_xyz->proc~assign_pol proc~mmpol_init_from_xyz->proc~assign_strtor proc~mmpol_init_from_xyz->proc~assign_imptorsion proc~mmpol_init_from_xyz->proc~assign_strbnd proc~mmpol_init_from_xyz->proc~assign_pitors proc~mmpol_init_from_xyz->proc~assign_opb proc~mmpol_init_from_xyz->proc~assign_angtor proc~mmpol_init_from_xyz->proc~assign_tortors proc~mmpol_init_from_xyz->proc~assign_mpoles proc~mmpol_init_from_xyz->proc~assign_bond proc~mmpol_init_from_xyz->proc~assign_torsion proc~mmpol_init_from_xyz->proc~get_prm_ff_type proc~mmpol_init_from_xyz->proc~assign_urey proc~mmpol_init_from_xyz->proc~check_keyword~2 proc~mmpol_init_from_xyz->proc~assign_angle proc~mmpol_init_from_xyz->proc~assign_vdw proc~ommp_system_from_qm_helper ommp_system_from_qm_helper proc~ommp_system_from_qm_helper->proc~assign_pol proc~ommp_system_from_qm_helper->proc~assign_strtor proc~ommp_system_from_qm_helper->proc~assign_imptorsion proc~ommp_system_from_qm_helper->proc~assign_strbnd proc~ommp_system_from_qm_helper->proc~assign_pitors proc~ommp_system_from_qm_helper->proc~assign_opb proc~ommp_system_from_qm_helper->proc~assign_angtor proc~ommp_system_from_qm_helper->proc~assign_tortors proc~ommp_system_from_qm_helper->proc~assign_mpoles proc~ommp_system_from_qm_helper->proc~assign_bond proc~ommp_system_from_qm_helper->proc~assign_torsion proc~ommp_system_from_qm_helper->proc~get_prm_ff_type proc~ommp_system_from_qm_helper->proc~assign_urey proc~ommp_system_from_qm_helper->proc~check_keyword~2 proc~ommp_system_from_qm_helper->proc~assign_angle proc~ommp_system_from_qm_helper->proc~assign_vdw proc~init_bonded_for_link_atom init_bonded_for_link_atom proc~init_bonded_for_link_atom->proc~assign_bond proc~init_bonded_for_link_atom->proc~assign_torsion proc~init_bonded_for_link_atom->proc~assign_angle proc~init_eel_for_link_atom init_eel_for_link_atom proc~init_eel_for_link_atom->proc~assign_mpoles proc~qm_helper_init_vdw_prm qm_helper_init_vdw_prm proc~qm_helper_init_vdw_prm->proc~assign_vdw 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 proc~c_ommp_qm_helper_init_vdw_prm C_ommp_qm_helper_init_vdw_prm proc~c_ommp_qm_helper_init_vdw_prm->proc~qm_helper_init_vdw_prm proc~ommp_create_link_atom ommp_create_link_atom proc~ommp_create_link_atom->proc~init_bonded_for_link_atom proc~ommp_create_link_atom->proc~init_eel_for_link_atom proc~ommp_create_link_atom->proc~qm_helper_init_vdw_prm proc~c_ommp_init_xyz C_ommp_init_xyz proc~c_ommp_init_xyz->proc~ommp_init_xyz proc~c_ommp_create_link_atom C_ommp_create_link_atom proc~c_ommp_create_link_atom->proc~ommp_create_link_atom

Contents