Matlab code for "A Novel Channel Model for Reconfigurable Intelligent Surfaces with Consideration of Polarization and Switch Impairments"
(c) 2023 De-Ming Chian and Chao-Kai Wen e-mail: icefreeman123@gmail.com and chaokai.wen@mail.nsysu.edu.tw
This repository contains the channel model for Reconfigurable Intelligent Surfaces (RIS) described in De-Ming Chian, Chao-Kai Wen, Chi-Hung Wu, Fu-Kang Wang, and Kai-Kit Wong, “A novel channel model for reconfigurable intelligent surfaces with consideration of polarization and switch impairments,” arXiv preprint arXiv:2304.03713, 2023. [Online]. Available: https://arxiv.org/abs/2304.03713.
The final version is published in D.-M. Chian, C.-K. Wen, C.-H. Wu, F.-K. Wang and K.-K. Wong, "A Novel Channel Model for Reconfigurable Intelligent Surfaces With Consideration of Polarization and Switch Impairments," IEEE Transactions on Antennas and Propagation, vol. 72, no. 4, pp. 3680-3695, April 2024. Available: https://ieeexplore.ieee.org/document/10462906.
- Matlab (R2022b)
- If this code is applied in different cases, the transformation of polarization for the scattered and reflected waves and their tuning coefficients must be redefined. They are described in equations [22] and [23] of our article.
- Main script: Main.m
- Functions: CalculateCC.m / CalculateReflect.m / CalculateScatter.m /
ChangeGrid.m / LinearInterpolate.m /
LoadParameter.m / RotateAntenna.m - Data: Pattern file (AntH2.xlsx / AntH3.xlsx / AntH4.xlsx /
AntV2.xlsx / AntV3.xlsx / AntV4.xlsx)
The following results are reproduced from Fig. 7(c) of our paper:
- Main script 1: Main_RISarray_WithoutRotation.m
- Main script 2: Main_RISarray_WithRotation.m
- Functions: CalculateCC.m / CalculateReflect.m / CalculateScatter.m /
ChangeGrid.m / LinearInterpolate.m / LinearInterpolateGrid.m /
LoadParameter.m / ArrayGenerate.m /
RodriguesRotVec.m / RotateAntenna.m /
ControlRIS_Perfectbeam.m / ControlRIS_DPSbeam.m /
ControlRIS_BGA.m / ControlRIS_BGApolar.m /
GetCC_LOS.m / GetCC_RIS.m - Data: Pattern file (AntH2.xlsx / AntH3.xlsx / AntH4.xlsx /
AntV2.xlsx / AntV3.xlsx / AntV4.xlsx)
Step2. Run the main script 1 and 2, corresponding to Fig. 12(a) and (b), respectively. The results with one of controlling algorithms will be obtained.
(Please choose the controlling algorithm in the 43-th line. Ex.: AntData.CtlMethod = 'Perfect_beam'; is based on perfect beamforming.)
The following results are reproduced from Fig. 12(a) of our paper:
The following results are reproduced from Fig. 12(b) of our paper: