Difference between revisions of "Nuclacid.m"
(→See also) |
(Update function See also links and function index membership) |
||
| (7 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
| − | {{DISPLAYTITLE: | + | {{DISPLAYTITLE:nuclacid.m}} __NOTOC__ |
Nucleic acid data import function. This function parses PDB and chemical shift data, runs a J-coupling guess using [[guess_j_nuc.m]] function and outputs sys and inter data structures that are required by [[create.m]] gateway function in ''Spinach''. | Nucleic acid data import function. This function parses PDB and chemical shift data, runs a J-coupling guess using [[guess_j_nuc.m]] function and outputs sys and inter data structures that are required by [[create.m]] gateway function in ''Spinach''. | ||
| Line 6: | Line 6: | ||
[sys,inter]=nuclacid(pdb_file,shift_file,options) | [sys,inter]=nuclacid(pdb_file,shift_file,options) | ||
| − | == | + | ==Parameters== |
pdb_file - a character string containing the name of the PDB file | pdb_file - a character string containing the name of the PDB file | ||
| − | + | ||
shift_file - a character string containing the name of the chemical | shift_file - a character string containing the name of the chemical | ||
shift file, ASCII formatted as [residue_number atom_id shift], | shift file, ASCII formatted as [residue_number atom_id shift], | ||
see example.txt in examples/nmr_nucleic | see example.txt in examples/nmr_nucleic | ||
| − | + | ||
options.deut_list - a cell array of strings, specifying which atoms should be | options.deut_list - a cell array of strings, specifying which atoms should be | ||
assumed to be deuterated, for example {'ADE:H2pp'} | assumed to be deuterated, for example {'ADE:H2pp'} | ||
| − | + | ||
options.noshift - 'keep' places unassigned atoms between -1 and 0 ppm, 'delete' removes them from the system | options.noshift - 'keep' places unassigned atoms between -1 and 0 ppm, 'delete' removes them from the system | ||
| Line 111: | Line 111: | ||
==See also== | ==See also== | ||
| − | [[Spin_system_specification | + | [[guess_j_nuc.m]], [[create.m]], [[c2spinach.m]], [[cyprinol.m]], [[fatty_acid.m]], [[g2spinach.m]], [[gissmo2spinach.m]], [[gparse.m]], [[karplus_fit.m]], [[killcross.m]], [[killdiag.m]], [[merge_inp.m]], [[methyl_group.m]], [[ocparse.m]], [[oparse.m]], [[parsexml.m]], [[protein.m]], [[read_bmrb.m]], [[read_pdb_nuc.m]], [[read_pdb_pro.m]], [[v2spinach.m]], [[weblab2nqi.m]], [[x2spinach.m]], [[Import,_export,_and_visualisation]], [[Spin_system_specification]], [[Protein NMR simulations]] |
| − | |||
| − | [[ | ||
| − | |||
''Version 2.5, authors: [[Ilya Kuprov]], [[Zenawi Welderufael]]'' | ''Version 2.5, authors: [[Ilya Kuprov]], [[Zenawi Welderufael]]'' | ||
Latest revision as of 19:39, 6 June 2026
Nucleic acid data import function. This function parses PDB and chemical shift data, runs a J-coupling guess using guess_j_nuc.m function and outputs sys and inter data structures that are required by create.m gateway function in Spinach.
Syntax
[sys,inter]=nuclacid(pdb_file,shift_file,options)
Parameters
pdb_file - a character string containing the name of the PDB file
shift_file - a character string containing the name of the chemical
shift file, ASCII formatted as [residue_number atom_id shift],
see example.txt in examples/nmr_nucleic
options.deut_list - a cell array of strings, specifying which atoms should be
assumed to be deuterated, for example {'ADE:H2pp'}
options.noshift - 'keep' places unassigned atoms between -1 and 0 ppm, 'delete' removes them from the system
When an atom is deuterated, J-couplings are reduced appropriately.
Returns
The following subfields of sys and inter data structures are set by this function:
sys.isotopes - Nspins x 1 cell array of strings
sys.labels - Nspins x 1 cell array of strings containing standard IUPAC protein atom labels
inter.coordinates - Nspins x 3 matrix, Angstrom.
inter.zeeman.scalar - Nspins x 1 cell array of numbers, ppm. Isotropic chemical shifts go here.
inter.coupling.scalar - Nspins x Nspins cell array of scalar couplings, all in Hz.
Examples
Below is a typical use case for this function. This script calculates the HSQC spectrum of the example RNA hairpin.
% Import RNA data
options.noshift='keep';
options.deut_list={'GUA:H1','GUA:H21','GUA:H22','CYT:H41',...
'CYT:H42','URI:H3','ADE:H61','ADE:H62'};
[sys,inter]=nuclacid('example.pdb','example.txt',options);
% Magnet field
sys.magnet=11.7395;
% Tolerances
sys.tols.inter_cutoff=5.0;
sys.disable={'krylov'};
% Basis set
bas.formalism='sphten-liouv';
bas.approximation='IK-1';
bas.connectivity='scalar_couplings';
bas.level=4; bas.space_level=1;
% Relaxation theory
inter.relaxation={'damp'};
inter.rlx_keep='diagonal';
inter.equilibrium='zero';
inter.damp_rate=5.0;
% Sequence parameters
parameters.J=90;
parameters.sweep=[7500 4500];
parameters.offset=[16250 4250];
parameters.npoints=[128 256];
parameters.zerofill=[1024 1024];
parameters.spins={'13C','1H'};
parameters.decouple_f1={'1H','2H'};
parameters.decouple_f2={'13C','2H'};
parameters.axis_units='ppm';
% Create the spin system structure
spin_system=create(sys,inter);
% Build the basis
spin_system=basis(spin_system,bas);
% Simulation
fid=liquid(spin_system,@hsqc,parameters,'nmr');
save('hsqc_rna.mat','spin_system','parameters','fid');
% Apodization
fid.pos=apodization(fid.pos,'cosbell-2d');
fid.neg=apodization(fid.neg,'cosbell-2d');
% F2 Fourier transform
f1_pos=fftshift(fft(fid.pos,parameters.zerofill(2),1),1);
f1_neg=fftshift(fft(fid.neg,parameters.zerofill(2),1),1);
% Form States signal
fid=f1_pos+conj(f1_neg);
% F1 Fourier transform
spectrum=fftshift(fft(fid,parameters.zerofill(1),2),2);
% Destreaking
spectrum=destreak(spectrum);
% Plotting
plot_2d(spin_system,real(spectrum),parameters,20,[0.1 0.5 0.1 0.5],2,256,6,'positive');
Further examples are available in examples/nmr_nucleic directory.
Notes
- Unassigned atom coordinates are used internally for the J-coupling prediction procedure even if options.noshift is set to 'delete'.
- Deleting unassigned atoms removes them from the dipolar coupling network. Relaxation properties, such as Overhauser effects, may be distorted as a result.
- Watch carefully the output of this function, it would inform you if it sees anything strange in the data supplied. Nucleic acid datasets available from major databases are rarely free of errors.
See also
guess_j_nuc.m, create.m, c2spinach.m, cyprinol.m, fatty_acid.m, g2spinach.m, gissmo2spinach.m, gparse.m, karplus_fit.m, killcross.m, killdiag.m, merge_inp.m, methyl_group.m, ocparse.m, oparse.m, parsexml.m, protein.m, read_bmrb.m, read_pdb_nuc.m, read_pdb_pro.m, v2spinach.m, weblab2nqi.m, x2spinach.m, Import,_export,_and_visualisation, Spin_system_specification, Protein NMR simulations
Version 2.5, authors: Ilya Kuprov, Zenawi Welderufael