Biophysics and Physicobiology
Online ISSN : 2189-4779
ISSN-L : 2189-4779
Database and Computer Program
Phone2SAS: 3D scanning by smartphone aids the realization of small-angle scattering
Hiroshi Imamura
Author information
JOURNAL OPEN ACCESS FULL-TEXT HTML
J-STAGE Data

2023 Volume 20 Issue 2 Article ID: e200021

Details
Abstract

Small-angle scattering (SAS) is a powerful tool for the detailed structural analysis of objects at the nanometer scale. In contrast to techniques such as electron microscopy, SAS data are presented as reciprocal space information, which hinders the intuitive interpretation of SAS data. This study presents a workflow: (1) creating objects, (2) 3D scanning, (3) the representation of the object as point clouds on a laptop, (4) computation of a distance distribution function, and (5) computation of SAS, executed via the computer program Phone2SAS. This enables us to realize SAS and perform the interactive modeling of SAS of the object of interest. Because 3D scanning is easily accessible through smartphones, this workflow driven by Phone2SAS contributes to the widespread use of SAS. The application of Phone2SAS for the structural assignment of SAS to Y-shaped antibodies is reported in this study.

Significance

Small-angle scattering, as a biophysical method for studying the envelopes of nano-scale molecules in a solution, is superior to the other techniques that involve crystallization or freezing. However, the interpretation of SAS data in reciprocal space is non-intuitive. The accessibility and simplicity of Phone2SAS presented in this study can facilitate the widespread use of SAS, particularly among potential users.

Introduction

Small-angle scattering (SAS) has become increasingly indispensable in the field of biology and chemistry to determine the size and shape of target particles in solution. Nevertheless, shifting between SAS reciprocal space information and its inverse Fourier transform, real-space information is not intuitively appealing to nonspecialists or undergraduate students, hindering the application of SAS.

This study proposes a workflow for the intuitive and interactive modeling of SAS. As summarized in Figure 1, this workflow converts a hand-sized object into a SAS profile by using three-dimensional (3D) scanning tools. 3D scanning is an easier method to copy an object on a computer than 3D computer graphics tools. Thus, 3D scanning of an object by a smartphone camera followed by running the program Phone2SAS can obtain a SAS profile. The following outcomes are envisaged: (1) determination or a preliminary search of the structure of the target object or (2) the education of a reciprocal representation of a real object for understanding SAS. Studies relevant to the former proved that intuitive modeling by hand(s) with a 3D-printing technique is powerful for studying molecular structures and functions [1]. The latter helps us to understand classical SAS analysis such as a Kratky plot or a distance distribution function. Accordingly, it is considered that the present workflow wakes up the “silent” potential users of SAS.

Figure 1 

