Strawberry Fields:探索学习量子光学编程的奇妙世界
一、Strawberry Fields 简介
Strawberry Fields 是由加拿大量子计算公司Xanadu开发的全栈 Python 库,在量子计算领域中占据着重要的地位。它为设计、模拟和优化连续变量(CV)量子光学电路提供强大工具,Strawberry Fields 的强大之处不仅在于其全面的功能,更在于它如何将这些功能整合成一个 coherent 的生态系统。首先,它具有硬件执行能力,用户可以直接在 Xanadu 的量子硬件上执行光子量子算法,将理论研究转化为实际应用。库中包含了一系列高级函数,专门用于解决实际问题,涵盖了图论和网络优化、机器学习以及化学模拟等领域。它拥有模拟器套件,使得编译和模拟光子算法变得高效而精确。最后,通过与 TensorFlow 的集成,Strawberry Fields 提供了端到端可微分后端,为量子机器学习研究提供了理想的平台。
在安装方面,Strawberry Fields 支持 Python 3.7 到 3.10版本。目前安装过程简单直接,
linux环境下只需通过 pip 执行 “pip install strawberryfields” 命令或pycharm环境下库中检索‘strawberryfields’安装即可。
对于初学者来说,Strawberry Fields 提供了详尽的光子电路快速入门指南,帮助用户迅速上手。随后,丰富的教程和应用示例将引导用户深入探索这个强大工具的各个方面。
Strawberry Fields 不仅仅是一个模拟工具,它还提供了与实际量子光学硬件交互的接口。用户可以深入了解如何使用 Strawberry Fields 与光子硬件进行交互,包括代码演示和 Xanadu 量子光子硬件的概述。这为研究人员和开发者提供了一个独特的机会,可以将理论研究直接应用到实际的量子设备上。
Strawberry Fields 作为一个全面的量子光学计算平台,不仅为研究人员提供了强大的工具,也为量子计算的未来描绘了一幅令人振奋的蓝图。通过将理论研究与实际硬件紧密结合,Strawberry Fields 正在推动量子计算领域向前发展,为解决复杂的实际问题开辟新的可能性。无论您是量子计算领域的资深研究者,还是刚刚踏入这一领域的新手,Strawberry Fields 都为您提供了一个理想的平台,让您能够探索、学习、创新,并最终为量子计算的发展做出贡献。
二、核心特性
1. 硬件执行能力
Strawberry Fields 赋予用户在 Xanadu 的下一代量子硬件上执行光子量子算法的能力,这一特性具有重大的意义。用户可以将理论研究直接转化为实际应用,为量子计算领域的发展提供了强大的动力。
通过在实际硬件上执行算法,Strawberry Fields 打破了理论与实践之间的壁垒。它为研究人员和开发者提供了一个真实的实验平台,使他们能够亲身体验量子计算的魅力。这种硬件执行能力不仅有助于验证理论模型的准确性,还能够推动量子算法的不断创新和优化。
在量子光学领域,用户可以利用 Strawberry Fields 在 Xanadu 的量子硬件上执行光子量子算法,探索量子光学现象的奥秘。这对于研究量子通信、量子计算和量子信息处理等领域具有重要的价值。
此外,硬件执行能力还为实际应用提供了可能。在图论、网络优化、机器学习和化学模拟等领域,Strawberry Fields 的光子量子算法可以为解决实际问题提供新的思路和方法。通过与实际硬件的结合,这些算法可以更好地适应实际应用的需求,提高解决问题的效率和准确性。Strawberry Fields 的硬件执行能力为量子计算领域的发展带来了新的机遇和挑战。它将理论与实践紧密结合,为研究人员和开发者提供了一个强大的工具,推动量子计算技术不断向前发展。
2. 高级问题求解功能
Strawberry Fields 涵盖了图论、网络优化、机器学习和化学模拟等领域,提供了高级函数来解决实际问题。这些高级函数为各个领域的研究人员和开发者提供了强大的工具,帮助他们更好地解决复杂的实际问题。
在图论领域,Strawberry Fields 提供了一系列用于图分析和优化的函数。例如,它可以用于计算图的最短路径、最大流和最小割等问题。这些函数可以帮助研究人员更好地理解图的结构和性质,为网络设计和优化提供有力的支持。
在网络优化领域,Strawberry Fields 的高级函数可以用于优化网络性能、提高网络可靠性和降低网络成本。例如,它可以用于优化网络流量分配、提高网络带宽利用率和降低网络延迟等问题。这些函数可以帮助网络运营商和企业更好地管理和优化网络资源,提高网络的服务质量和竞争力。
在机器学习领域,Strawberry Fields 提供了一系列用于量子机器学习的函数。例如,它可以用于量子支持向量机、量子神经网络和量子聚类等算法。这些函数可以帮助研究人员更好地利用量子计算的优势,提高机器学习算法的性能和效率。
在化学模拟领域,Strawberry Fields 的高级函数可以用于模拟分子结构和化学反应。例如,它可以用于计算分子的能量、振动频率和电子结构等问题。这些函数可以帮助化学家和材料科学家更好地理解分子的性质和反应机理,为新材料的设计和开发提供有力的支持。
Strawberry Fields 的高级问题求解功能为各个领域的研究人员和开发者提供了强大的工具,帮助他们更好地解决复杂的实际问题。这些高级函数的应用将推动各个领域的发展,为人类社会的进步做出贡献。
3. 先进的模拟器套件
Strawberry Fields 拥有基于尖端算法的模拟器套件,这使得光子算法的编译和模拟变得高效而精确。
这个先进的模拟器套件为用户提供了一个强大的工具,用于在不依赖实际量子硬件的情况下进行光子算法的开发和测试。它可以帮助用户快速验证算法的正确性和有效性,减少在实际硬件上进行实验的成本和风险。
模拟器套件采用了先进的算法和技术,能够高效地模拟光子算法的运行过程。它可以处理大规模的光子系统,并且能够准确地模拟各种量子光学现象,如光子的干涉、衍射和纠缠等。
模拟器套件还具有高度的可定制性和灵活性。用户可以根据自己的需求调整模拟器的参数和设置,以满足不同的应用场景。例如,用户可以调整光子的数量、波长和偏振等参数,以模拟不同的实验条件。
4. 端到端可微分后端
Strawberry Fields 通过与 TensorFlow 的集成,提供了端到端可微分后端,为量子机器学习研究提供了平台。
这一特性使得用户可以在 TensorFlow 的框架下进行量子机器学习的研究和开发。TensorFlow 是一个广泛使用的深度学习框架,具有强大的计算能力和丰富的工具库。通过与 TensorFlow 的集成,Strawberry Fields 可以充分利用 TensorFlow 的优势,为量子机器学习提供更加高效和灵活的解决方案。
端到端可微分后端允许用户在量子机器学习模型中进行自动微分,从而实现对模型参数的优化。这对于量子机器学习的研究非常重要,因为它可以帮助用户更快地找到最优的模型参数,提高模型的性能和准确性。
三、入门
对于初学者而言,Strawberry Fields 提供了详尽的光子电路快速入门指南。这份指南就像是一位贴心的导师,引领新手们踏入量子光学计算的神秘世界。它以清晰易懂的语言,逐步介绍了光子电路的基本概念、原理和操作方法,让初学者能够迅速上手,不再对这个领域感到陌生和迷茫。
在入门指南的基础上,丰富的教程和应用示例更是为用户提供了深入探索的机会。这些教程涵盖了从基础到高级的各种主题,包括量子光学电路的设计、模拟、优化以及与实际量子硬件的交互等。通过实际的案例和代码演示,用户可以更好地理解 Strawberry Fields 的强大功能和应用场景。
例如,在图论领域的教程中,用户可以学习如何使用 Strawberry Fields 的高级函数来解决图分析和优化问题。通过实际的代码示例,用户可以看到如何计算图的最短路径、最大流和最小割等问题,从而更好地理解图的结构和性质,为网络设计和优化提供有力的支持。
在机器学习领域的教程中,用户可以了解到如何利用 Strawberry Fields 与 TensorFlow 的集成,实现端到端可微分后端,为量子机器学习研究提供平台。通过实际的案例,用户可以学习如何构建量子支持向量机、量子神经网络和量子聚类等算法,充分发挥量子计算的优势,提高机器学习算法的性能和效率。
总之,Strawberry Fields 的安装过程简单便捷,入门指南和丰富的教程及应用示例为初学者提供了光子电路快速入门的绝佳途径。无论你是量子计算领域的新手,还是有一定经验的开发者,Strawberry Fields 都能满足你的需求,让你在量子光学计算的世界中尽情探索和创新。
四、深入量子光学硬件
Strawberry Fields 不仅是一个强大的模拟工具,更是连接理论研究与实际量子光学硬件的桥梁。它提供了与实际量子光学硬件交互的接口,为研究人员和开发者带来了独特的机遇。
代码演示
Strawberry Fields 的 Python 库为用户提供了简洁而强大的编程接口,使得与光子硬件的交互变得直观而高效。例如,通过使用 Strawberry Fields 的特定函数和方法,用户可以轻松地配置和控制光子量子硬件,实现各种量子光学算法。
以高斯玻色子采样算法为例,用户可以利用 Strawberry Fields 的代码来定义光子量子系统的初始状态、操作和测量。通过与 Xanadu 量子光子硬件的交互,这些算法可以在实际硬件上高效地执行,为解决实际问题提供了有力的支持。
此外,Strawberry Fields 还支持与其他量子计算库的集成,如 PennyLane。这使得用户可以在不同的量子计算框架之间灵活切换,充分发挥各种工具的优势。不了解硬件工作原理的远程用户也可以通过 StrawberryFields 和 PennyLane 等工具对设备进行编程,极大地降低了使用门槛。
硬件概述
Xanadu 的量子光子硬件具有诸多先进特性。首先,其硬件采用了与传统半导体工业制造技术兼容的氮化硅芯片,这意味着可以很容易地扩展到数百个量子比特。这种可扩展性为未来的量子计算应用提供了广阔的发展空间。
发射到芯片中的红外激光脉冲与微观谐振器耦合,生成所谓的 “压缩状态”,由多个光子的叠加组成。随后,光流向一系列分束器和移相器,执行所需的计算。最后,光子从芯片流出到超导检测器,通过对光子数进行计数,提取量子计算的答案。
然而,当前系统也存在一些局限性。超导光子探测器需要超冷温度,这增加了系统的复杂性和成本。不过,未来的探测器可能不需要超导温度或低温温度,这将使整个量子计算机可以装在标准服务器机架中,更加便于使用和部署。
总的来说,通过深入了解和利用这些工具,研究人员和开发者可以将理论研究直接应用到实际的量子设备上,推动量子计算技术的不断发展。
五、编程实例展示
以下是一些使用 Strawberry Fields 进行编程的具体代码示例,帮助读者更好地理解如何在这个强大的量子光学计算平台上进行编程实践。
示例一:光子电路的基本构建
我们可以使用 Strawberry Fields 来构建一个简单的光子电路。以下是一个基本的代码示例:
import strawberryfields as sf
from strawberryfields.ops import *# 创建一个引擎实例,指定后端为 "fock" 并设置截断维度
eng = sf.Engine(backend="fock", backend_options={"cutoff_dim": 5})# 使用引擎的上下文管理器来确保资源被正确管理
with eng:# 在第一个模式上应用 Fock 态操作符,创建一个具有 1 个光子的 Fock 态Fock(1) | sf.Program(1).q[0]# 在第一个模式上应用压缩门,参数为 0.5Sgate(0.5) | sf.Program(1).q[0]# 在第一个模式上应用 Fock 测量操作符,测量光子数MeasureFock() | sf.Program(1).q[0]# 运行引擎,执行量子电路
result = eng.run(program=sf.Program(1))# 打印测量结果
print(result.samples)
示例二:与 TensorFlow 的集成
Strawberry Fields 与 TensorFlow 的集成提供了端到端可微分后端,为量子机器学习研究提供了强大的平台。以下是一个简单的量子神经网络示例:
import strawberryfields as sf
import tensorflow as tf
from strawberryfields.ops import *
# 创建 Strawberry Fields 引擎
eng = sf.Engine(backend="tf", cutoff_dim=5)
# 定义量子神经网络层
def qnn_layer(x):with eng:Dgate(x[0]) | q[0]Kgate(x[1]) | q[0]MeasureFock() | q[0]return eng.run().samples[0][0]
# 定义 TensorFlow 模型
x = tf.keras.Input(shape=(2,))
y = tf.keras.layers.Lambda(qnn_layer)(x)
model = tf.keras.Model(inputs=x, outputs=y)
# 编译模型
model.compile(optimizer='adam', loss='mse')
# 训练数据
X_train = tf.random.uniform((100, 2))
y_train = tf.random.uniform((100, 1))
# 训练模型
model.fit(X_train, y_train, epochs=10, batch_size=32)
在这个例子中,我们首先创建了一个 Strawberry Fields 引擎,指定后端为 tf(TensorFlow 后端),并设置了截断维度为 5。然后,我们定义了一个量子神经网络层,其中包含 Dgate 和 Kgate 操作,并进行测量。接着,我们使用 TensorFlow 的 Input 和 Lambda 层来定义一个简单的模型,并编译和训练模型。
示例三:图论问题求解
Strawberry Fields 提供了高级函数来解决图论问题。以下是一个使用 Strawberry Fields 求解图的最短路径问题的示例:
import strawberryfields as sf
from strawberryfields.ops import *
import networkx as nx
# 创建图
G = nx.Graph()
G.add_nodes_from([0, 1, 2, 3])
G.add_edges_from([(0, 1, {'weight': 2}), (0, 2, {'weight': 3}), (1, 2, {'weight': 1}), (1, 3, {'weight': 4}), (2, 3, {'weight': 2})])
# 创建 Strawberry Fields 引擎
eng = sf.Engine(backend="fock", backend_options={"cutoff_dim": 5})
# 定义量子算法求解最短路径
def shortest_path_algorithm():with eng:n = len(G.nodes)for i in range(n):Fock(1) | q[i]for u, v, data in G.edges(data=True):weight = data['weight']BSgate(weight) | (q[u], q[v])for i in range(n):MeasureFock() | q[i]return eng.run().samples[0]
result = shortest_path_algorithm()
print(result)
在这个例子中,我们首先使用 networkx 库创建了一个简单的图。然后,我们创建了一个 Strawberry Fields 引擎,并定义了一个量子算法来求解图的最短路径。在算法中,我们首先创建了与图中节点数量相同的光子态,然后使用 BSgate 根据图的边权重进行分束器操作,最后进行测量得到结果。
通过这些具体的代码示例,我们可以看到 Strawberry Fields 在量子光学计算中的强大功能和灵活性。无论是构建简单的光子电路、进行量子机器学习还是解决图论问题,Strawberry Fields 都为我们提供了丰富的工具和接口,让我们能够深入探索量子计算的世界。注意Strawberry Fields最终版本为2022年版本的Strawberry Fields 0.23.0,作为基础的练习和学习可以采用,不适用最新的量子光学计算领域,这点要特别注意。
参考资料:
Strawberry Fields:全栈量子光学模拟与优化框架-CSDN博客
量子计算的相关工具(fromGPT4自用记录)_量子计算 工具-CSDN博客
Strawberry Fieldsで光量子計算をする(その1) #量子コンピュータ - Qiita
Strawberry Fieldsで光量子計算をする(その2) インストール〜HOM干渉計 #Python - Qiita
Strawberry Fieldsで光量子計算をする(その3) 連続量量子テレポーテーション #Python - Qiita
Strawberry Fieldsで光量子計算をする(その4) ボゾンサンプリング #Python - Qiita
Strawberry Fieldsで光量子計算をする(その5) ハミルトニアンの最小化 #Python3 - Qiita
Strawberry Fieldsで光量子計算をする(その6) CV Bell State #量子コンピュータ - Qiita
Strawberry Fieldsで光量子計算をする(その7) 測定・フィードフォワード型量子計算 #Python3 - Qiita
Strawberry Fieldsで光量子計算をする(その8) Gaussian Wigner function #Python3 - Qiita
Strawberry Fieldsで光量子計算をする(その9) Cat states #Python3 - Qiita
----关于在写作过程中原创与使用AI的声明----
本手稿的作者声明,在本作品的写作过程中,我们使用AI只包含:生成式AI图片/视频为了提高文章的观赏性、使用AI编辑器提升文章的可读性和精炼语言、修订程序过程中出现的错误以及添加标准化说明。这种使用是在严格的人为监督和控制下进行的。在应用AI技术后,作者对稿件进行了仔细的审查和编辑,以确保稿件的原创性、准确性和连贯性。
作者理解AI产生的内容可能是不正确的、不完整的或有偏见的。考虑到这一点,作者确保所有AI编辑器修订过的手稿以及语句最后经过了人类的眼睛和判断并彻底作者本人人工修改与校订,以符合人类的阅读习惯。所生成文本遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明,学术使用本文必须按期刊规定标注本文出处,翻用必究。
根据CSDN的原创政策,作者确认没有AI或AI辅助技术被列为本文的作者或合著者。作者完全理解,作者身份带来的责任和任务只能归因于人类并由人类执行,作者在准备本文时遵守了这些指导方针。
相关文章:
Strawberry Fields:探索学习量子光学编程的奇妙世界
一、Strawberry Fields 简介 Strawberry Fields 是由加拿大量子计算公司Xanadu开发的全栈 Python 库,在量子计算领域中占据着重要的地位。它为设计、模拟和优化连续变量(CV)量子光学电路提供强大工具,Strawberry Fields 的强大之…...
【初阶数据结构与算法】初阶数据结构总结之顺序表、单链表、双链表、栈、队列、二叉树顺序结构堆、二叉树链式结构(附源码)
文章目录 一、顺序表二、单链表三、双链表四、栈(先进后出)五、队列六、二叉树链式结构---堆七、二叉树链式结构接口实现 在之前我们学习了大部分初阶数据结构,我们现在从特点、优缺点以及应用场景大致总结一下,放出源码,如果想要看具体分析请…...
209. 长度最小的子数组 C++
文章目录 一、题目链接二、参考代码 一、题目链接 链接: 209. 长度最小的子数组 二、参考代码 暴力思路:两个for循环,找符合条件的子序列,复杂度(O(n^2)) int minSubArrayLen(const vector&l…...
基于python的一个简单的压力测试(DDoS)脚本
DDoS测试脚本 声明:本文所涉及代码仅供学习使用,任何人利用此造成的一切后果与本人无关 源码 import requests import threading# 目标URL target_url "http://47.121.xxx.xxx/"# 发送请求的函数 def send_request():while True:try:respo…...
异步操作、Promise和axios
1.Javascript是单线程的 什么是进程,什么是线程? 进程:进程是操作系统分配资源和调度的基本单位。它是一个程序的实例,包含了运行程序所需的代码和数据以及其它资源。 线程:线程是进程中的实际运行单位,也是…...
微信小程序开发简易教程
微信小程序文件结构详解 1. 项目配置文件 project.config.json 项目的配置文件包含项目名称、appid、编译选项等配置示例: {"description": "项目配置文件","packOptions": {"ignore": []},"setting": {&quo…...
基于 Java 实现的环形数组队列详解
1. 环形数组队列简介 队列(Queue)是一种常用的线性数据结构,具有先进先出(FIFO)的特点。在传统的线性队列中,随着出队操作,队列前端会出现空闲空间,但这些空间无法重复使用…...
opencv函数
1、二值化图 二值化图:就是将图像中的像素改成只有两种值,其操作的图像必须是灰度图。 2.1、阈值法(THRESH_BINARY) 通过设置一个阈值,将灰度图中的每一个像素值与该阈值进行比较,小于等于阈值的像素就被设置为0(黑&…...
fastadmin集成kindeditor编辑器解决段后距问题--全网唯一
背景 由于项目的需求使用fastadmin推荐的编辑器kindeditor,使用过程中发现没有段后距这个bug。查询搜索了所有的网上来源,都没有解决方案。鉴宇客户非常需要该功能,奋战几天写端代码实现了该功能。 插件实现 KindEditor.plugin(paragra…...
【Mybatis】Mybatis 魔法世界探秘:从配置起航,开启数据持久化的奇幻入门之旅
目录 1.JDBC回顾 1.1JDBC编程 2.Mybatis使用 2.1什么是Mybatis 2.2Mybatis环境配置 1.引入依赖 2.lombok的操作 2.3Mybatis编程 1.数据库创建 2.创建实体类 3.配置数据库 4.Mapper持久层编写 5.单元测试 2.4常见的问题日志 1.密码错误 2.SQL语句错误 3.数据库…...
uni-app在image上绘制点位并回显
在 Uni-app 中绘制多边形可以通过使用 Canvas API 来实现。Uni-app 是一个使用 Vue.js 开发所有前端应用的框架,同时支持编译为 H5、小程序等多个平台。由于 Canvas 是 H5 和小程序中都支持的 API,所以通过 Canvas 绘制多边形是一个比较通用的方法。 1.…...
top命令和系统负载
1 top中的字段说明 top是一个实时系统监视工具,可以动态展现出 CPU 使用率、内存使用情况、进程状态等信息,注意这些显示的文本不能直接使用 > 追加到文件中。 [rootvv~]# top -bn 1 | head top - 20:08:28 up 138 days, 10:29, 4 users, load av…...
算法之要求对任意的i,j,k三个位置,如果i < j < k,都有arr[i] + arr[k] != arr[j],返回构造出的arr。
目录 1. 题目2. 解释3. 思路4. 代码 Code06_MakeNo5. 总结 1. 题目 给定一个正整数M,请构造出一个长度为M的数组arr,要求对任意的i,j,k三个位置,如果i < j < k,都有arr[i] arr[k] ! arr[j]返回构造…...
Y3编辑器文档4:触发器
文章目录 一、触发器简介1.1 触发器界面1.2 ECA语句编辑及快捷键1.3 参数设置1.4 变量设置1.5 实体触发器1.6 函数库与触发器复用 二、触发器的多层结构2.1 子触发器(在游戏内对新的事件进行注册)2.2 触发器变量作用域2.3 复合条件2.4 循环2.5 计时器2.6…...
Ubuntu中安装配置交叉编译工具并进行测试
01-下载获取交叉编译工具的源码 按照博文 https://blog.csdn.net/wenhao_ir/article/details/144325141的方法,把imx6ull的BSP下载好后,其中就有交叉编译工具。 当然,为了将来使用方便,我已经把它压缩并传到了百度网盘ÿ…...
HCIA笔记7--OSPF协议入门
文章目录 0. 路由分类1. OSPF介绍1.1 概念1.2 报文类型 2. 邻接关系的建立2.1 邻居关系的建立2.2 邻接关系的形成2.3 ospf状态机 3. DR与BDR3.1 为什么要有DR和BDR?3.2 DR和BDR的选举原则 4. ospf的配置4.1 内部优先级 5. 问题5.1 三层环路如何解决? Ref…...
文件系统--底层架构(图文详解)
一、文件系统的底层存储与寻址 当我们谈到文件系统的底层结构时,最关键的问题是:文件的数据与元数据(属性)如何存储在磁盘上,以及系统是如何定位这些数据的?在谈及文件系统之前,我们要先对储存…...
温州医院儿童自闭症康复中心:为孩子打开光明未来
在自闭症这一神秘而复杂的神经发育障碍面前,无数家庭曾陷入迷茫与无助。然而,在中国的大地上,有两座灯塔般的存在,它们分别为温州医院儿童自闭症康复中心和广州星贝育园自闭症儿童寄宿制学校,它们用专业的技术和无尽的…...
Tr0ll: 1 Vulnhub靶机渗透笔记
Tr0ll: 1 本博客提供的所有信息仅供学习和研究目的,旨在提高读者的网络安全意识和技术能力。请在合法合规的前提下使用本文中提供的任何技术、方法或工具。如果您选择使用本博客中的任何信息进行非法活动,您将独自承担全部法律责任。本博客明确表示不支…...
网络通信技术
网络通信技术 IP路由基础 什么是路由 路由是指导报文转发的路径信息,通过路由可以确认转发IP报文的路径。路由设备是依据路由转发报文到目的网段的网络设备,最常见的路由设备:路由器。路由设备维护着一张路由表,保存着路由信息。路由的功能 路径选择数据转发、数据过滤维…...
十一、容器化 vs 虚拟化-Docker 使用
文章目录 前言一、Docker Hello World二、Docker 容器使用三、Docker 镜像使用四、Docker 容器连接五、Docker 仓库管理六、Docker Dockerfile七、Docker Compose八、Docker Machine九、Swarm 集群管理 前言 Docker 使用 Docker 容器使用、镜像使用、容器连接、仓库管理、Do…...
npm error Error: Command failed: F:\360Downloads\Software\nodejs\node.exe
前言: 电脑环境:win7 node版本:18.20.0 npm版本:10.9.2 情景再现:电脑上是存在的vuevite的项目且可以正常运行。想着摸鱼的时间复习一下ts语法,所以想创建一个demo。按照 开始 | Vite 官方中文文档 官网创建…...
html中,实现通过拖拽调整图像尺寸
<!DOCTYPE html> <html lang"en"> <head> <meta charset"UTF-8"> <meta name"viewport" content"widthdevice-width, initial-scale1.0"> <title>html中拖拽修改图像尺寸</title> <styl…...
sqlmap详解
一.sqlmap -u URL --forms sqlmap -u http://192.168.11.136:1337//978345210/index.php --forms 针对特定的 URL 进行 SQL 注入测试,特别是针对表单(form)的 POST 注入 forms:这个参数告诉 sqlmap 解析并测试目标 URL 中的表单…...
浏览器插件开发实战
浏览器插件开发实战 [1] 入门DEMO一、创建项目二、创建manifest.json三、加载插件四、配置 service-worker.js五、以书签管理器插件为例manifest.jsonpopup.htmlpopup.js查看效果 [2] Vue项目改造成插件一、复习Vue项目的结构二、删除、添加个别文件三、重写build [3] 高级开发…...
【特殊子序列 DP】力扣552. 学生出勤记录 II
可以用字符串表示一个学生的出勤记录,其中的每个字符用来标记当天的出勤情况(缺勤、迟到、到场)。记录中只含下面三种字符: ‘A’:Absent,缺勤 ‘L’:Late,迟到 ‘P’:Pr…...
C/C++流星雨
系列文章 序号直达链接1C/C爱心代码2C/C跳动的爱心3C/C李峋同款跳动的爱心代码4C/C满屏飘字表白代码5C/C大雪纷飞代码6C/C烟花代码7C/C黑客帝国同款字母雨8C/C樱花树代码9C/C奥特曼代码10C/C精美圣诞树11C/C俄罗斯方块12C/C贪吃蛇13C/C孤单又灿烂的神-鬼怪14C/C闪烁的爱心15C/C…...
Docker 安装 Jenkins:2.346.3
准备:已安装Docker,已配置服务器安全组规则 1581 1、拉取镜像 [rootTseng ~]# docker pull jenkins/jenkins:2.346.3 2.346.3: Pulling from jenkins/jenkins 001c52e26ad5: Pull complete 6b8dd635df38: Pull complete 2ba4c74fd680: Pull complet…...
枫清科技高雪峰:从数据到知识,重塑产业智能化的核心驱动力
2024 年 12 月 5 日,由智东西主办的“2024 中国生成式 AI 大会”在上海盛大开幕,汇聚了全球 AI 领域的顶尖专家、行业领袖与技术创新者。枫清科技(Fabarta)创始人兼 CEO 高雪峰应邀出席,并在大会上发表主题演讲&#x…...
【过滤器】.NET开源 ORM 框架 SqlSugar 系列
目录 0、 过滤器介绍 1、表过滤器 (推荐) 1.1 手动添加过滤器 1.2 禁用、清空、备份和还原 1.3 联表查询设置 1.4 动态添加 2、修改和删除用过滤器 2.1 局部设置 2.2 全局设置 (5.1.4.62) 3、子查询用过滤器 4、联表过滤…...
在 Ansys Q3D 中求解直流和交流电感
提取电缆的电感对于确保电气和电子系统的性能和可靠性至关重要。本篇博客文章将介绍使用 Ansys Q3D 求解直流和交流电感的过程。 概述 在这个例子中,我们将考虑一个由两组电缆组成的简单几何:正极和负极,如下所示: 可以使用“自…...
location重定向和nginx代理
文章目录 1 location重定向1.1 概述1.2 rewrite跳转1.3 用例1.4 实验1.4.1 基于域名的跳转1.4.2 基于ip的跳转1.4.3 基于后缀名的跳转 2 nginx的代理2.1 nginx内置变量2.2 实验2.2.1 前提条件2.2.2 正向代理2.2.3 自动代理 1 location重定向 1.1 概述 重定向:就是…...
币安移除铭文市场的深度解读:背后原因及其对区块链行业的影响
引言: 就在昨天,2024年12月10号,币安宣布将移除铭文市场(Inscriptions Market)。这一消息引发了全球加密货币社区的广泛关注,尤其是在比特币NFT和数字收藏品市场快速发展的背景下。铭文市场自诞生以来迅速…...
【论文复现】基于曲率的图重新布线
📝个人主页🌹:Eternity._ 🌹🌹期待您的关注 🌹🌹 ❀ 无基于曲率的图重新布线 论文概述核心算法算法说明关键代码 运行方法数据集配置文件训练和测试 运行结果 论文概述 论文链接 Topping, Jake,…...
scala的Array
特性 类型安全:Scala 中的数组是类型安全的,这意味着一旦声明了数组的类型,就只能存储该类型的元素。 大小固定:数组的大小在创建时确定,之后不能改变。 零索引:Scala 数组与 Java 数组一样,都…...
【HarmonyOS实战开发】鸿蒙JS崩溃分析
当未处理的JS异常导致应用意外退出时,应用会生成对应的JS崩溃日志文件,开发者可通过错误日志查看引起崩溃的代码位置及分析应用崩溃的原因。本文将分别介绍JS崩溃分析思路以及典型分析案例。 一、日志信息 以下是崩溃日志信息中对应字段解释。 Device…...
【Vue3】前端使用 FFmpeg.wasm 完成用户视频录制,并对视频进行压缩处理
强烈推荐这篇博客!非常全面的一篇文章,本文是对该博客的简要概括和补充,在不同技术栈中提供一种可行思路,可先阅读该篇文章再阅读本篇: FFmpeg——在Vue项目中使用FFmpeg(安装、配置、使用、SharedArrayBu…...
与 Cursor AI 对话编程:2小时开发报修维修微信小程序
本文记录了如何通过与 Cursor AI 对话,全程不写一行代码的情况下,完成一个完整的报修小程序。整个过程展示了 AI 如何帮助我们: 生成代码 、解决问题、优化实现、完善细节。 先看一下效果图: 一、项目配置 首先我是这样和 AI 对…...
【机器学习】机器学习的基本分类-无监督学习-主成分分析(PCA:Principal Component Analysis)
主成分分析(Principal Component Analysis, PCA) 主成分分析(PCA)是一种常用的降维技术,用于将高维数据投影到低维空间,同时尽可能保留原数据的主要信息(方差)。 1. PCA 的核心思想…...
工频隔离与高频隔离的优劣对比
工频与高频隔离的优劣以及选择方法的详细介绍: 工频隔离 优点: 隔离效果好:能有效过滤电网上的谐波干扰和负载特性产生的大电流冲击,为负载提供更可靠的保护,适用于对电源稳定性和可靠性要求高的工业、医疗、交通等领…...
前端传入Grule,后端保存到 .grl 文件中
前端传入Grule,后端保存到 .grl 文件中 通过简单的输入框,将Grule的部分拆解成 规则名称 规则描述 规则优先级 规则条件 规则逻辑Grule关键字 when Then 模拟了 if 判断的条件和逻辑部分 类似于 shell 和 ruby 之类的脚本语言,有 then 关键字…...
SpringBoot【十】mybatis之xml映射文件>、<=等特殊符号写法!
一、前言🔥 环境说明:Windows10 Idea2021.3.2 Jdk1.8 SpringBoot 2.3.1.RELEASE 在利用mybatis进行开发的时候,编写sql时可能少不了>、<等比较符号,但是在mapper映射文件中直接使用是不行的,会报错࿰…...
使用Excel 对S型曲线加减速算法进行仿真
项目场景: 项目场景:代码中写了S型加减速算法,相查看生成的加减速数组,直观的展示出来,USB通信一次64字节,对于我几个个32位的频率值不太方便,于是采用Excel进行仿真。 代码中如何生成S加减速曲…...
Java面试宝典 1.13~1.31【2020.5 Beta版】
Java面试宝典 1.13~1.31【2020.5 Beta版】 <a name"14cb060b"></a> 1.Java基础 <a name"22b8b366"></a> 1.13 静态变量与实例变量的区别? 静态变量实例变量定义使用static关键字声明的实例变量在类中声明,但…...
调度系统:使用 Airflow 对 Couchbase 执行 SQL 调度时的潜在问题
使用 Airflow 对 Couchbase 执行 SQL 调度时,通常情况下不会直接遇到与 Couchbase 分布式特性相关的异常,但在某些特定情境下,可能会出现一些与分布式环境、调度和数据一致性相关的潜在问题。以下是一些可能会遇到的问题和建议的解决方案&…...
过载与简单:理解感知
通常情况下,最好的设计是使用最少设计技巧的设计。这是为什么?这一切都是关于人类大脑是如何工作的,它决定了观众对媒体的反应、感受情绪和做出决定。 注意。我们被海量的信息轰炸。不间断地处理所有这些信号会降低我们大脑的注意力。根据微…...
前端加密的方式汇总
目录 一、Base64编码 二、哈希算法 三、对称加密(AES/DES) 四、非对称加密(RSA) 五、加盐 六、Web Cryptography API? 七、总结 随着信息和数据安全重要性的日益凸显,如何保证信息数据在传输的过程中的安全成为开发者重点关注的内容。前端加密通常是指在浏览…...
git新建远程分支后,无法切换
git remote # 列出所有远程主机 git remote update origin --prune # 更新远程主机origin 整理分支 git branch -r # 列出远程分支 git branch -vv # 查看本地分支和远程分支对应关系 git checkout -b gpf origin/gpf # 新建本地分支gpf与远程gpf分支相关…...
HarmonyOS 线性容器List 常用的几个方法
List底层通过单向链表实现,每个节点有一个指向后一个元素的引用。当需要查询元素时,必须从头遍历,插入、删除效率高,查询效率低。List允许元素为null。 List和LinkedList相比,LinkedList是双向链表,可以快速…...
【21天学习AI底层概念】day2 机器学习基础
按照由浅入深的顺序,下一步学习 机器学习(Machine Learning) 的基础是最自然的选择。机器学习是人工智能的核心技术之一,很多AI系统都依赖它。以下是学习路线建议: 第二步:机器学习基础 学习目标ÿ…...