C# 对其他窗口发送文本

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.Runtime.InteropServices; namespace mysend { public partial class Form1 : Form { const int WM_SETTEXT = 0x0C; IntPtr targethwnd; [DllImport("user32.dll", CharSet = CharSet.Auto)] public static extern IntPtr SendMessage(IntPtr hWnd, uint Msg, IntPtr wParam, IntPtr lParam); public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { IntPtr buffer = Marshal.AllocHGlobal(Marshal.SizeOf(textBox2.Text.Length+1)); Marshal.

顶部加载条 vue

<template> <div> <div class="wraps"> <div ref="bar" class="bar"></div> </div> </div> </template> <script setup lang="ts"> import { onMounted, ref } from "vue"; let speed = ref<number>(1); let bar = ref<HTMLElement>(); let timer = ref<number>(0); const startLoading = () => { let dom = bar.value as HTMLElement; speed.value = 1; window.requestAnimationFrame(function fn() { if (speed.value < 90) { speed.value += 1; dom.style.width = speed.value + "%"; timer.value = window.requestAnimationFrame(fn); } else { speed.

万界星空科技可视化数据大屏的作用

随着科技的不断发展和进步,当前各种数据化的设备也是如同雨后春笋般冒了出来,并且其可以说是给我们带来了极大的便利的。在这其中,数据大屏就是非常具有代表性的一个例子。 数据大屏的主要作用包括: 数据分析:数据大屏能够将大量数据以图表、表格等多种形式展示,帮助人们直观地了解数据及其关系,便于分析和比较,从而挖掘数据背后的价值。 决策支持:数据大屏有助于决策者清晰地掌握企业和市场的运营状况及趋势,辅助其做出更加准确和及时的决策。 提高工作效率:数据大屏的直观展示使得用户能更快地找到关键信息,加快数据分析和决策过程,提升整体的工作效率和质量。 数据采集:通过传感器、监控设备等采集实时数据。 数据处理:对采集到的数据进行处理和分析,提取关键指标。 数据展示:将处理后的数据通过可视化方式展示在大屏上,方便管理人员实时监测生产状态。 数据可视化大屏在工业制造中的应用场景主要有: 1、生产监控:在制造业中,可视化数据大屏可以用于显示生产线上的实时运行状态。通过实时监控生产线的数据,可以帮助管理人员更好地掌握生产现场的情况,并及时发现并解决生产中的问题。 2、质量控制:可视化数据大屏可以用于展示产品质量数据。这可以帮助管理人员及时发现并解决生产中的质量问题,提高产品质量。 3、设备监测:可视化数据大屏可以用于展示设备的运行状态。通过实时监测设备数据,可以预测设备故障并及时采取措施,减少生产线的停机时间。 4、物流管理:可视化数据大屏可以用于展示物流数据,包括货物的流向、运输时间、运输方式等。这可以帮助物流管理人员更好地掌握物流运营状况,并及时调整物流策略。 万界星空科技MES管理系统中的看板管理对于提升企业的生产效率、质量控制和决策支持能力具有重要意义。通过实施有效的看板管理策略,企业可以更好地应对市场变化和竞争挑战,实现可持续发展。在未来,随着工业互联网和智能制造技术的不断发展,看板管理将在企业生产管理中发挥更加重要的作用。

美易平台:捷蓝航空股价上涨3%,Spirit Airlines股价下跌17%:合并协议可能面临终止

捷蓝航空(JetBlue Airways)的股价在美股盘前交易中上涨了3%,而Spirit Airlines的股价则下跌了近17%。这一波动是由于捷蓝航空在此前宣布可能会终止与Spirit Airlines的合并协议,并表示将继续评估合并协议下的选择。 捷蓝航空是一家总部位于美国的低成本航空公司,提供廉价航班服务。而Spirit Airlines也是一家美国低成本航空公司,专注于提供经济实惠的航班选择。两家公司原本计划通过合并来实现更大规模和更高效率的运营。 然而,根据捷蓝航空最新的声明,合并协议可能会在1月28日或之后终止。这意味着两家公司将重新评估他们在合并协议下的选择,并寻找其他可能的发展方向。 对于投资者来说,这一消息无疑给市场带来了一定程度的不确定性。捷蓝航空股价上涨反映了市场对该公司未来发展前景的乐观态度,而Spirit Airlines股价下跌则反映了市场对该公司未来前景不确定性的担忧。 尽管合并协议的终止可能会对两家公司的业务产生一定影响,但这并不意味着它们不能继续在竞争激烈的航空市场中取得成功。作为低成本航空公司,捷蓝航空和Spirit Airlines都有着相对较低的运营成本和灵活的航班网络,这使得它们能够在市场上保持竞争力。 此外,随着全球疫苗接种计划的推进和旅行需求的逐渐恢复,航空行业有望迎来复苏。尽管目前仍存在一定不确定性,但随着疫情逐渐受控,人们对旅行的需求预计将会增加,这将为捷蓝航空和Spirit Airlines等公司带来新的机遇。 总体而言,捷蓝航空和Spirit Airlines都是在美国市场上具有竞争力的低成本航空公司。尽管合并协议可能会终止,但这并不意味着它们不能在未来取得成功。随着旅行需求逐渐恢复和市场竞争加剧,这两家公司仍然有机会实现业务增长,并为投资者带来回报。 美易makeasy是一家互联网金融券商,其平台makeasy提供一系列金融服务,包括证券交易、投资咨询和资产管理等。作为一家创新型金融科技公司,美易makeasy致力于为投资者提供便捷、高效和安全的投资体验。 美易makeasy平台采用先进的技术和系统,为用户提供全面的交易功能和工具。用户可以通过该平台进行股票、基金、债券等多种证券产品的交易,并获取实时市场行情和投资建议。此外,美易makeasy还提供个性化的投资组合管理服务,帮助用户优化投资组合并实现长期收益。 作为一家合规运营的金融机构,美易makeasy注重数据安全和用户隐私保护。该公司采用严格的数据加密和隐私保护措施,确保用户信息在传输和存储过程中得到充分保护。此外,美易makeasy还遵守相关法律法规,并接受监管机构的监督和审查。 总之,美易makeasy是一家致力于为投资者提供便捷、高效和安全投资服务的互联网金融券商。通过其先进的平台和全面的金融工具,投资者可以更好地管理和增值自己的资产。

Ubuntu18编译jdk8源码

环境 系统 ubuntu18 Linux ubuntu 5.4.0-150-generic #167~18.04.1-Ubuntu SMP Wed May 24 00:51:42 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux jdk源码openjdk-8u41-src-b04-14_jan_2020.zip bootJdk jdk-8u391-linux-x64.tar.gz ps -e|grep ssh sudo apt-get install ssh /etc/ssh/sshd_config将PermitRootLogin改为yes service sshd restart 然后使用mobaXterm就可以登录了 ubuntu 18 安装低版本gcc ubuntu18 默认gcc7 安装低版本gcc4.9报错: 正在读取软件包列表… 完成 正在分析软件包的依赖关系树 正在读取状态信息… 完成 现在没有可用的软件包 gcc,但是它被其它的软件包引用了。 这可能意味着这个缺失的软件包可能已被废弃, 或者只能在其他发布源中找到 E: 软件包gcc还没有可供安装的候选者 解决思路:需要更换软件源 打开 sudo gedit /etc/apt/sources.list 新增加 deb http://dk.archive.ubuntu.com/ubuntu/ xenial main deb http://dk.archive.ubuntu.com/ubuntu/ xenial universe 更新 sudo apt-get update 再安装gcc-4.9,g+±4.9

四、概要设计说明书(软件工程)

1.引言 1.1编写目的 1.2项目背景 1.3定义 1.4参考资料 2.任务概述 2.1目标 2.2运行环境 2.3需求概述 2.4条件与限制 3.总体设计 3.1处理流程 3.2总体结构和模块外部设计 3.3功能分配 4.接口设计 4.1外部接口 4.2内部接口 5.数据结构设计 5.1逻辑结构设计 5.2物理结构设计 5.3数据结构与程序的关系 6.运行设计 6.1运行模块的组合 6.2运行控制 6.3运行时间 7.出错处理设计 7.1出错输出信息 7.2出错处理对策 8.安全保密设计 9.维护设计 1.引言 1.1编写目的 【阐明编写概要设计说明书的目的,指明读者对象。】 1.2项目背景 【应包括: 项目的委托单位、开发单位和主管部门;该软件系统与其他系统的关系。】 1.3定义 【列出本文档中所用到的专门术语的定义和缩写词的原文。】 1.4参考资料 【列出有关资料的作者、标题、编号、发表日期、出版单位或资料来源,可包括: 项目经核准的计划任务书、合同或上级机关的批文;项目开发计划;需求规格说明书;测试计划(初稿);用户操作手册(初稿);文档所引用的资料、采用的标准或规范。】 2.任务概述 2.1目标 2.2运行环境 2.3需求概述 2.4条件与限制 3.总体设计 3.1处理流程 3.2总体结构和模块外部设计 3.3功能分配 【表明各项功能与程序结构的关系。】 4.接口设计 4.1外部接口 【包括用户界面、软件接口与硬件接口。】 4.2内部接口 【模块之间的接口。】 5.数据结构设计 5.1逻辑结构设计 5.2物理结构设计 5.3数据结构与程序的关系 6.运行设计 6.1运行模块的组合 6.2运行控制 6.3运行时间 7.出错处理设计 7.1出错输出信息 7.2出错处理对策 【如设置后备、性能降级、恢复及再启动等。】 8.安全保密设计 9.

20240126请问在ubuntu20.04.6下让GTX1080显卡让whisper工作在large模式下?

20240126请问在ubuntu20.04.6下让GTX1080显卡让whisper工作在large模式下? 2024/1/26 21:19 问GTX1080模式使用large该如何配置呢? 这个问题没有完成,可能需要使用使用显存更大的显卡了! 比如GTX1080Ti 11GB,更猛的可以选择:RTX2080TI 22GB了! 以下四种large模式都异常了! large large-v1 large-v2 large-v3 rootroot@rootroot-X99-Turbo:~$ rootroot@rootroot-X99-Turbo:~$ watch -n 2 nvidia-smi rootroot@rootroot-X99-Turbo:~$ whereis whisper whisper: /home/rootroot/.local/bin/whisper rootroot@rootroot-X99-Turbo:~$ root@rootroot-X99-Turbo:/# root@rootroot-X99-Turbo:/# find . -name whisper ./usr/lib/x86_64-linux-gnu/espeak-ng-data/voices/!v/whisper ./home/rootroot/.cache/whisper ./home/rootroot/.local/bin/whisper ./home/rootroot/.local/lib/python3.8/site-packages/whisper ./home/rootroot/3TB/76Android11.0/out3/.path/whisper ./home/rootroot/3TB/76Android11.0/out/.path/whisper find: ‘./run/user/1000/gvfs’: Permission denied root@rootroot-X99-Turbo:/# root@rootroot-X99-Turbo:/# whereis whisper whisper: root@rootroot-X99-Turbo:/# root@rootroot-X99-Turbo:/# https://www.bilibili.com/read/cv29388784/?jump_opus=1 【教程】利用whisper模型自动生成英文粗字幕 运行环境 硬件 NVIDIA GeForce 3090 GPU with 24GB VRAM 该模型理论上也能在CPU环境下运行,但极慢。GPU运行也需要占用较大显存。官方提供了多种规模的变体,所需显存从1GB-10GB不等(如下图) 软件 Ubuntu 18.04 理论上来说Windows和MacOS也是支持的,不过我没有尝试过 PyTorch 1.11.1 官方说的是在1.10.1上训练的,不过这个影响不大 操作步骤 克隆项目仓库 git clone https://github.

C. Closest Cities

有n个城市位于数字线上,第i个城市位于点ai。城市的坐标是按升序排列的,a1 < a2 < a3 < …… < an。 两个城市 x 和 y 之间的距离等于|ax−ay|。 对于每个城市 i,让我们将最近的城市 j 定义为城市,使得 i 和 j 之间的距离不大于 i 和每个其他城市k之间的距离。例如,如果城市位于点[0,8,12,15,20],则: 距离城市1最近的城市是城市2; 距离城市2最近的城市是城市3; 距离城市3最近的城市是城市4; 距离城市4最近的城市是城市3; 距离城市5最近的城市是城市4。 城市的位置是这样的,对于每个城市来说,最近的城市都是独一无二的。例如,城市不可能位于点[1,2,3]中,因为这意味着城市2具有两个最近的城市(1和3,都具有距离1)。 你可以在城市之间旅行。假设你目前在城市x。然后您可以执行以下操作之一: 前往任何其他城市 y,支付|ax-ay|枚硬币; 前往离 x 最近的城市,支付1枚硬币。 您将收到 m 个查询。在每次查询中,您将获得两个城市,您必须计算从一个城市到另一个城市所需花费的最低硬币数量。 输入 第一行包含一个整数 t(1 ≤ t ≤ 1e4)——测试用例的数量。 每个测试用例的格式如下: 第一行包含一个整数 n(2 ≤ n ≤ 1e5); 第二行包含 n 个整数 a1,a2,…,an(0 ≤a1<a2<…<an≤ 1e9); 第三行包含一个整数 m(1 ≤ m ≤ 1e5); 接下来 m 行,其中第i个包含两个整数 xi 和 yi(1≤xi,yi≤n;xi≠yi),表示在第i个查询中,您必须计算从 xi 市到 yi 市所需花费的最小硬币数。

数组函数调用、strcpy、strcat、strcmp、strlen函数编写———C语言(day11)

首先先来一个练习,编写斐波拉契数列,并输出前几项的值 #include<stdio.h> int fibo(int n) { int sum = 0; if(n == 1 || n == 2) { sum = 1; }else if(n > 2) { sum = fibo(n-1) + fibo(n-2); } return sum; } void inputfibo(int *a,int len) { int i = 0; for(i = 0;i < len;++i) { a[i] = fibo(i+1); } } void printffibo(int *a,int len) { int i = 0; for(i = 0;i < len;++i) { printf("

AI Infra论文阅读之通过打表得到训练大模型的最佳并行配置

目录 0x0. 前言0x1. 摘要0x2. 介绍0x3. 背景0x4. 实验设置0x5. 高效的LLM训练分析0x5.1 Fused Kernels 和 Flash Attention0x5.1.1 Attention0x5.1.2 RMSNorm Kernel 0x5.2 Activation Checkpointing0x5.3 Micro-Batch 大小0x5.4 Tensor Parallelism和Pipline Parallelism0x5.5 Sequence Parallelism0x5.6 端到端性能 0x6. 结论0x7. 附录里面一些有用的公式0x7.1 MFU计算公式0x7.2 LLaMA训练的MFU估计0x7.3 Megatron-LM MFU 0x0. 前言 这次阅读一篇mlsys的一篇新论文,《Efficient Parallelization Layouts for Large-Scale Distributed Model Training》,虽然该论文还处于open review阶段,但作者在 Megatron-LM 基础上通过对各种训练调优方法进行组合打表获得了一些比较有趣的结论和发现,地址:https://openreview.net/pdf?id=Y0AHNkVDeu 。作者的详细实验表格在:https://github.com/Aleph-Alpha/NeurIPS-WANT-submission-efficient-parallelization-layouts paper中基于大量搜索实验,最后得出来以下几个训练大模型的建议: 使用Micro Batch大小为1,以实现最小程度的模型并行化,避免Activation Checkpointing,并减少流水线bubble。优先使用TP和PP,而不是Activation Checkpointing。只有在无法进一步降低模型并行化程度时,才扩大Micro Batch大小。对于参数超过30B且序列长度超过2k的模型,使用Sequence Parallelism。 然后在Paper的第4节还有几个有趣的发现,比如应该优先流水并行而不是模型并行,以及Flash Attention自带Activation Checkpointing,只对FFN进行Activation Checkpointing能获得更好的MFU。 这篇文章的解读力求精简,基本没有翻译任何原文,所以节奏非常快只写了核心要点,感兴趣也可以阅读原文,但干货应该都在这里了。 0x1. 摘要 摘要指出了现在训练大语言模型的一些高效的训练方法。包括:1) 需要跨多个硬件加速器进行并行处理和采用计算及内存优化;2) 之前的研究未涉及最新的优化技术,如Flash Attention v1/v2或Sequece Parallel;3) 作者进行了全面的训练配置打表研究,并提出了一些关键的建议以提高训练效率;4) 发现使用 micro-batch=1 能提高训练效率,但较大的micro-batch需要Activation Checkpointing或更高程度的模型并行大小,同时也会导致更大的pipeline bubble;5) 作者得到的最高效的配置在不同模型大小上实现了先进的训练效率,特别是在训练13B LLAMA模型时,达到了70.

Top100 子串

1.560. 和为 K 的子数组 给你一个整数数组 nums 和一个整数 k ,请你统计并返回 该数组中和为 k 的子数组的个数 。 子数组是数组中元素的连续非空序列。 示例 1: 输入:nums = [1,1,1], k = 2 输出:2 示例 2: 输入:nums = [1,2,3], k = 3 输出:2 提示: 1 <= nums.length <= 2 * 10^4-1000 <= nums[i] <= 1000-10^7 <= k <= 10^7 思路: 数据规模也蛮大;思考是不是用滑动窗口,因为是子串,不允许排序,所以用滑动窗口,不断往后移,暴力枚举遍历。 代码: 暴力没成功,当个反面例子,我先贴一会 class Solution(object): def subarraySum(self, nums, k): i,k=0,0 count=0 for i in range(len(nums)): for j in range(i,len(nums)): if sum(nums[i:j])==k : print(i,j) print(sum(nums[i:j])) count+=1 return count 换个思路:

ctf-idea调试jar包

0.拿到jar包并解压 进入解压出来的目录,然后以该目录打开项目 1.设置maven 设不设置都行 2.添加依赖 添加两个依赖, boot-inf下的 classes和lib 3.配置调试器 添加 remote jvm debug 1.根据jdk版本选择调试参数 2.选择module classpath为解压后的文件夹名 如图,运行jar包的附加参数为 -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005 运行jar包的命令为 java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005 -jar ChatterBox-0.0.1-SNAPSHOT.jar 4.运行jar包 java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005 -jar ChatterBox-0.0.1-SNAPSHOT.jar 看到这个就成功了 5.idea打断点调试 在关键处打上断点 debug 浏览器访问web并带参数发送一起请求 成功debug

【mongoDB】文档 CRUD

目录 1.插入文档 批量插入: 2.查询文档 3.更新文档 4.删除文档 deleteOne() deleteMany() findOneAndDelete() 1.插入文档 可以使用 insert () 方法或者 save() 方法向集合中插入文档 语法如下: db.collection_name.insert(document) collection_name 代表集合名 document 代表要插入的文档 例如: 这里向ccc集合插入了一个文档,文档内容为 name:"张三",age:20,sex:"男" 注意: 如果插入的文档中没有_id键,MongoDB会自动为其添加一个自动生成的_id键,将其保存在数据库中。每个_id键都是唯一的。 批量插入: https://blog.csdn.net/m0_67930426/article/details/135873524https://blog.csdn.net/m0_67930426/article/details/135873524 2.查询文档 语法: db.collection_name.find() 使用查询条件限制返回的文档 例如 这只返回名称字段为"张三"的文档 这样可能不太明显,我再插入一个文档 如果我要查找年龄大于23的人 $gt(大于) 查询年龄小于23的人 $lt(小于) 投影查询 这样查询只返回名字和年龄字段 3.更新文档 首先查看一下文档 将张三的年龄更改为25 查看文档 $set 也可以用$inc 代替 4.删除文档 deleteOne() 使用deleteOne() 方法删除单个文档 首先查看所有的文档 现在要删除Bob这个文档 db.ddd.deleteOne({name:"Bob"}) 查看ddd集合里的文档 关于Bob的文档已被删除 deleteMany() 使用 deleteOne() 方法只能删除单个文档 例如在图中,关于Alice 的文档有哪个,使用deleteOne()方法 ,只能删除第一个符合条件的文档,若想把有关Alice 的文档全部删除,可以使用deleteMany() 方法 db.ddd.deleteMany({name:"Alice"}) 查看文档

js的使用总结(一)

根据一个以知数组的code,对另一个未知数组排序. let list = [ { name: '华东', code: '3' }, { name: '华南', code: '2' }, { name: '华北', code: '1' }, { name: '中西', code: '4' } ]; list.sort((a,b)=>{ //目标code let order=['1','2','3','4']; return order.indexOf(a.code)-order.indexOf(b.code); }); console.log(list); /* *排序后的结果 [ {name: "华北", code: "1"}, {name: "华南", code: "2"}, {name: "华东", code: "3"} , {name: "中西", code: "4"} ] es5 数组对象去重 // 数组 去重 let obj = {} let peon = listSubje.

openlayers+vue实现缓冲区

文章目录 前言一、准备二、初始化地图1、创建一个地图容器2、引入必须的类库3、地图初始化4、给地图增加底图 三、创建缓冲区1、引入需要的工具类库2、绘制方法 四、完整代码总结 前言 缓冲区是地理空间目标的一种影响范围或服务范围,是对选中的一组或一类地图要素(点、线或面)按设定的距离条件,围绕其要素而形成一定缓冲区多边形实体,从而实现数据在二维空间得以扩展,后续也可以生成栅格进行叠加分析等。 简单来说,缓冲区就是影响范围,比如想看看自己小区附近10公里范围内有哪些加油站,这个以自己小区为中心,半径10公里的圆,就是一个缓冲区。 一、准备 本文已经预设建好了一个vue项目 接下来需要安装openlayers npm install openlayers -- save 安装地图工具tur npm install turf -- save 二、初始化地图 1、创建一个地图容器 <template> <div style="width: 100vw; height: 100vh"> <div id="map" style="height: 100%; width: 100%"></div> </div> </template> 2、引入必须的类库 <script> // 引入地图库 import Map from 'ol/Map' // 引入视图 import View from 'ol/View' // 地图控件,例如放大、缩小、比例尺等 import { defaults as defaultControls } from 'ol/control' // 地图瓦片 import { Tile as TileLayer } from 'ol/layer' // 地图瓦片资源 import { WMTS } from 'ol/source' // 地图瓦片网格 import WMTSTileGrid from 'ol/tilegrid/WMTS' // 地图投影相关工具 import * as olProj from 'ol/proj' // 获取地图范围工具 import { getWidth, getTopLeft } from 'ol/extent' </script> 3、地图初始化 <script> // 引入地图库 import Map from 'ol/Map' // 引入视图 import View from 'ol/View' // 地图控件,例如放大、缩小、比例尺等 import { defaults as defaultControls } from 'ol/control' // 地图瓦片 import { Tile as TileLayer } from 'ol/layer' // 地图瓦片资源 import { WMTS } from 'ol/source' // 地图瓦片网格 import WMTSTileGrid from 'ol/tilegrid/WMTS' // 地图投影相关工具 import * as olProj from 'ol/proj' // 获取地图范围工具 import { getWidth, getTopLeft } from 'ol/extent' export default { data() { return { // 地图对象 map: null, // 地图中心 center: [117.

chatGPT辅助写硕士毕业论文

一、写作顺序 1.标题、研究问题、研究方法 2.文献综述(占比1/5-1/6) 3.论证章节 4.结论、不足、启示 5.处理图表、参考文献的格式 6.绪论或引言 7.摘要、关键词 8.查重、装订 http://【硕士毕业论文写不下去,多亏听了张博士的论文写作课,3万字论文1个月写完!】 https://www.bilibili.com/video/BV1B54117736/?share_source=copy_web&vd_source=5b7d5a8bf9f858ab692104490e705159 二、AI三步找到最有价值的研究问题 1.第一步:发散研究问题 感兴趣的现象——>学术提问 例:青年失业和心理健康 推荐工具:scite可以帮你开脑洞,想选题 使用方法: (1)输入英文指令 (2)选学科领域(可以选择多个学科,生成跨学科的脑洞,) (3)选择问题个数(可以选择一次性生成多个结果,最多可以生成50个研究问题) (4)继续生成更多研究问题(这些研究问题都有真实论文支撑) (5)右键议成中文 (6)用结果开脑洞 2.第二步:聚焦学术问题 (1)聚集一个问题 (2)继续提问 (3)生成细分问题 3.判断研究价值 1.把涉及到议题的文献都拿来读一读,可以查看到可视化的网络 它还有(支持性、提及性、反驳性)的三种分类 反驳性引用:有争议就是有价值 提及性引用:如果被引用就说明是有价值的 支持性引用:有发展 http://【不会论文选题?AI三步找到最有价值的研究问题】 https://www.bilibili.com/video/BV1vc411o7qF/?share_source=copy_web&vd_source=5b7d5a8bf9f858ab692104490e705159 三、chatGPT六步完成一篇论文 一、现象确认 目的:确定你和chatGPT所描述的是同一个东西。 提问示例:你知道中国的一种教育现象,叫”鸡娃“吗? 如果它不知道的话,直接发几篇鸡娃的文章让它学习 二、学术概念化 为什么要概念化?因为日常语言与学术语言是两套语言体系。在学术里,鸡娃很可能有对应的学术概念。定位学术概念,就可以连接到已有的学术研究。 提问示例:关于鸡娃,在教育学会用什么概念研究呢? 三、定位学术资源 1.聚焦感兴趣的学术概念,定位学术文献 提问示例:家长摄入有哪些类型,请推荐5篇引用率较高的英文文献并介绍(有详细的限定词) 2.换不同的方式问,保证文献的质量和丰富性 比如,问高引文献、综述文献、按时间或按某些主题的文献、指定某些期刊的文献等 3.让它总结这些文献,你和AI同频学习 提问示例:请用1500字总结这5篇文献内容,包括背景、问题、方法、分析、案例、结论这六个方面 如果学习中,发现一些有趣的子概念或相关概念,可以继续追问学习 四、对比分析 chatGPT擅长对知识进行连接,帮助创新 可以进行跨学科对比、跨地域对比、跨时间对比、概念之间对比、理论和现实对比等等 发展理论,也能提供现实启示 概念对比,例如:参与型家长涉入和控制型家长涉入,请对二者比较,列五个方面 时间对比,例如:关于中国教育的家长涉入,十年前和现在有什么不同 地域对比,例如:中国和美国在家长涉入方面,有什么不同之处 五、启示分析 通过上面对比,找到感兴趣的点进一步分析,给出理论或现实启示 提问示例1:这三个案例对中国改善鸡娃现象有哪些启示,青葱学校、政策、家庭、市场四个方面给出建议 提问示例2:中国的“鸡娃”现象研究能够为英文文献力关于家长涉入问题,提供什么新方向 六、写初稿 1.先定标题:既有罗技,又出其不意! 提问示例:我想研究中国的鸡娃现象,你可以根据我们上面的聊天内容,帮我生成三篇论文的标题吗 先定大纲:既有针对性,又符合学术规范 提问示例:《中国家校合作的新路径:从家长涉入角度探索减少鸡娃现象的方法》这篇标题有启示、请帮我生成论文大纲 2.再逐个部分写出来,记得检查文献真伪,假的要替换成真的 提问示例:文献综述部分,请帮我写500字,请加上参考文献和学者观点

如何基于 ESP32 芯片测试 WiFi 连接距离、获取连接的 AP 信号强度(RSSI)以及 WiFi吞吐测试

测试说明: 测试 WiFi 连接距离,是将 ESP32 作为 WiFi Station 模式来连接路由器,通过在开阔环境下进行拉距来测试。另外,可以通过增大 WiFi TX Power 来增大连接距离。 获取连接的 AP 信号强度,一般可以通过 WiFi 扫描(Scan)来获取周围环境下的热点的 AP 的信号强度,注意: 距离越远,信号强度越弱。 测试 WiFi 吞吐,一般是通过 UDP 协议频繁发包,来看传输速率。可以关闭 Power Save 模式来增加 WiFi 吞吐。 测试方法: 可以基于官方 esp-idf/examples/wifi/iperf 例程来完成这些测试。 软件设置: 设置 WiFi TX power 关闭 Power Save 模式 芯片下载 esp-idf/examples/wifi/iperf 例程之后,可通过运行如下指令来完成测试: 测试 WiFi 连接距离 sta cc2.4 espressif 参数说明: sta: 代表将 ESP32 作为 WiFi Station 模式cc2.4 : 被连接的路由器的 SSID12345678: 被连接的路由器的 Password 获取 WiFI AP 的信号强度(RSSI) scan 测试 WiFi 吞吐 iperf -c 192.

力扣hot100 腐烂的橘子 BFS 矢量数组 满注释版

Problem: 994. 腐烂的橘子 文章目录 思路复杂度💝 Code 思路 👨‍🏫 参考 复杂度 时间复杂度: O ( n ) O(n) O(n) 空间复杂度: O ( n ) O(n) O(n) 💝 Code class Solution { int[] dx = new int[] { 0, 1, 0, -1 };// 行 矢量坐标数组 int[] dy = new int[] { 1, 0, -1, 0 };// 列 矢量坐标数组 /** * @param grid 0表示格子为空,1 表示新鲜橘子,2 表示腐烂橘子 * @return */ public int orangesRotting(int[][] grid) { int n = grid.

如何在 Ubuntu 20.04 上安装 MySQL

介绍 MySQL是一个开源数据库管理系统,通常作为流行的LAMP(Linux、Apache、MySQL、PHP/Python/Perl)堆栈的一部分安装。它实现关系模型并使用结构化查询语言(更称为 SQL)来管理其数据。 本教程将介绍如何在 Ubuntu 20.04 服务器上安装 MySQL 8.0 版本。通过完成它,您将拥有一个可工作的关系数据库,您可以使用它来构建您的下一个网站或应用程序。 使用DigitalOcean 托管数据库快速创建 MySQL 数据库。让DigitalOcean专注于维护、升级和备份。 先决条件 要学习本教程,您将需要: 一台 Ubuntu 20.04 服务器,具有非 root 管理用户和配置了 UFW 的防火墙。要进行此设置,请遵循我们的Ubuntu 20.04 初始服务器设置指南。 第 1 步 — 安装 MySQL 在 Ubuntu 20.04 上,您可以使用 APT 软件包存储库安装 MySQL。在撰写本文时,默认 Ubuntu 存储库中可用的 MySQL 版本是 8.0.27 版本。 要安装它,请更新服务器上的包索引 sudo apt update 然后安装mysql-server包: sudo apt install mysql-server 使用以下命令确保服务器正在运行systemctl start: sudo systemctl start mysql.service 这些命令将安装并启动 MySQL,但不会提示您设置密码或进行任何其他配置更改。因为这会使您的 MySQL 安装不安全,所以我们接下来将解决这个问题。 第 2 步 — 配置 MySQL 对于全新安装的 MySQL,您需要运行 DBMS 包含的安全脚本。此脚本更改了一些不太安全的默认选项,例如远程 root 登录和示例用户。

关于three.js在使用transformControl后的卡顿问题

关于three.js在使用transformControl后的卡顿问题 问题描述问题分析找到问题,分析为什么会造成这个问题?问题解决 问题描述 变换控制器( O r b i t C o n t r o l s OrbitControls OrbitControls)与轨道控制器( T r a n s f o r m C o n t r o l s TransformControls TransformControls)之争 为什么在执行完transformControl.attach(object);后, 轨道控制器就变的卡顿,即使我用 transformControl.detach();之后, 还是卡顿异常 问题分析 关于这个 three.js 中遇到的问题,即在使用 TransformControl.attach(object) 之后 OrbitControl 变得卡顿,可能是由于几个潜在的原因引起的。考虑到我们已经在 dragging-changed 事件中禁用了 OrbitControl, 即, transformControl.addEventListener('dragging-changed', function (event) { controls.enabled = !event.value; }); ,这个问题可能不完全是由事件处理冲突导致的。以下是一些可能导致这种行为的原因及解决方案: 性能问题 复杂的场景渲染:如果您的场景非常复杂(许多物体或高多边形计数),那么在进行交互操作(如变换控制)时,性能可能会受到影响。解决方案:优化场景,减少渲染负担,例如通过减少场景中物体的数量或细节。 过度渲染(经过九牛二虎之力,终于找到了问题的关键,就是过度渲染!!!) 频繁更新:render() 函数可能被频繁调用,尤其是在您的 transformControl 的 ‘change’ 事件监听器中。解决方案:确保 render() 函数仅在必要时调用,或使用 requestAnimationFrame 来管理渲染循环。 资源未正确释放 资源管理:在使用 transformControl.