Phone2SAS workflow. The illustration is partly adapted from irasutoya (http://www.irasutoya.com/).

The current straightforward way to calculate SAS is to use computer programs. CRYSOL [2], CRYSON [3], FoXS [4], Pepsi-SAXS [5] and the others readily compute SAS profiles using the atomic coordinates of biomolecules (e.g., PDB file). Unavailable or unknown atomic coordinates must be modeled using tools such as MODELLER [6], which can be time-consuming depending on the user’s computational skills. SasView [7] is capable of SAS simulation for various geometrical shapes (e.g. spheres, cylinders, and ellipsoids). In contrast, Phone2SAS does not require the preparation of atomic models and any shape is applicable, however, the calculated SAS profile should be an approximation. Physical objects facilitate an understanding of the structural features of biomolecules [8]. Compared to existing tools, Phone2SAS is education-oriented rather than research-oriented and bypasses the computer modeling cost of the target objects at the expense of exactness.

Materials and Methods

Qlone version 1.8.0 (EyeCue Vision Technologies Ltd., Agoura Hills, CA), a 3D scanning application, was used to scan objects in augmented reality (AR) using a phone camera (iPhone SE Apple Inc., Cupertino, CA). Qlone can scan a 0.02–10 m range of an object. Other 3D scanning applications are also possible. 3D data saved in polygon file format (. ply) were imported into MATLAB R2017b with the add-ons of the Image Processing Toolbox and Computer Vision System Toolbox (MathWorks Inc., Natick, MA, USA) as point cloud data (a set of data points along X, Y, and Z coordinates). An α-shape [9] was created from the point cloud using the built-in function alphaShape in MATLAB. Arbitrary points inside the envelope were generated using the Monte Carlo method [10]; a built-in function inShape in MATLAB was used to determine whether a randomly generated point was inside or outside the envelope. These points are regarded as electrons for small-angle X-ray scattering (SAXS) or nuclei for small-angle neutron scattering (SANS). A point-filled envelope in a virtual space (VS) should be scaled to a molecular-sized SAS object. The measure of the distance between all pairs of points inside the VS envelope gives the number of pairs of points separated by a distance rVS, termed n(rVS). The maximum distance of the VS envelope is denoted rVS,max. The term r is considered as the distance in the molecular world. r is given by r=rVSDmax/rVS,max, where Dmax is the maximum length of the SAS object. n(r) is proportional to the distance distribution function P(r) of the SAS object and is therefore regarded as P(r). The scattering I(q) was calculated using the Fourier transform of P(r) as shown in Equation 1 [11]:

  
Iq=4π0DmaxP(r)sinqrqrdr(1)

where q is the scattering parameter, defined as q=|q|=4πsinθ/λ, q is the scattering vector, 2θ is the scattering angle, λ is the wavelength of the X-ray or a neutron. n(rVS), P(r), and I(q) were processed using a homemade program in IGOR Pro version 6.22A (WaveMetrics, Portland, OR, USA).

To broaden the accessibility of the above procedure to users with varying computer skills and platforms, a single standalone Python program called Phone2SAS was developed. This approach eliminates the dependence on commercial software packages such as MATLAB and IGOR Pro. No Python skills are required and Python is employed for multi-platform applications (macOS, Windows, and Linux). The code “phone2sas.py” is available (see Appendix and Data Availability Statement).

Experimental SAXS data of humanized immunoglobulin G1 (IgG1) (148 kDa) was taken from a previous report [12], which was collected using the BL-10C beamline at the Photon Factory of the High Energy Accelerator Research Organization (KEK) in Tsukuba, Japan [13]. The concentration of IgG1 in the buffer solution (0.01 M sodium phosphate, pH 7.4) was 3.4 mg mL–1.

Results and Discussion

In this study, the operation of Phone2SAS has been demonstrated (Figure 2). Figure 2a (upper panel) shows a Y-shaped object made of clay with a maximum length of 120 mm and a maximum depth of approximately 36 mm, which was 3D scanned using a smartphone camera. The Y shape is often found in nature, for example, in antibodies. The 3D-scanned model of the smartphone device is imported to a laptop. The described data processing method provides point clouds that approximate the original Y-shape of the object. The distance distribution function, P(r), (Figure 2b, upper) is determined, where Dmax is assumed to be 160 Å, comparable with that of the IgG1 antibody [PDB:1hzh]. Multiplying 160/120 can convert the size in mm to the size in Å. P(r) presents a bimodal distribution; there are peaks at 33 and 87 Å. The Fourier transform of P(r) according to Equation (1) provides the small-angle scattering intensity I(q) (Figure 2c). Another classical plot, the Kratky plot [q2I(q) vs. q], shown in Figure 2d shows characteristic peaks at q=0.036 and 0.072 Å–1. The experimental SAXS data of the IgG1 share the same characteristics in P(r), I(q), and the Kratky plot, encouraging further analysis.

Figure 2 

Demonstration of Phone2SAS method for Y-shaped, V-shaped, and I-shaped objects. (a) Clay work and 3D scan. (b) Distance distribution function, P(r). (c) SAS intensity, I(q). (d) Kratky plot. The experimental SAXS data of an antibody IgG1 is overlaid.

Next, an example of pursuing a structural origin is presented as manifested in Kratky peaks at q=0.072 Å–1 by using the Phone2SAS method. Decomposing the Y-shaped clay object into V- and I-shaped clay objects reveals the contribution from these shapes (Figure 2, middle and bottom). This is similar to the enzymatic digestion of IgG in which F(ab’)2 (V-shaped) and Fab/Fc (I-shaped) regions are produced. The V-shaped object shows P(r) with a peak at 87 Å and the Kratky plot with a peak at 0.072 Å–1, while the I-shaped object does not show these peaks. This implies that the representative distance (87 Å) between two I-shaped objects within the V-shaped object gives the Kratky plot character (q=0.072 Å–1). Indeed, the distance measured using the ruler was 65 mm (Figure 2a, middle). That corresponds to 87 Å in the molecular scale, consistent with the value 87 Å given via the Bragg relation, 2π/q. This interpretation agrees with the literature [14].

Figure 2d shows that all simulated Kratky plots lack a peak at q=~0.15 Å–1 seen in the experimental one. This indicates that there are defined structures in the antibody that are not modeled in the present study. This peak at q=~0.15 Å–1 can be sensitive to the spatial arrangements of domains in the antibody, such as CH2 domains in the Fc region [15]. Such structural insights can be obtained using Phone2SAS.

In this study, the application of the Phone2SAS method or workflow for obtaining SAS data has been demonstrated. Multiple 3D scanning techniques have become accessible and precise via portable devices such as smartphones. I believe Phone2SAS-like modeling supports the widespread use of SAS.

Appendix

phone2sas.py: Description and Usage

The “phone2sas.py” computes the distance distribution function, P(r), and the small-angle scattering, I(q), for a given 3D data in polygon file format (. ply). (1) The 3D data file and (2) Dmax, which is the maximum length of the SAS object (see also Methods), are mandatory. Dmax should be custom-tuned to scale the 3D-scanned model to the molecular size as shown in Figure 2(a). The current version of phone2sas.py supports python3 and requires pre-installation of Numpy (https://numpy.org) and Open3D (http://www.open3d.org). The operation was tested using python3.7, Numpy 1.21.6, and Open3D 0.14.1.

The following is an example of the usage of phone2sas.py for the example 3D data (y.ply). By using the shell on your computer (e.g., “terminal” on macOS, “command prompt” on Windows, and “bash” on Linux), type

python3 phone2sas.py y.ply --dmax 160.0

“--dmax 160.0” defines 160.0 Å for Dmax, the maximum length of the SAS object. The number of Monte Carlo sampling can be modified using “--rp” option (default: 10000): e.g., “--rp 30000.” “python3 phone2sas.py -h” would be helpful.

phone2sas.py generates P(r), I(q), and Kratky (q2I(q)) data files named 'pr.txt', 'iq.txt', and 'kratky.txt', respectively, where the column 1 is r or q. The points’ coordinates inside the object are stored as 'inside_points.txt', which can be visualized using a 3D graphing software (Figure 3).

Figure 3 

3D data processing by phone2sas.py.

An alternative and easier way to execute phon2sas.py is to use the Python environment prepared by Google Colaboratory (https://colab.research.google.com) via a web browser. For example, upload “phone2sas.py” and “y.ply” and run the following:

!pip install open3d

!python3 phone2sas.py y.ply --dmax 160.0

Conflict of Interest

The author declare no competing financial interest.

Author Contributions

The author confirms sole responsibility for the following: study conception and design, data collection, analysis and interpretation of results, and manuscript preparation.

Acknowledgements

This research is partially supported by the Japan Society for the Promotion of Science (grant number: JP21K06503) and by the Public Interest Incorporated Foundation of Institute for Chemical Fibers, Japan. The SAXS experiment in this work was performed under the approval of the Photon Factory Program Advisory Committee (Proposal No.2015G061 and No.2022G056).

Data Availability

The evidence data generated and/or analyzed during the current study are available from the corresponding author on reasonable request. The program “phone2sas.py” and the example 3D data (y.ply) are available in J-STAGE Data with the DOI of https://doi.org/10.34600/data.biophysico.22778660.


References
 
© 2023 THE BIOPHYSICAL SOCIETY OF JAPAN
feedback
Top