radius_vdw.m

Contents

Version

2.11

Contact

Please report problems/bugs to michael.holmboe@umu.se

Examples

function rvdw = radius_vdw(Atom_label)

if ~iscell(Atom_label)
    Atom_label={Atom_label};
end

rvdw={...
    'H'  0.5834 1 'Hydrogen'; ...
    'Hw' 0.5834 1 'Hydrogen'; ...
    'HW1' 0.5834 1 'Hydrogen'; ...
    'HW2' 0.5834 1 'Hydrogen'; ...
    'He' 1.43 2 'Helium'; ...
    'Li' 2.12 3 'Lithium'; ...
    'Be' 1.98 4 'Beryllium'; ...
    'B'  1.91 5 'Boron'; ...
    'C'  1.77 6 'Carbon'; ...
    'N'  1.66 7 'Nitrogen'; ...
    'O'  1.50 8 'Oxygen'; ...
    'OW' 1.50 8 'Oxygen';...
    'F'  1.46 9 'Fluorine'; ...
    'Ne' 1.58 10 'Neon'; ...
    'Na' 2.50 11 'Sodium'; ...
    'Mg' 2.51 12 'Magnesium'; ...
    'Al' 2.25 13 'Aluminum'; ...
    'Si' 2.19 14 'Silicon'; ...
    'P'  1.90 15 'Phosphorus'; ...
    'S'  1.89 16 'Sulfur'; ...
    'Cl' 1.82 17 'Chlorine'; ...
    'Ar' 1.83 18 'Argon'; ...
    'K'  2.73 19 'Potassium'; ...
    'Ca' 2.62 20 'Calcium'; ...
    'Sc' 2.58 21 'Scandium'; ...
    'Ti' 2.46 22 'Titanium'; ...
    'V'  2.42 23 'Vanadium'; ...
    'Cr' 2.45 24 'Chromium'; ...
    'Mn' 2.45 25 'Manganese'; ...
    'Fe' 2.45 26 'Iron'; ...
    'Co' 2.40 27 'Cobalt'; ...
    'Ni' 2.40 28 'Nickel'; ...
    'Cu' 2.38 29 'Copper'; ...
    'Zn' 2.39 30 'Zinc'; ...
    'Ga' 2.32 31 'Gallium'; ...
    'Ge' 2.29 32 'Germanium'; ...
    'As' 1.88 33 'Arsenic'; ...
    'Se' 1.82 34 'Selenium'; ...
    'Br' 1.86 35 'Bromine'; ...
    'Kr' 2.25 36 'Krypton'; ...
    'Rb' 3.21 37 'Rubidium'; ...
    'Sr' 2.84 38 'Strontium'; ...
    'Y'  2.75 39 'Yttrium'; ...
    'Zr' 2.52 40 'Zirconium'; ...
    'Nb' 2.56 41 'Niobium'; ...
    'Mo' 2.45 42 'Molybdenum'; ...
    'Tc' 2.44 43 'Technetium'; ...
    'Ru' 2.46 44 'Ruthenium'; ...
    'Rh' 2.44 45 'Rhodium'; ...
    'Pd' 2.15 46 'Palladium'; ...
    'Ag' 2.53 47 'Silver'; ...
    'Cd' 2.49 48 'Cadmium'; ...
    'In' 2.43 49 'Indium'; ...
    'Sn' 2.42 50 'Tin'; ...
    'Sb' 2.45 51 'Antimony'; ...
    'Te' 1.99 52 'Tellurium'; ...
    'I'  2.04 53 'Iodine'; ...
    'Xe' 2.06 54 'Xenon'; ...
    'Cs' 3.48 55 'Cesium'; ...
    'Ba' 3.03 56 'Barium'; ...
    'La' 2.98 57 'Lanthanum'; ...
    'Ce' 2.88 58 'Cerium'; ...
    'Pr' 2.92 59 'Praseodymium'; ...
    'Nd' 2.95 60 'Neodymium'; ...
    'Pm' 2.92 61 'Promethium'; ...
    'Sm' 2.90 62 'Samarium'; ...
    'Eu' 2.87 63 'Europium'; ...
    'Gd' 2.83 64 'Gadolinium'; ...
    'Tb' 2.79 65 'Terbium'; ...
    'Dy' 2.87 66 'Dysprosium'; ...
    'Er' 2.83 68 'Erbium'; ...
    'Tm' 2.79 69 'Thulium'; ...
    'Yb' 2.80 70 'Ytterbium'; ...
    'Lu' 2.74 71 'Lutetium'; ...
    'Hf' 2.63 72 'Hafnium'; ...
    'Ta' 2.53 73 'Tantalum'; ...
    'W'  2.57 74 'Tungsten'; ...
    'Re' 2.49 75 'Rhenium'; ...
    'Ir' 2.41 77 'Iridium'; ...
    'Pt' 2.29 78 'Platinum'; ...
    'Au' 2.32 79 'Gold'; ...
    'Hg' 2.45 80 'Mercury'; ...
    'Tl' 2.47 81 'Thallium'; ...
    'Pb' 2.60 82 'Lead'; ...
    'Bi' 2.54 83 'Bismuth'; ...
    'Po' 2.50 84 'Polonium'; ...
    'At' 2.50 85 'Astatine'; ...
    'Rn' 2.50 86 'Radon'; ...
    'Fr' 2.50 87 'Francium'; ...
    'Ra' 2.50 88 'Radium'; ...
    'Ac' 2.80 89 'Actinium'; ...
    'Th' 2.93 90 'Thorium'; ...
    'Pa' 2.88 91 'Protactinium'; ...
    'U'  2.71 92 'Uranium'; ...
    'Np' 2.82 93 'Neptunium'; ...
    'Pu' 2.81 94 'Plutonium'; ...
    'Am' 2.83 95 'Americium'; ...
    'Cm' 3.05 96 'Curium'; ...
    'Bk' 3.40 97 'Berkelium'; ...
    'Cf' 3.05 98 'Californium'; ...
    'Es' 2.70 99 'Einsteinium'};

% 'Ho' 2.81 67 'Holmium'; ...
% 'Os' 2.48 76 'Osmium'; ...


ind=[];ind_array=[];
if iscell(Atom_label) && length(Atom_label) > 1
    for i=1:length(Atom_label)
        ind=find(strncmpi(Atom_label(i),rvdw(:,1),2));
        if numel(ind) == 0
            ind=find(strncmpi(Atom_label(i),rvdw(:,1),1));
            if numel(ind) == 0
                disp('Could not find radii for')
                disp(Atom_label(i))
                disp('setting vdw radii to 1.50 Å')
                ind = 11;
            end
        end
        ind_array=[ind_array ind(1)];
    end
    ind=ind_array;
elseif length(Atom_label) == 1
    ind=find(strncmpi(Atom_label,rvdw(:,1),2));
    if numel(ind) == 0
        ind=find(strncmpi(Atom_label,rvdw(:,1),1));
        if numel(ind) == 0
            disp('Could not find radii for')
            disp(Atom_label)
            disp('setting vdw radii to 1.50 Å')
            ind = 11;
        else
            ind=ind(1);
        end
    end
else
    disp('Could not find radii for')
    disp(Atom_label)
    disp('setting vdw radii to 1.50 Å')
    ind = 11;
end

rvdw = cell2mat(rvdw(ind,2));