Struct与Cell说明

1.Struct定义

  带有可以包含各种类型和大小的数据的命名字段的数组

  结构体数组是使用名为字段的数据容器将相关数据组合在一起的数据类型。每个字段都可以包含任意类型的数据。使用 structName.fieldName 格式的圆点表示法来访问结构体中的数据。

1.1.Struct相关函数

struct结构体数组
fieldnames结构体的字段名称,或者 Java 或 Microsoft COM 对象的公共字段
getfield结构体数组字段
isfield确定输入是否为结构体数组字段
isstruct确定输入是否为结构体数组
orderfields结构体数组的顺序字段
rmfield删除结构体中的字段
setfield为结构体数组字段赋值
arrayfun将函数应用于每个数组元素
structfun对标量结构体的每个字段应用函数
table2struct将表转换为结构体数组
struct2table将结构体数组转换为表
cell2struct将元胞数组转换为结构体数组
struct2cell将结构体转换为元胞数组

 2. Cell元胞数组

  可以包含各种类型和大小的数据的数组。

  元胞数组是一种包含名为元胞的索引数据容器的数据类型,其中的每个元胞都可以包含任意类型的数据。元胞数组通常包含不同长度的字符向量列表,或字符串和数字的混合,或不同大小的数值数组。通过将索引括在圆括号 ()中可以引用元胞集。使用花括号 {} 进行索引来访问元胞的内容。

2.1 Cell相关函数

cell元胞数组
cell2mat将元胞数组转换为基础数据类型的普通数组
cell2struct将元胞数组转换为结构体数组
cell2table将元胞数组转换为表
celldisp显示元胞数组内容
cellfun对元胞数组中的每个元胞应用函数
cellplot以图形方式显示元胞数组的结构体
cellstr转换为字符向量元胞数组
iscell确定输入是否为元胞数组
iscellstr确定输入是否为字符向量元胞数组
mat2cell将数组转换为在元胞中包含子数组的元胞数组
num2cell将数组转换为相同大小的元胞数组
strjoin联接数组中的字符串
strsplit在指定分隔符处拆分字符串或字符向量
struct2cell将结构体转换为元胞数组
table2cell将表转换为元胞数组

3.数据类型标识

  确定变量的数据类型

  MATLAB有许多函数可识别变量的数据类型或确定变量是否具有特定的数据类型。当调用或编写的代码依赖于具有特定数据类型的变量时,应使用这些函数。

3.1 Cell、结构体、表

iscell确定输入是否为元胞数组
isstruct确定输入是否为结构体数组
istable确定输入是否为表
istimetable确定输入是否为时间表

3.2 数值类型

isfloat确定输入是否为浮点数组
isinteger确定输入是否为整数数组
islogical确定输入是否为逻辑数组
isnumeric确定输入是否为数值数组
isreal确定数组是否使用复数存储
issparse确定输入是否为稀疏矩阵

3.3 字符串

isstring确定输入是否为字符串数组
ischar确定输入是否为字符数组
iscellstr确定输入是否为字符向量元胞数组

3.4 有关变量信息

whos列出工作区中的变量及大小和类型
class对象的类
underlyingType确定数组行为的基础数据的类型
isUnderlyingType确定输入是否有指定的基础数据类型
validateattributes检查数组的有效性

4.数据类型转换

  在数值数组、字符串和字符数组、日期和时间、元胞数组、结构体或表之间转换。

  MATLAB有许多函数可将值从一种数据类型转换为另一种数据类型,以用于不同的上下文。

4.1 Cell、结构体转换

cell2mat将元胞数组转换为基础数据类型的普通数组
cell2struct将元胞数组转换为结构体数组
mat2cell将数组转换为在元胞中包含子数组的元胞数组
num2cell将数组转换为相同大小的元胞数组
struct2cell将结构体转换为元胞数组

4.2 进制转换

