Quadriga-Lib
C++/MEX/Python Utility library for radio channel modelling and simulations
MALAB / Octave API Documentation for Quadriga-Lib v0.10.1


Overview
Array antenna functions
Channel functions
Channel generation functions
Miscellaneous / Tools
Site-Specific Simulation Tools




Array antenna functions



arrayant_calc_directivity - Calculates the directivity (in dBi) of array antenna elements


arrayant_combine_pattern - Calculate effective radiation patterns for array antennas


arrayant_copy_element - Create copies of array antenna elements


arrayant_export_obj_file - Creates a Wavefront OBJ file for visualizing the shape of the antenna pattern


arrayant_generate - Generates predefined array antenna models


arrayant_interpolate - Interpolate array antenna field patterns


arrayant_qdant_read - Reads array antenna data from QDANT files


arrayant_qdant_write - Writes array antenna data to QDANT files


arrayant_rotate_pattern - Rotates antenna patterns




Channel functions



baseband_freq_response - Transforms the channel into frequency domain and returns the frequency response


channel_export_obj_file - Export path data to a Wavefront OBJ file for visualization in Blender


hdf5_create_file - Create a new HDF5 channel file with a custom storage layout


hdf5_read_channel - Reads channel data from HDF5 files


hdf5_read_dset - Read a single unstructured dataset from an HDF5 file


hdf5_read_dset_names - Read the names of unstructured data fields from an HDF5 file


hdf5_read_layout - Read the storage layout of channel data inside an HDF5 file


hdf5_reshape_layout - Reshapes the storage layout inside an existing HDF5 file


hdf5_write_channel - Writes channel data to HDF5 files


hdf5_write_dset - Writes unstructured data to a HDF5 file




Channel generation functions



get_channels_ieee_indoor - Generate indoor MIMO channel realizations for IEEE TGn/TGac/TGax/TGah models


get_channels_irs - Calculate channel coefficients for intelligent reflective surfaces (IRS)


get_channels_planar - Calculate channel coefficients for planar waves


get_channels_spherical - Calculate channel coefficients from path data and antenna patterns




Miscellaneous / Tools



calc_rotation_matrix - Calculates a 3x3 rotation matrix from a 3-element orientation vector


cart2geo - Transform Cartesian (x,y,z) coordinates to Geographic (az, el, length) coordinates


fast_sincos - Fast, approximate sine/cosine for MATLAB numeric arrays


geo2cart - Transform Geographic (az, el, length) to Cartesian (x,y,z) coordinates coordinates


version - Returns the quadriga-lib version number


interp - 2D and 1D linear interpolation.


write_png - Write data to a PNG file




Site-Specific Simulation Tools



generate_diffraction_paths - Generate propagation paths for estimating the diffraction gain


icosphere - Construct a geodesic polyhedron (icosphere), a convex polyhedron made from triangles


obj_file_read - Reads a triangulated 3D polygon mesh from a Wavefront OBJ file


point_cloud_aabb - Calculates the axis-aligned bounding box (AABB) for a 3D point cloud or a set of sub-clouds


point_cloud_segmentation - Rearranges elements of a point cloud into smaller sub-clouds


point_inside_mesh - Test whether 3D points are inside a triangle mesh using raycasting


ray_mesh_interact - Calculates interactions (reflection, transmission, refraction) of radio waves with objects


ray_point_intersect - Calculates the intersection of ray beams with points in three dimensions


ray_triangle_intersect - Calculates the intersection of rays and triangles in three dimensions


subdivide_triangles - Subdivide the faces of a triangle mesh into smaller faces


triangle_mesh_aabb - Calculate the axis-aligned bounding box (AABB) of a triangle mesh and its sub-meshes


triangle_mesh_segmentation - Rearranges elements of a triangle mesh into smaller sub-meshes