知识图谱初探(二)三体人物关系图谱构建

《三体》电视剧正在热播,忽然觉得如果用知识图谱来构建下其中的人物关系,想必应该有趣!
那我们就开始吧!
首先列一下其中的相关人物

叶文洁 叶文雪 沙瑞山 杨冬 杨卫宁 白沐霖 邵琳
叶哲泰 罗辑 汪淼 史强 常伟思 丁仪 魏成
徐冰冰 李瑶 豆豆 雷志成 程丽华 伊文斯 潘寒
申玉菲 庄颜 泰勒 雷迪亚兹 希恩斯 章北海 程心
艾AA 关一帆 智子 歌者 1379号监听员 山杉惠子 冯·诺依曼

同样适用neo4j来添加以上人物实体

CREATE (n:Person {
   name:'叶文洁'}) ;CREATE (n:Person {
   name:'叶文雪'}) ;CREATE (n:Person {
   name:'沙瑞山'}) ;CREATE (n:Person {
   name:'杨冬'}) ;CREATE (n:Person {
   name:'杨卫宁'}) ;CREATE (n:Person {
   name:'白沐霖'}) ;CREATE (n:Person {
   name:'邵琳'}) ;  
CREATE (n:Person {
   name:'叶哲泰'}) ;CREATE (n:Person {
   name:'罗辑'}) ;CREATE (n:Person {
   name:'汪淼'}) ;CREATE (n:Person {
   name:'史强'}) ;CREATE (n:Person {
   name:'常伟思'}) ;CREATE (n:Person {
   name:'丁仪'}) ;CREATE (n:Person {
   name:'魏成'}) ;
CREATE (n:Person {
   name:'徐冰冰'}) ;CREATE (n:Person {
   name:'李瑶'}) ;CREATE (n:Person {
   name:'豆豆'}) ;CREATE (n:Person {
   name:'雷志成'}) ;CREATE (n:Person {
   name:'程丽华'}) ;CREATE (n:Person {
   name:'伊文斯'}) ;CREATE (n:Person {
   name:'潘寒'}) ;
CREATE (n:Person {
   name:'申玉菲'}) ;CREATE (n:Person {
   name:'庄颜'}) ;CREATE (n:Person {
   name:'泰勒'}) ;CREATE (n:Person {
   name:'雷迪亚兹'}) ;CREATE (n:Person {
   name:'希恩斯'}) ;CREATE (n:Person {
   name:'章北海'}) ;CREATE (n:Person {
   name:'程心'}) ;
CREATE (n:Person {
   name:'艾AA'}) ;CREATE (n
在MATLAB中构建一个日地月系统的运动模拟模型通常涉及牛顿运动定律以及开普勒定律的应用。以下是一个简单的步骤概述: 1. **导入必要的库**: ```matlab % 导入MATLAB的ode45函数用于求解常微分方程 import mathodes.* ``` 2. **定义常数和初始条件**: ```matlab % 定义太阳、地球和月亮的质量 massSun = 1.989e30; % kg massEarth = 5.972e24; % kg massMoon = 7.342e22; % kg % 初始位置和速度(以天文单位AU和AU/day为单位) initialConditions = [sunPosition; earthPosition; moonPosition; sunVelocity; earthVelocity; moonVelocity]; ``` 3. **计算引力**: ```matlab function derivatives = gravitationalForce(state, t) sunPos = state(1:3); % 太阳的位置 earthPos = state(4:6); % 地球的位置 moonPos = state(7:9); % 月亮的位置 rSunEarth = norm(sunPos - earthPos); rSunMoon = norm(sunPos - moonPos); FSunEarth = massEarth / (rSunEarth^3) * cross(sunPos - earthPos, earthPos - sunPos); % 根据开普勒第定律简化 FSunMoon = massMoon / (rSunMoon^3) * cross(sunPos - moonPos, moonPos - sunPos); derivatives = zeros(9, 1); derivatives(1:3) = state(10:12); % 太阳的速度不受影响 derivatives(4:6) = FSunEarth/massEarth; % 地球加速度 derivatives(7:9) = FSunMoon/massMoon; % 月亮加速度 end ``` 4. **时间范围和步长设置**: ```matlab tspan = [0, 365*24*60*60]; % 模拟一年的时间 dt = 3600; % 时间步长(小时) ``` 5. **求解并绘制轨迹**: ```matlab [t, states] = ode45(@gravitationalForce, tspan, initialConditions); earthPos = states(:, 4:6); % 提取地球位置序列 plotTrajectory(t, earthPos); % 自定义函数绘制轨迹 ``` 注意:上述代码只是一个基础框架,实际操作中可能需要更精确的算法,比如Euler方法、Runge-Kutta方法等,并且需要考虑地球和月亮绕太阳运动轨道的椭圆特性,这里简化为了直线运动。此外,`plotTrajectory`函数需要你自己实现,以显示维空间中个物的运动路径。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值