A computer-implemented system for determining the derivatives of the solvent accessible surface area of a molecule (M), wherein the molecule (M) comprises a plurality of atoms, a sphere (B, Bi) is assigned to each atom, the sphere (B, Bi) comprises a radius (ρ, ρi) and a center position (r, ri), the system comprising:
- a processor configured to:
- determine for each sphere (B) all neighbouring spheres (Bi) that intersect with the sphere (B);
- define a set of one or more contours (Cm), such that all intersecting circles of sphere B with spheres Bi intersect on the surface of sphere B;
- determine for each contour (Cm) an area enclosed by the contour (Cm), wherein the contour (Cm) includes the area on the surface of said sphere (B) that is enclosed by one or more arcs (al, a2, a3) resulting from an intersection of the surface of said sphere (B) with one of the surface of one intersecting sphere (Bi) or the surfaces of a plurality of intersecting spheres (Bi) that have an overlapping intersection area on the surface of said sphere (B);
- determine the solvent accessible surface (S) of said sphere (B) as the surface of said sphere (B) subtracted by the area comprised by all contours (Cm) on the surface of said sphere (B);
- determine, x the solvent accessible surface area of the molecule (M) based on a sum of solvent accessible surface areas (Si) of the spheres (B, Bi);
- and
- determine derivatives of the solvent accessible surface area of the molecule (M) depending on a sum of the derivatives of the solvent accessible surface areas of its atoms.