base2dec将以 n 为基数的整数的文本表示转换为双精度值
bin2dec将二进制整数的文本表示转换为双精度值
dec2base将十进制整数转换为其 n 进制表示形式
dec2bin将十进制整数转换为其二进制表示形式
dec2hex将十进制整数转换为其十六进制表示形式
hex2dec将十六进制整数的文本表示转换为双精度值
hex2num将 IEEE 十六进制格式转换为双精度数
num2hex将单精度数和双精度数转换为 IEEE 十六进制格式
内容概要:本文档详细介绍了在三台CentOS 7服务器(IP地址分别为192.168.0.157、192.168.0.158和192.168.0.159)上安装和配置Hadoop、Flink及其他大数据组件(如Hive、MySQL、Sqoop、Kafka、Zookeeper、HBase、Spark、Scala)的具体步骤。首先,文档说明了环境准备,包括配置主机名映射、SSH免密登录、JDK安装等。接着,详细描述了Hadoop集群的安装配置,包括SSH免密登录、JDK配置、Hadoop环境变量设置、HDFS和YARN配置文件修改、集群启动与测试。随后,依次介绍了MySQL、Hive、Sqoop、Kafka、Zookeeper、HBase、Spark、Scala和Flink的安装配置过程,包括解压、环境变量配置、配置文件修改、服务启动等关键步骤。最后,文档提供了每个组件的基本测试方法,确保安装成功。 适合人群:具备一定Linux基础和大数据组件基础知识的运维人员、大数据开发工程师以及系统管理员。 使用场景及目标:①为大数据平台建提供详细的安装指南,确保各组件能够顺利安装和配置;②帮助技术人员快速掌握Hadoop、Flink等大数据组件的安装与配置,提升工作效率;③适用于企业级大数据平台的建与维护,确保集群稳定运行。 其他说明:本文档不仅提供了详细的安装步骤,还涵盖了常见的配置项解释和故障排查建议。建议读者在安装过程中仔细阅读每一步骤,并根据实际情况调整配置参数。此外,文档中的命令和配置文件路径均为示例,实际操作时需根据具体环境进行适当修改。
在无线通信领域,天线阵列设计对于信号传播方向和覆盖范围的优化至关重要。本题要求设计一个广播电台的天线布局,形成特定的水平面波瓣图,即在东北方向实现最大辐射强度,在正东到正北的90°范围内辐射衰减最小且无零点;而在其余270°范围内允许出现零点,且正西和西南方向必须为零。为此,设计了一个由4个铅垂铁塔组成的阵列,各铁塔上的电流幅度相等,相位关系可自由调整,几何布置和间距不受限制。设计过程如下: 第一步:构建初级波瓣图 选取南北方向上的两个点源,间距为0.2λ(λ为电磁波波长),形成一个端射阵。通过调整相位差,使正南方向的辐射为零,计算得到初始相位差δ=252°。为了满足西南方向零辐射的要求,整体相位再偏移45°,得到初级波瓣图的表达式为E1=cos(36°cos(φ+45°)+126°)。 第二步:构建次级波瓣图 再选取一个点源位于正北方向,另一个点源位于西南方向,间距为0.4λ。调整相位差使西南方向的辐射为零,计算得到相位差δ=280°。同样整体偏移45°,得到次级波瓣图的表达式为E2=cos(72°cos(φ+45°)+140°)。 最终组合: 将初级波瓣图E1和次级波瓣图E2相乘,得到总阵的波瓣图E=E1×E2=cos(36°cos(φ+45°)+126°)×cos(72°cos(φ+45°)+140°)。通过编程实现计算并绘制波瓣图,可以看到三个阶段的波瓣图分别对应初级波瓣、次级波瓣和总波瓣,最终得到满足广播电台需求的总波瓣图。实验代码使用MATLAB编写,利用polar函数在极坐标下绘制波瓣图,并通过subplot分块显示不同阶段的波瓣图。这种设计方法体现了天线阵列设计的基本原理,即通过调整天线间的相对位置和相位关系,控制电磁波的辐射方向和强度,以满足特定的覆盖需求。这种设计在雷达、卫星通信和移动通信基站等无线通信系统中得到了广泛应用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值