摘要:
目标 用zig作为c/c++编译;用VSCode作为编辑器;用Code Runner作为插件完成简易的c/c++编译运行。 环境 需要完成的环境: 安装Zig;安装VSCode;给VSCode安装Code Runner插件。 配置 配置Zig作为编译器 VSCode的Code Runner插件默认使 阅读全文
摘要:
数组 数组是一组固定大小的元素,数组的大小必须是常量表达式。数组的大小是usize类型,用数组的len获得。 为了创建一个数组,可以使用常量表达式的数组字面量,或者使用std.mem.zeroes或std.mem.alloc。 const a = [3]i32{1,2,3}; const b = [ 阅读全文
摘要:
zig中的数值 整数 zig中有很丰富的整数类型。除isize和usize之外,这些类型的位宽都是固定的。isize和usize的位宽取决于编译器的目标架构。在32位系统上,isize和usize都是32位的。在64位系统上,isize和usize都是64位的。 类型位宽C类型i88int8_tu8 阅读全文
摘要:
Python中的时间相关的包 在Python中实现时间戳的功能,与Java/Kotlin的结果类似,但是Python中的时间和日期功能分散在几个包中,而且有些包的功能重叠,这里做一个总结。 datetime:时间的表示与计算 这个包里定义tzinfo类,用于表示时区信息,但是这个类是抽象类,需要自己 阅读全文
摘要:
仿真中的时间 系统仿真中,最少需要考虑两个时间。一个是仿真时间,一个是墙上时间。仿真时间是仿真系统中的时间推进过程,可能是均匀的,也可能是基于事件的非线性推进。墙上时间则是现实中的时间。仿真时间与墙上时间可能没有联系。在某些系统中,则必须维持二者之间的(比例)关系。 在分布式实时仿真或实物在回路的仿 阅读全文
摘要:
Zig使用LCM(Lightweight Communications and Marshalling)协议通信 目标 使用Zig作为开发语言,通过LCM进行实时的数据交换。展示Zig的开发能力,以及LCM的使用。为实现基于Zig的LCM协议的开发提供基础。 前提 安装了LCM,包括C语言头文件和库 阅读全文
摘要:
Kotlin使用LCM(Lightweight Communications and Marshalling)协议通信 目标 使用Kotlin作为开发语言,通过LCM进行实时的数据交换。展示Kotlin的开发能力,以及LCM的使用。为实现基于Kotlin的LCM协议的开发提供基础。 前提 安装了LC 阅读全文
摘要:
LCM1类型定义语言 LCM类型定义语言的使用和特性。 简介 除了提供通信原语集合,LCM还包括产生平台无关的数据类型的编组和解组函数的工具。它类似于XDR,但是它的目标是更大的类型安全性,以及对C、Java和Python等多种语言的一流支持。本文档描述了数据编组功能;通信功能在其他地方有描述。注意 阅读全文
摘要:
Tensor谜题 力学中的张量 在数学上,一个张量是一个多维数组。在流体力学中,张量与场相关。场描述三维空间中的标量或者适量的分布。在三维空间中,一个标量场通常用等值面来表示。 在空间区域 Ω \Omega Ω中的函数或者数量场 u = u ( x , y , z ) u = u(x,y,z) u= 阅读全文
摘要:
与数据共舞 PyTorch跟数据相关的类有三个:torch.utils.data.DataLoader,torch.utils.data.Dataset,torch.utils.data.Sampler。Dataset是一个抽象类,你需要继承它并实现__len__和__getitem__方法。Dat 阅读全文