42 #define FREESASA_DEF_ALGORITHM FREESASA_LEE_RICHARDS
43 #define FREESASA_DEF_PROBE_RADIUS 1.4
44 #define FREESASA_DEF_SR_N 100
45 #define FREESASA_DEF_LR_N 20
47 #define freesasa_default_classifier freesasa_protor_classifier
51 #define freesasa_default_rsa freesasa_protor_rsa
84 #define FREESASA_MAX_SELECTION_NAME 50
150 const char* atom_name,
158 const char* atom_name,
162 const char* (*class2str)(
int the_class,
670 const char* atom_name,
671 const char* residue_name,
672 const char* residue_number,
674 double x,
double y,
double z);
723 const char *atom_name,
724 const char *residue_name,
725 const char *residue_number,
727 double x,
double y,
double z,
815 const double* radii);
const freesasa_classifier * bb_classifier
A classifier whose sasa_class() function returns 0 for side chain atoms and non-zero for backbone...
Halt reading when unknown atom is encountered.
const double * freesasa_structure_coord_array(const freesasa_structure *structure)
Get array of coordinates.
char * name
Name of RSA reference.
freesasa_algorithm alg
Algorithm.
const char * freesasa_structure_chain_labels(const freesasa_structure *structure)
Get string listing all chains in structure.
int freesasa_structure_n_chains(const freesasa_structure *s)
Get number of chains.
Print all errors and warnings.
void * config
Optional configuration to allow flexibility.
double probe_radius
Probe radius (in Ångström)
Struct used for calculating classes and radii for atoms given their residue-names ('ALA'...
void freesasa_strvp_free(freesasa_strvp *strvp)
Frees a freesasa_strvp object.
Print no errors and warnings.
int freesasa_write_rsa(FILE *output, const freesasa_result *result, const freesasa_structure *structure, const char *name, const freesasa_rsa_reference *reference)
Print RSA-file.
Struct used to store n string-value-pairs (strvp) in arrays of doubles and strings.
freesasa_strvp * freesasa_result_classify(const freesasa_result *result, const freesasa_structure *structure, const freesasa_classifier *classifier)
Sums up the SASA for groups of atoms defined by a classifier.
Something went seriously wrong (value will always be negative).
int freesasa_structure_chain_atoms(const freesasa_structure *s, char chain, int *first, int *last)
Get indices of first and last atoms of a chain.
double side_chain
Side-chain SASA.
int freesasa_write_parameters(FILE *log, const freesasa_parameters *parameters)
Print parameters to file.
int(* sasa_class)(const char *res_name, const char *atom_name, const struct freesasa_classifier *)
Function that returns the class [0,1,...,n_classes-1] of an atom, should return FREESASA_WARN if atom...
Print all errors, warnings and debug messages.
int freesasa_structure_n_residues(const freesasa_structure *s)
Get number of residues.
Read MODELs as separate structures.
freesasa_algorithm
The FreeSASA algorithms.
int lee_richards_n_slices
Number of slices per atom in L&R calculation.
const freesasa_classifier freesasa_protor_classifier
Classifier using ProtOr radii and classes.
const char * freesasa_structure_atom_res_number(const freesasa_structure *structure, int i)
Get residue number.
const freesasa_residue_sasa * max
Array containing max SASA-values for named residues types.
int n
Number of values and strings.
const char * freesasa_structure_residue_number(const freesasa_structure *s, int r_i)
Get residue number.
freesasa_verbosity
Verbosity levels.
const char * freesasa_structure_residue_name(const freesasa_structure *s, int r_i)
Get name of residue.
char freesasa_structure_atom_chain(const freesasa_structure *structure, int i)
Get chain label.
int freesasa_log(FILE *log, freesasa_result *result, const char *name, const freesasa_parameters *parameters, const freesasa_strvp *class_sasa)
Log calculation results.
freesasa_verbosity freesasa_get_verbosity(void)
Get the current verbosity level.
freesasa_structure * freesasa_structure_new(void)
Allocate empty structure.
Struct to store parameters for SASA calculation.
int freesasa_write_pdb(FILE *output, freesasa_result *result, const freesasa_structure *structure)
Write SASA values and atomic radii to new PDB-file.
int freesasa_structure_residue_atoms(const freesasa_structure *s, int r_i, int *first, int *last)
Get indices of first and last atoms of a residue.
int n_atoms
Number of atoms.
int freesasa_per_residue_type(FILE *output, freesasa_result *result, const freesasa_structure *structure)
Print SASA for all residue types to file.
freesasa_result * freesasa_calc_structure(const freesasa_structure *structure, const freesasa_parameters *parameters)
Calculates SASA based on a given structure.
int freesasa_structure_add_atom_wopt(freesasa_structure *structure, const char *atom_name, const char *residue_name, const char *residue_number, char chain_label, double x, double y, double z, const freesasa_classifier *classifier, int options)
Add individual atom to structure.
int freesasa_structure_n(const freesasa_structure *structure)
Get number of atoms.
int n_threads
Number of threads to use, if compiled with thread-support.
FILE * freesasa_get_err_out()
Get pointer to error file.
int freesasa_structure_model(const freesasa_structure *structure)
Get model number for structure.
Something went wrong, but results might still be meaningful (value will always be negative)...
const double * freesasa_structure_radius(const freesasa_structure *structure)
Returns a pointer to an array of the radii of each atom.
double apolar
Apolar SASA.
double * value
Array of values.
int freesasa_structure_add_atom(freesasa_structure *structure, const char *atom_name, const char *residue_name, const char *residue_number, char chain_label, double x, double y, double z)
Add individual atom to structure using default behavior.
Read atom radius from occupancy field.
struct freesasa_structure freesasa_structure
Struct for structure object.
int freesasa_write_result(FILE *log, freesasa_result *result, const char *name, const char *chains, const freesasa_strvp *class_sasa)
Write results of claculation to file.
void freesasa_set_err_out(FILE *err)
Set where to write errors.
const char * name
Residue name.
const freesasa_rsa_reference freesasa_protor_rsa
An RSA-reference for the ProtOr configuration.
const freesasa_classifier freesasa_naccess_classifier
Classifier using NACCESS radii and classes.
double(* radius)(const char *res_name, const char *atom_name, const struct freesasa_classifier *)
Function that returns an atom radius.
int shrake_rupley_n_points
Number of test points in S&R calculation.
const freesasa_classifier * polar_classifier
A classifier whose sasa_class() function returns 0 for apolar atoms and non-zero for polar atoms...
Struct to store SASA values for a named residue.
const freesasa_parameters freesasa_default_parameters
The default parameters for FreeSASA.
char freesasa_structure_residue_chain(const freesasa_structure *s, int r_i)
Get chain residue belongs to.
Read separate chains as separate structures.
void freesasa_classifier_free(freesasa_classifier *classifier)
Frees a classifier object.
int n_classes
Total number of different classes.
int freesasa_select_area(const char *command, char *name, double *area, const freesasa_structure *structure, const freesasa_result *result)
Get area of a selection.
Used as reference in generation of RSA file.
Lee & Richards' algorithm.
int freesasa_set_verbosity(freesasa_verbosity v)
Set the global verbosity level.
char ** string
Array of strings.
freesasa_classifier * freesasa_classifier_from_file(FILE *file)
Generate a classifier from a config-file.
const int FREESASA_DEF_NUMBER_THREADS
Default number of threads.
Struct to store results of SASA calculation.
const char * freesasa_structure_atom_res_name(const freesasa_structure *structure, int i)
Get residue name.
freesasa_structure_options
Options for reading structure from PDB.
double * sasa
SASA of each atom in Ångström^2.
freesasa_structure * freesasa_structure_get_chains(const freesasa_structure *structure, const char *chains)
Create new structure consisting of a selection chains from the provided structure.
int freesasa_per_residue(FILE *output, freesasa_result *result, const freesasa_structure *structure)
Print SASA for each residue in the sequence to file.
double total
Total SASA in Ångström^2.
All is ok (value will always be zero).
Read MODELs as part of one big structure.
freesasa_error_codes
Error codes.
double main_chain
Main-chain/Backbone SASA.
int freesasa_per_chain(FILE *output, freesasa_result *result, const freesasa_structure *structure)
Print SASA for each chain.
void freesasa_structure_set_radius(freesasa_structure *structure, const double *radii)
Override the radii set when the structure was initialized.
void(* free_config)(void *)
Function that can be called to free the config-pointer.
const freesasa_classifier freesasa_oons_classifier
Classifier using OONS radii and classes.
freesasa_structure ** freesasa_structure_array(FILE *pdb, int *n, const freesasa_classifier *classifier, int options)
Init array of structures from PDB.
freesasa_result * freesasa_calc_coord(const double *xyz, const double *radii, int n, const freesasa_parameters *parameters)
Calculates SASA based on a given set of coordinates and radii.
Shrake & Rupley's algorithm.
const char * freesasa_structure_atom_symbol(const freesasa_structure *structure, int i)
Get atom symbol.
freesasa_structure * freesasa_structure_from_pdb(FILE *pdb, const freesasa_classifier *classifier, int options)
Init structure with coordinates from pdb-file.
const char * freesasa_structure_atom_name(const freesasa_structure *structure, int i)
Get atom name.
void freesasa_structure_free(freesasa_structure *structure)
Free structure.
Skip atom when unknown atom is encountered.
const freesasa_rsa_reference freesasa_naccess_rsa
An RSA-reference for the NACCESS configuration.
void freesasa_result_free(freesasa_result *result)
Frees a freesasa_result object.