【WIP】Principia是个啥?我要怎么正确的玩?-Principia教程
封面图by@勾兑面粉 (B站id)
终于,等到Principia专区了,在这个专区内,你可以讨论基本上任何关于Principia的内容,包括轨道,轨道规划,现实航天器轨道,以及6 words you never say at NASA: It works in Kerbal Space Program
Principia Github链接(包含大量纯英文信息 可以在Issue内反馈bug):
GitHub - mockingbirdnest/Principia: 𝑛-Body and Extended Body Gravitation for Kerbal Space Program
𝑛-Body and Extended Body Gravitation for Kerbal Space Program - GitHub - mockingbirdnest/Principia: 𝑛-Body and Extended Body Gravitation for Kerbal Space Program
github.com
里面有下载地址(需要梯子)这里因为原因就不搬了
本帖主要讨论Principia这个mod本体,其次是如何正确高效的使用Principia
目录:
Chapter 1 简单介绍Principia
1. Principia是啥
1.1.1 为啥要用Principia
1.1.2 什么情况下适合使用Principia
1.2 Principia对于设备的要求
1.2.1 你的电脑会不会爆炸?
1.3 Principia的更新规则
1.4 Principia的计算规则
1.5 plotting frame又是啥?
1.5.1 我该如何选择正确的plotting frame?
1.6 Principia独特的Maneuver系统
1.6.1 Maneuver Frame又是啥
1.6.2 万恶之源-机动节点与轨道的影响
1.6.3 我能不能使用自动踩油门mod MJ执行节点?
1.7 我能不能在使用Principia的情况下使用MJ的自动创建节点功能?
1.8 引力边缘?引力平衡点?
Chapter 2 使用Principia的正确姿势
2.1 基础-看懂Principia的轨道
2.2 如何玩好Principia的节点系统?
2.3 选对PF MF 玩好Principia
2.4 如何正确的在不通过任何planning的情况下修正?
1. 简要介绍
1.1 Principia是啥?
这个解释非常简单,就是在原版KSP内加入多体引力计算,意味着所有的物体(包括行星本身)都会收到其它天体的引力造成轨道影响。相比原版的2体引力,Principia模拟了真实世界中的情况,可以修正大部分因为2体引力导致的轨道误差。Principia对于多次连续引力弹弓和飞掠异常有效,因为Principia有一种设定叫pllotting frame,就是你在哪个视角看航天器的轨道,这个以后会多讲,所以这里就不写了。Principia还有一套单独的节点系统,相比原版,精度更高,调整更难。Principia的节点系统跟原版大有不同,Principia的节点计算方式是使用当前载具上的引擎/RCS计算点火时间,以你节点的位置开始点火,这也意味着Principia是不能使用MJ自动点火的,但是根据最新的研究,可能有一些小方法,这个还在实验阶段,所以以后再讲。Principia要求大量的航天知识,建议先在原版把基础都搞好了,比如来个什么KMKEKKJ轨道之后再去玩Princpia。Principia对于新手入坑极不友好,不要尝试刚玩就去体验这个mod,否则因为此mod过于难导致的退坑,本人概不负责。
1.1.1 为啥要用Principia?
在上文中也有提到,Principia就是一个模拟工具,可以模拟大部分\*真实情况,实现很多在原版做不到的真实航天器的轨道。这些轨道基本上都是涉及多引力体影响的,如果不使用Principia,可能出现轨道压根不存在或没有效果的情况。那么这些轨道都有啥,最重要的,所有的拉格朗日点,SSO,还有Lissajous Orbit, 弹道捕获.... 这也是为啥Principia需要一定的知识才能打开。请注意,Principia的轨道不太一样,粉色代表未来的轨道,绿色代表经过的轨道,而蓝色虚线代表flight plan中plan的轨道,还有另一种浅粉色代表flight plan中节点点火的轨道,当然这个不太重要,以后再讲。
1.1.2 什么情况下适合用Principia?
这个问题想简单可以很简单,想难可以很难。最基础的答案,在需要模拟真实航天器情况下使用,要不然kennel会造成严重的误差,但是Principia远不如次,Principia对于多次飞掠的优化比原版要好得多,Principia理论上可以计算无限次飞掠轨道,前提是你的内存足够大,相比原版的几次限制在引力弹弓上有很大的提升。同时Principia对于长时间点火有着其它mod无法比较的优化,因为整体计算方式变了,在Principia中你可以放心的使用电推,只要你能把节点规划出来。因为Principia可以对游戏本身造成极大的性能,帧数冲击,因此对于低配/中配电脑玩家来说建议不必要就不要用,毕竟没人想吃薯片,高配电脑随便用,不过也请注意Principia可能会导致很多崩溃情况,以及内存溢出情况(现在已经好多了,比起一年前1小时崩溃5次,到现在录视频除了作死内存溢出115小时下来就没崩溃过)。
1.2 Principia对于设备的要求
系统:64位系统,Principia几个版本前为了提升性能不再支持32位KSP,也就是说32位系统是不可能用Principia的,64位是个趋势,因此建议所有用户升级64位,否则很多软件都会不断失去支持。
内存:最低运行内存为8GB,低于这个值不要想了,买内存条吧。8GB为纯原版,如果有任何部件类/美化累则为12GB,如果有RO小全家桶16GB,大全家桶24GB,如果想玩RO又不想KSP爆炸的话,建议删掉全家桶中黄色部分的mod(除了Principia)
CPU:Principia对于CPU的要求没那么高,主要的要求是主频,降频版CPU就不要想了,没戏的。Principia的多核优化并不好,因此基本不用担心核心数量的问题,只要是第5代牙膏厂U以上基本都行,举个最好的栗子 i7-7700k i7-6700k 基本可以满足所有玩KSP的需求。当然i3系列第8代也是另一个玩KSP的好选择,因为单核性能贼高,直接5GHZ,对于Principia的运算来说极为合适,但是这种配置只能玩KSP,其它的就不要想了,这也是为什么不推荐。\*此话只适用于较新架构的CPU。
显卡:Principia对于显卡没有特殊要求,装Principia前能跑动就行,Principia基本不使用任何显卡部分,因此不要过度担心。
1.2.1 你的电脑会不会爆炸?
真的,请不要对自己的电脑过于自信,事实证明上一个尝试用低配电脑玩Principia的玩家的电脑已经变成炸薯片了。Principia最近15个版本内修复了大部分的崩溃情况,现在最有可能导致崩溃的原因就是内存溢出,就像上文中写到,本人64G内存,除了作死,115小时没崩溃过,如果你的电脑经常崩溃,比如1小时崩溃2-3次之类的,在不装Principia的时候游戏也有点卡,那么基本可以说明,你的电脑不适合使用Principia,所以请As is,不能用就不要用,否则存档崩溃本人概不负责。上文中也有写到最低配置要求,如果真的想玩,但是不能达到上面的配置要求,去买点硬件升级一下吧。另外Principia使用的是C++和Mathematica对轨道进行微积分运算,如果你是个Mac用户,请更新到最新版本-Descartes(\*2018-09-09),在这个版本中,作者更新了C++版本,使得运算效率可以像WIndows那样高效,而不是上一个版本那样的3fps,甚至卡死。不过从这个版本开始,Principia不再支持MacOS El Capitan,也就是10.12以下的版本,同时苹果也不再支持了,如果你还在这个版本,推荐尽快更新至MacOS Mojave 10.14。
1.3 Principia的更新规则
Principia作为一个巨大的mod,更新方式和大部分mod都不一样。Principia自从20+个版本前就采用了每个新月更新,也就是说每个初一更新,如果你想知道这mod下次更新是啥时候,大概农历日历就好了。同样,因为这种奇怪的更新方式,每个初一的时候,不管新功能做成什么样了,直接放出来,新更新的bug也是一样的,在这种情况下,如果发现这个版本有某些bug影响使用,直接退回上一个版本,同时在确保Principia没有重大bug前,请保留上一个版本,一旦新版本发布,上一个版本的下载链接就会被删除,除非是重大bug影响使用,否则一般是不会在中途发布更新的。Principia更新的命名方式是以A-Z顺序的科学家/数学家名字的当地语言名字进行命名,我也不知道该怎么解释,大概就是Abxxxx,Acxxxx,Baxxxx这种形式进行命名,不过是以本人的国籍使用的语言的,比如之前有一个版本叫陈景润,现在最新的版本是Descartes,下面附上一个近代版本列表(附件上传失败,一会处理)。Principia是由2位程序员开发的,分别是Robin Leory和Pascal Leory(GitHub ID: eggrobin,pleory),是父子关系,瑞典职业程序员。整个mod都是在GitHub上开源的,如果你发现了一个bug,欢迎在此提交帮助mod变得更好 https://github.com/mockingbirdnest/Principia/issues ,如果你觉得可以帮忙修几个bug,写几行码,可以自己fork过去并提交pull request。
1.4 Principia的计算规则
Principia在几个版本前开始了大气内轨迹计算,因此现在即使是在大气内,Principia也能精准的模拟轨迹,同时记录History。在这之前Principia在大气内使用的是原版的2体引力计算。即使是现在,你也能在安装Principia的情况下查看原版2体引力的计算结果,只需把Setting中的Display Patched Conics勾上就可以了,不过请注意不要使用这个进行轨迹计算,这个不是你的真实轨迹,并且会因为多体引力于原版的不同而慢慢变化。注意即使是把这个打开也是不能使用原版的机动节点系统的,依然还是要使用Principia特殊的节点系统。
1.5 plotting frame又是啥?
前文中也有写到,Principia采用了一种大为不同的轨道系统,那么这种东西要怎么用呢?本部分将以最全面的方式介绍这部分。首先,Principia在每个天体中有1-4种plotting frame,分别是:x Centered Inertial(xCI),x Centered x Fixed(xCxF),the barycenter of x and y(xyB),x Centered y Aligned(xCyA)
x Centered Inertial:对应原版的轨道模式,速度为轨道速度,这个就是原版的轨迹计算+多体引力影响,没啥好讲的。同时也是最常用的plotting frame,在大部分情况下用的都是这个。
x Centered x Fixed:对应原版的地面模式,速度为相对于星球表面速度,比原版多了个地面轨迹计算,可以帮助你更好的了解在下一圈轨道你的航天器在这个星球上方的哪个位置,对于在快速旋转的星球准确降落至关重要,简直就是降落神器。
the barycenter of x and y:暂时不了解,以后讲
x Centered y Aligned:极为特殊的计算,在xCI的基础上使用了另外一个旋转视角来看这个轨道,这个旋转视角每进动一圈的时间是x公转y的周期,这么说可能有点难以理解,举个栗子,Earth Centered Sun Aligned,每365天进动一圈,对应就是每天1度,在这种计算方式下,在轨道速度小于一定的情况下就可以画出一个圆,封面图就是这种plotting frame,可以看到图中的2个圆非常明显。这种plotting frame对于进入L1和L2非常关键,因为L1和L2永远是在朝向太阳/背向太阳的那个方向,如果采用xCI,就会发现这个轨道还是以6个月的周期环绕天体的,所以不合适。
1.5.1 我该如何选择正确的plotting frame?
这个问题说简单简单,说难难。简单来说就是文件上告诉你该选哪个你就选哪个,但是问题是有时候需要你自己来考虑这个问题,这时候,事情就变得非常复杂了。1.5中也介绍了几种plotting frame的用处,这时候就需要你自己来分辨情况了。xCI基本上就是在任何天体的低轨或简单轨道使用的,一看就知道什么时候该用。xCxF在降落情况下非常常用,因为可以准确确定落点,在进入SSO轨道时也颇为常用,因为SSO的独特性使得航天器每天(24小时)都经过地球同样位置的上空,随着时间进动,永远在每天的那个时候经过那个地方的上空,如果你不在,那么就说明你没有进入SSO或需要修正轨道了。xyB的主要作用是确认两个物体的质量中心在哪里,适用于进入L3,由于本人不是很了解,所以现在就不多讲了,以后再写。xCyA的作用很简单明了,最主要的是进入L1和L2点,这个没有任何争议,因为其特殊性,对于任何L1 L2轨道来说简直就是完美,同时,对于经过L1 L2的高能量转移/弹弓轨道来说也至关重要,比如大名鼎鼎的ISEE-3的轨道就是使用ECSA规划的,这也是封面图的来源。这里再多说一句,像封面图上那个一次弹弓回来进动40度左右在此相遇月球就是典型的双月旁轨道,这个轨道可以2次相遇月球进行弹弓,用处还是蛮大的,这里就不多写这么多了,这个轨道就是从S1出来,绕一圈,再转回去刚好等于26天半,从而再次于月球交会。plotting frame在执行maneuer上面也是很关键的,不过在这里也没必要讲这么多了,等写到maneuver部分再讲吧。
1.6 Principia独特的Maneuver系统
作为一个真实还原性mod,都对于轨道系统有这么大的改变了,原版那个破机动节点系统是真的令人窒息,所以Principia完全重新制作了Maneuver系统。Principia的Maneuver系统和原版区别很大,因此不要想着原版的会操作Principia的就会操作。Principia禁用了原版的Maneuver系统,即使你打开display patched conics,点击轨道上依然不会出现创建机动节点,所以不要尝试了,Principia的Maneuver系统用好了是非常好用的,当然前提是你会正确的用。要想了解这个Maneuver系统,最该先了解的是3/6个方向,分别是Targent,Normal,Binormal。每一个方向都可以调节正负。Targent+对应原版的Prograde也就是顺向,Targent-对应原版的Retrograde也就是反向。Normal+对应原版的Radial Out也就是径向向外,Normal-对应原版的Radial In也就是径向向内。Binormal+对应原版的轨道法线方向,Binormal-对应原版的反法线方向。那么有些人问了,第4个是调啥子的?聪明人一看就知道第4个是调时间的,Maneuver3/4大要素:2/3向dV,时间。那么又有人问了,为啥Maneuver还能只有2向dV?其实现实中很多航天器都是使用2向系统的,分别是Radial和Axial,对应Normal和Binormal,下次再看Press的时候别问Radial和Axial是啥了。
1.6.1 Maneuver Frame又是啥?
那有人可能问了,为啥flight plan窗口里还有个Maneuver Frame(以下简称MF)?聪明人一下就想到这玩意八成跟Plotting Frame(以下简称PF)又关系。确实有关系,不过关系并不简单(别想歪了)。Maneuver Frame翻译过来的意思就是机动节点执行的Plotting Frame,如果你的PF是ECI,MF也是ECI,那么你调整一点Targent调节的方向就是你当前Prograde的方向,这个栗子够明白了吧,复杂点说就是MF的执行方向就是和它同样的PF中的方向。正确的选择MF至关重要,假设别人给你了一串机动,如果你选错了MF,那一串机动的方向都是错的,尤其是当你在又3+个节点的时候,因为Principia不支持多节点编辑,而精确调整每个节点的dV非常耗时,经常容易点过了,如果你在添加了很多个节点后才发现MF是错的,那么恭喜你,你需要把所有的节点都删了重新设置MF再次添加回来。而这种情况非常多,比如我们在调整ISEE-3轨道时使用的MF是ECI,而PF是ECSA,有时候经常@勾兑面粉 给了我一个两个节点修正然后搞错MF。
1.6.2 万恶之源-机动节点与轨道的影响
温馨提示:本部分内容不是萌新能理解的,如果感觉自己理解不了,可以直接跳过本部分去阅读下一部分。
在上一部分我已经举过一个简单的栗子了,机动节点与轨道的影响完全就在于自己对于轨道的理解能力,如果能理解你这个轨道往一个方向调整的结果是什么,那么这一部分对你来说非常简单,但是显然,大部分人并不。在一个MF与PF相同的情况下,正常情况下,只要你在原版打好了基础,那么这完全不难,因为这就是原版的情况,这也是最简单的情况,但是如果出现了一个引力弹弓,事情就变得没那么简单了。一个什么都没有的轨道意味着你往哪个方向修正,你的轨道就会偏向那个方向,但是一旦有一个引力弹弓,你修正的就是引力弹弓前的轨道,从而调整经过弹弓的天体的轨迹,使得离开后的轨迹发生影响,这种情况对于一般人来说就非常难了,因为涉及到了同时考虑2个天体的PF,而调整的方向也会变得难以预料,在不考虑任何多次弹弓的情况下,只需要看一下弹弓天体的PF就可以得出离开后的轨迹啊,前提是你记住了原来的轨迹,并可以非常精确的计算,显然,有点难,对于大脑来说几乎不可能,于是就又了一种更费劲但是更省脑的办法:首先,切到弹弓天体的xCI,然后拉到一个大概的Pe高度,差不多就行了,这个值以后还要调,只不过是一个基准而已了,随后再切回原来的PF,不管是啥,然后继续调整直到得到你想要的轨道,之后,再切到弹弓天体的xCI,查看Pe高度是不是你想要的,如果是,那就对了,如果不是,那么请确认你轨道的形状和时间,再次调整。
但是有时候还会有一个更复杂的条件,因为有时候PF differs from MF,就是你看到的那句警告,意思就是MF和PF不一样,不过这其实不是一个问题,只是怕你搞错了。举个简单的栗子,ECI和ECSA中的方向都是不同的,如果你使用ECI作为MF,ECSA作为PF,那么你在ECI中修正的方向基本上不太可能是在ECSA中你想要的,因为ECI和ECSA的方向不一样。再去看导航球,如果你调整ECI Targent+1m/s,去导航球上找节点执行方向,你会发现节点执行方向不再Prograde上,而是在他边上,这就是ECI与ECSA在同样方向上的差距,因此PF和MF不同时情况异常复杂,但是正巧,这是个非常好用的组合,不想某些组合,这个组合调整起来反而更好用,原因比较复杂,一个可以解释的原因时ECSA时旋转版的ECI,因此从ECI修正ECSA的方向从正常角度来讲是完全正确的。在ISEE-3视频中,我的机动一共采用了3中不同的MF,分别是ECI,ECSA,MCI,在不同的位置使用不同的MF是非常重要的,如果有时候一个轨道调不出来,不如想想这个轨道需要怎么调整,哪个MF也许可以用,然后去试试,慢慢来就可以了。
最复杂的就是一串Maneuver都有不同的MF,那时候就是真的,头大,因为你也不知道什么情况,不小心点错了一个就难受了。不过要注意的是Principia正常情况下一个屏幕智能放下5-6个节点,根据分辨率不太一样,所以尽量尝试使用更少的节点数量,否则可能到后面就非常麻烦,Principia更难受的是不支持多节点编辑,你编辑完下一个节点想在回去调上一个就不行,这导致了规划多节点变得极其麻烦,而深度优化dV成为了不可能。咱大概3周前提交了这个Enhancement,就是不知道什么时候做,如果做了我会为大家带来第一时间的消息。
1.6.3 我能不能使用自动踩油门mod MJ执行节点?
行,不行。行是因为MJ支持执行Principia的节点,不行是因为Principia的节点系统和原版有很大的差异,会导致根据点火时间不同而变化误差,这也是为什么不推荐,点火时间越长,误差越大,以上是机遇传统式节点执行方法。在深度了解之前,首先要明白原版和Principia节点的不同。原版的节点是假设你可以在一瞬间执行点火,然后通过方向优化在节点两侧均匀分布点火时间从而进入轨道,这种方法的误差不大,但是效率也不高,因为先大幅压低了轨道,随后又把它拉回去。Principia是在节点的位置开始点火,计算点火时间和加速轨迹,给出最终的轨迹,如果使用MJ点火,就意味着比Principia预计的提前了一半点火时间点火,导致最终角度与预计不符,造成误差。此时,有些聪明人注意到上面的3个框框:Active Engines,Active RCS,Instant Impulse,那么这些都是什么意思呢?第1个是以当前启动(左侧分级有燃料条的引擎)引擎计算点火,第2个是以开启的RCS计算点火,而第3个是在节点位置瞬间推进,就像原版的轨迹计算一样。这时,又是聪明人,就想到了那么可不可以用第3个然后使用MJ进行点火呢?可以,并且可以有效减少误差,达到传统方法的20%一下。\*这是本人某天晚上睡不着想出来的奇葩方法,未测试,但是通过计算证明确实可以减少误差。那么又有人问了,剩下的这些误差是哪来的呢?因为Principia采用的是动态追踪节点位置,所以不会有像原版那样的节点前向下,节点后向上的优化,因此意味着开始点火后位置不断升高,使得到节点这个点上面时比预计的高,从而产生误差。
1.7 我能不能在使用Principia的情况下使用MJ的自动创建节点功能?
能,非常能,但是极度不推荐,因为首先,MJ的自动创建节点是基于原版的Patched Conics的,而如果节点创建时间过早,你就会发现你实际的轨迹根本飞不到那里去,然后这个节点就废了。其次,你是看不到节点的,因为他的展示方式是原版的轨道上那种,也就是说节点后的轨道全靠MJ的那一句话,有时候还不如自己去执行呢。不过MJ在有些情况下有好处,比如圆化的时候,因为Principia的节点dV是不变的,因此只能看Cutoff时间决定什么时候熄火,如果点火迟了一点并按照给的时间关机,就会导致节点执行亮过小,点火时间晚同理,使用MJ就和原版一样,节点剩余dV会慢慢变少,直到没有,因此在入轨时更推荐使用MJ而非手拉。那么又有人问了,转移能不能使用MJ呢?答案比你想象中的简单:不能。为什么呢?首先,MJ的节点规划是完全基于原版Patched Conics的,而地火转移的时间长达7个月,7个月的二体与多体差距已经大到基本没法用的状态了,一个60km pe,一个100000km pe。因此转移的节点还是推荐用手拉。另外,请注意,MJ是完全不支持飞xCI的PF的,如果你在地日L1 Halo,那么如果你尝试使用MJ的调整pe,那么MJ会直接给你降低太阳轨道的机动,所以在引力平衡点附近不要尝试使用MJ。MJ以后可能会有支持,但是至少不是近代的事了,人家作者还在更新引力模型呢,做好了应该是因此大更新,但是很可惜,新版本Principia Diopantus(原谅我打不出来希腊文)还没有更新。\*文件上传WIP,下周有时间弄。
1.8 引力边缘?引力平衡点?
作为Principia特色,这玩意也是很令人窒息,虽然前文也有提到引力平衡点,本段还是专门讲一下吧。最简单的就是L1-L5这5个拉格朗日点(Lagrange/Libration Points),但问题是在这几个点附近可不是窝在那不动,而是以一定轨道环绕这个引力平衡点,相对比呆在这个点上更容易进入,而且在大部分情况下修正更容易。那么要想了解这些,最应该先了解的是5个拉格朗日点的位置。
L1:位于两个天体引力的交界处,有具体计算公式,吸引点,较为容易进入,对于从天体A(小天体)发射研究大天体(天体B)或者持续的从一个方向研究天体A非常有帮助。
L2:位于天体A向天体B的离心方向,排斥点,因为是排斥点的缘故,较为难进入。对于天体B是恒星的情况下可以做到不受到来自恒星的光线影响,从而更好的观测其他天体。
L3:在天体A轨道的相反位置的Barycenter,也就是相比天体A轨道靠天体B近一点,依然是不稳定的,而且极为不稳定,目前没有什么特别有效的方法转移至L3,而且因为无法与地球通讯,现在的利用价值不大。
L4:终于,第一个稳定点,在地球轨道向Retrograde方向60度。范围较大,吸引点,非常稳定,利用价值相对较大,可以让太阳探测器进入附近并提前预测太阳活动区。
L5:和L4基本一样,只不过是在Prograde方向60度,当前没有发现什么利用价值。
那么问题来了,这些点上面都有什么轨道呢?
Halo Orbit:光晕轨道,最常见的,由Robert Farquhar在1968年提出,是一种以一个特殊形状环绕引力平衡点的轨道,参考ISEE-3的轨道。进入极其简单,修正相对容易,对于多次高能轨道弹射很舒服。
Lissajous Orbit:倾斜环绕轨道,也是极为常见的,周期在1年左右,不需要多次少量的修正。最早被[Jules Antoine Lissajous](https://en.wikipedia.org/wiki/Jules_Antoine_Lissajous)发现。
注意,L1-L3都是极为不稳定的,不管修正的多么精确,你最终还是会掉出去,因此不推荐同时管理多个航天器,否则可能掉出去都不知道。目前Principia还没有自动修正的插件,作者表示这些东西会慢慢的加进来。
Chapter 2 使用Principia的正确姿势
2.1 基础-看懂Principia的轨道
hmmm,非常简单,和原版相似度还是挺高的,只不过颜色换了换,复杂了一点。本章会介绍Principia轨道的颜色和对应的原版颜色,以及Patched Conics的用法和万万不能使用的方法。
粉色:当前轨道的计算,长度可以通过调整上面的Steps和Tolerance进行调整,对应原版的蓝色线。
绿色:Principia特色,经过的轨道,可以通过调整上面的History Length来调整纪录的时间长度,当然如果你想关掉,把它调到最小就基本上没有了。不对应原版的任何线,因为原版没有这个功能。
蓝色虚线:Principia的节点系统,在这里称为Flight Plan,前面也有写这个独特的方式,不过除了节点调整从在一个滑稽圆圈上面往各个方向啦拉,变为了在这个节点位置使用费给出的方向进行在一个可以拉的东西上调整,其它都和原版完全一样。对应原版的黄色虚线。
红色:一种极为少见的线,除非你经常玩电推或者看的非常仔细,拉到轨道界面放到最大,否则一般都找不到。这条线比正常的轨道线颜色更偏红,表示的是点火的位置,因为Principia的节点系统在你不设置的时候是以节点位置开始,计算点火时间,直到达到你的最终dV,并把点火过程中的轨道显示出来。依然不对应原版的任何线。
那么,什么事Patched Conics呢?Patched Conics是Principia显示原版2体轨道的开关,打开即是现实原版轨道,关掉就会隐藏。注意,使用Patched Conics万万不能像原版那样用,一般有2种Patched Conics的用处。
在轨道周期过长时:由于Principia的flight plan系统有一个极限,大概3000天左右,但是有时候,比如在设置哈雷彗星的轨道的时候,你拉到内存溢出也不可能拉出来13000天,这时候就可以用到Patched Conics了,请注意,这种情况只适用于在非引力边缘地区,因为原版不计算引力边缘。这样可能会导致小于%1的误差,但是总体来说够精确了。
在查看多体和2体的区别时:这个就简单明了了,举个特别简单的例子,弹道捕获,又名Ballistic Capture,就可以明显的看到2者的区别。第一个直接离开地球SOI了,而第二个被月球缓缓的拽过去,最终完美捕获月球。这个同样还可以让你了解使用多体引力计算的作用
2.2 如何玩好Principia的节点系统?
最近在各大KSP群内摸了一段,然后看到了好几次问说Principia可不可以用原版的节点系统,表示Principia的节点系统难受的要命的。我想说的是,真的,Principia的节点系统比你们想象中要好用,只不过你不会用而已了,用好了这个和原版系统差不多的节点系统调整经度上会有巨大的提升。Principia的节点系统就是4个用鼠标拉动莱调整的轴而已,在前面也有写到,每个周往右拉就是正,左拉就是负,一共4个调整指数,3个空间,1个时间,每个都有正负两个方向,只不过Principia的这个轴每拉一点对应每秒提升的速度不是等比例的,注意一般不要把这个轴拉到头,否则会快的要命。之前也有写到,targent=prograde/retrograde,binormal=radial in/radial out,normal=法线方向/反法线方向。记住这些是玩Principia节点的基础,如果不知道这些基本就是瞎调一同。注意前面也写到过Plotting Frame和Maneuver Frame,不过这点对于小白不用太担心,只要选对了Plotting Frame,Maneuver Frame就会自动和Plotting Frame保持一致。在整个Chapter 2中,为了节省时间和空间,Plotting Frame简称PF,Maneuver Frame简称MF。在接下来的一段中本人也会写到如何正确的选择Plotting Frame避免把轨道搞坏,一般来说小白不用了解怎么选择MF,跟着PF就对了。
2.3 选对PF MF 玩好Principia的核心部分
本人表示其实这段应该放前面的,但是因为如果放前面就有很多东西冲突,因为本人太懒所以就没改。首先,前面也有介绍到Plotting Frame(PF)和Maneuver Frame(MF)这两个概念,基本来说就是你红线的定位方式和Flight Plan中机动节点前后轨道的定位方式,注意这两个可以是不同的,默认PF和MF是一致的,MF直接决定了你6基本方向的相对天体,众所周知,在Mun的SOI时和在Kerbin的SOI时的Retrograde压根就不是一个方向,因为你相对的天体变了,Principia的这个功能就是干这个的,因此推荐假设你在地球的SOI中,这时你需要降低飞掠月球Moon的高度,那么此时,更方便的解决方案是将PF和MF都设为MCI,然后向MCI的binormal -方向执行机动,就可以完成这一任务,相比起来不断的调整在ECI中的方向要简单很多,当然,2.2中就写到了6个基础方向,在玩机动节点前不如先背下来基础6方向,这样游戏体验会好很多,不用再话费1个小时看你想要向那个方向点火,如何在节点系统中找到这个方向。
2.4 如何正确的在不通过任何planning的情况下修正?
从这里开始,教程开始变得需要一定的体验才能读懂了,因此如果看不懂,推荐先去玩一玩。众所周知,Principia有2个很智障的特性,第一是只能plan一次,如果你想中途修正,要不就把之前的plan全部都删掉,可是这样如果你费劲好久plan出来的轨道就没了,要不就靠眼睛修正,但是不简单。第二个智障特性是不支持多节点规划支持,假设你想修正前面一个节点,你就得把后面的全部删掉,等修正完了再加上去,这就是件很烦的事,因为节点多了之后如果发前面的节点有问题,那么后面的都要删掉,改完再靠手加上去,就连MF也要都删一遍才能修改前面的。那么这一部分就来写一下如何靠手修正没执行好/有合理误差的节点
首先,要修正的第一步事,切换PF,没错,玩过原版200小时以上的玩家基本都能知道为什么要做这一步,如果不做,你的整个执行方向都是错的,而且你也无从判断是不是错的,假设你需要执行一次月球的飞掠,高度20,000km 倾角0度,你现在的高度事23000,倾角是3度,那么首先,你需要通过MCI看是向该修正的方向还是反过来,因为目标天体位置的不同,有时候可能你需要向需要修正的相反方向执行,才能得到想要的效果,如果不确定怎么找到,推荐还是用很少的燃料看一下到底那个方向是正确的,再去执行。在执行时,请千万看好自己的轨道,不断转镜头以确认轨道的情况,因为有时候很容易搞混高度和小倾角差距,所以转一下保险。记住在接近目标轨道时如果是用RCS使用H键,这样就相当于碰一下键盘点火一下,如果使用引擎请线关小到很低,再慢慢调整油门,并随时准备按Z,注意如果用的是RCS而需要的dV又很小的话,靠近目标轨道时连RCS的推理都要调到很小才能避免过度执行。如果你需要修正多个方向,请务必在修正完一个方向后关闭RCS(如果有/用RCS修正的话),关RCS,关RCS,重要的事情说3遍,因为如果不的话你会惊喜的发现你刚刚费了半天劲修正的轨道已经飞走了。
有时候感觉在执行点火出误差修正是整个Principia里面最难的一件事,确实是的,因为你的老盯着航天器修正,还要紧张的调整,可不是按照Maneuver给的时间和量修正就好了。修正主要还是要靠尝试,因为比起去推理该去的方向,还不如试一下来的快。
更新日志:
\*(2018-10-04)今天先更到这,明天继续
\*(2018-10-05)飞机上无聊码字1小时,同时还把很多排版改了一下,并进行了本地备份(在word里面复制一份),开学后尽量保证周更吧,和Principia一样,每周日不管写了啥,都发一下。今天码到了5400字符,3700字(中文)/词(英文),希望大家持续支持,要不然真没动力更新了,谢谢。
\*(2018-10-06)继续飞机上码字,距离开学还有最后一天(因为时差),今天码到了5700字,也就是又码了2000字,今天的干货真的特别多,基本讲到最复杂的情况了,很费劲。当前字符数量8400,又字符数量是因为WordPress计算的是字符而非字词。
\*(2018-10-07)好吧,因为忘记同步某作业的文档,导致我电脑上这个还是个超老版本的(我咋知道为啥,我记得我上一次写是在笔记本上啊)于是我就又码了700字,然后突然想起来我忘记整理文档了,那个好像在Download里面,一看,果然在,不过幸好时间还够。现在已经是6411字,9100字符了,有时间继续。
\*(2018-10-08)今天啥也没写,提交一下之前写的,现在写到关键段了,文体比较多,下周日更新修复现阶段所有的问题。最近几天要专心做视频了。偷偷更新了哎嘿嘿嘿
\*(2018-10-12)最近真的,学业繁忙,直到周五才回来更新,周末任务挺多的,所以这周更新很少。真的,这最初是一个4000字小坑,被我一点点写成了史诗巨坑,也是绝了。视频因为学业繁忙的原因也做的很少,慢慢来吧。Principia这周更新了,版本Principia Diophantus(希腊文,我打不出来,只能打英文),基本一样,不想更新可以不更新。同时,这周,因为本人不小心洒了一口饮料,导致了陪伴我码这篇文章的笔记本空格和CMD彻底按不下去(被糖粘住了)。此时,这篇文章已经达到了10000字符,5位数警告。目前文章问题还没有修,前台编辑也没弄,周末弄吧
\*(2018-10-13)修复barycenter的问题(old:xMB,new:xyB),写了一下关于引力平衡点附近的,还是差一堆图片,慢慢来吧。还改了一下1.7。昨天跟几个群员聊天时又收到建议改了一下配置部分,单纯的看主频不合适,因为奔腾,你懂的,主频高只适用于新架构的U,主要看单核性能。
\*(2018-10-25)学业繁忙,很久没有更新,然后今天来坎喵抽喵分,突然发现我之前改的那个标题怎么不见了,然后赶快改回来。明天更新一波,如果情况好可能明天下午就发了,不好的化还是周日。
\*(2018-10-29)又更新啦,最近事情更忙了,上任黑域大群管理了,所以来这边的时间真的是少之又少,也就是每天抽个积分而已。今天把上次更新失败(hyx出来背锅!)的2.1部分,据了解由于坎喵升级,这些数据被删除了,导致回到了一个更老的版本。不过今天也从本地备份补上了,不要担心。今天写了一下关于节点系统的,感觉应该先写如何正确的选择PF,要不然估计读完都是懵的。
\*(2018-11-02)终于,最近学业繁忙,1周就写了一次,不过起码写了。这次写了下关于PF MF的基础操作,最近感觉逐渐拉开第1章和第2章的区别了,要更新的东西还是挺多的,另外外链和图片的事还是没做,可能最后其他人会去做,自己现在1周就开一次原版KSP,其他时间学校去Git翻翻码,搬运一下更新,也就这样了。另外最近更新改为不规则,只要写完了就来更新。另外,10000字警告,当前字数10009,已经成为坎喵字数最多的文章,同时按照WP的统计,字符数量已经达到了惊人的14002字,论为什么兴趣是最好的老师。
\*(2018-11-09)回来更新,之后会用iBooks Author做成一个pdf文件 然后所有附件都会更完善一些,不过在坎喵这个版本是会保留并且添加附件的,只不过由于WordPress特色,添加附件会有些费劲,到时候看吧。今天写到了差不多11000字,还不错,不过就是写的时候已经快要困死了,希望错字不多,什么时候看到了改吧。Principia又更新了,本人因为忙着追风没去看,看完了下次些的时候写上,另外还打算开一个Principia更新日志栏目,有时间去弄一下。
\*(2018-11-11)更新到坎喵,iBooks版本也就是pdf版本还没开工,最近还要把ISEE-3赶完,这周末去水立方比赛了,没做多少,就拉了一点轨道看看,不过下周五放假,看看能不能补回来吧。不过反正现在这个文章还在WIP阶段,不着急,写完了再弄这些事都来得及。
\*(2019-06-05)各位好哇,本人又臭不要脸的回来更新了,因为在大概半个月前本文被Principia作者发现了,然后被国内外大量Principia玩家一同猛夸,然后纠正了一些信息上的错误,因此,本人决定回来把这篇文章更完。同时,把文中很多图片之类的补全
编辑提示:该文章于2018年发布,部分信息可能已经过期,请谨慎参考。
封面图by@勾兑面粉 (B站id)
终于,等到Principia专区了,在这个专区内,你可以讨论基本上任何关于Principia的内容,包括轨道,轨道规划,现实航天器轨道,以及6 words you never say at NASA: It works in Kerbal Space Program
Principia Github链接:https://github.com/mockingbirdnest/Principia (包含大量纯英文信息 可以在Issue内反馈bug)
里面有下载地址(需要梯子)这里因为原因就不搬了
*本帖主要讨论Principia这个mod本体,其次是如何正确高效的使用Principia
目录:
Chapter 1 简单介绍Principia
1.1 Principia是啥
1.1.1 为啥要用Principia
1.1.2 什么情况下适合使用Principia
1.2 Principia对于设备的要求
1.2.1 你的电脑会不会爆炸?
1.3 Principia的更新规则
1.4 Principia的计算规则
1.5 plotting frame又是啥?
1.5.1 我该如何选择正确的plotting frame?
1.6 Principia独特的Maneuver系统
1.6.1 Maneuver Frame又是啥
1.6.2 万恶之源-机动节点与轨道的影响
1.6.3 我能不能使用自动踩油门mod MJ执行节点?
1.7 我能不能在使用Principia的情况下使用MJ的自动创建节点功能?
1.8 引力边缘?引力平衡点?
Chapter 2 使用Principia的正确姿势
2.1 基础-看懂Principia的轨道
2.2 如何玩好Principia的节点系统?
2.3 选对PF MF 玩好Principia
2.4 如何正确的在不通过任何planning的情况下修正?
1.1 Principia是啥?
这个解释非常简单,就是在原版KSP内加入多体引力计算,意味着所有的物体(包括行星本身)都会收到其它天体的引力造成轨道影响。相比原版的2体引力,Principia模拟了真实世界中的情况,可以修正大部分因为2体引力导致的轨道误差。Principia对于多次连续引力弹弓和飞掠异常有效,因为Principia有一种设定叫pllotting frame,就是你在哪个视角看航天器的轨道,这个以后会多讲,所以这里就不写了。Principia还有一套单独的节点系统,相比原版,精度更高,调整更难。Principia的节点系统跟原版大有不同,Principia的节点计算方式是使用当前载具上的引擎/RCS计算点火时间,以你节点的位置开始点火,这也意味着Principia是不能使用MJ自动点火的,但是根据最新的研究,可能有一些小方法,这个还在实验阶段,所以以后再讲。Principia要求大量的航天知识,建议先在原版把基础都搞好了,比如来个什么KMKEKKJ轨道之后再去玩Princpia。Principia对于新手入坑极不友好,不要尝试刚玩就去体验这个mod,否则因为此mod过于难导致的退坑,本人概不负责。
1.1.1 为啥要用Principia?
在上文中也有提到,Principia就是一个模拟工具,可以模拟大部分*真实情况,实现很多在原版做不到的真实航天器的轨道。这些轨道基本上都是涉及多引力体影响的,如果不使用Principia,可能出现轨道压根不存在或没有效果的情况。那么这些轨道都有啥,最重要的,所有的拉格朗日点,SSO,还有Lissajous Orbit, 弹道捕获… 这也是为啥Principia需要一定的知识才能打开。请注意,Principia的轨道不太一样,粉色代表未来的轨道,绿色代表经过的轨道,而蓝色虚线代表flight plan中plan的轨道,还有另一种浅粉色代表flight plan中节点点火的轨道,当然这个不太重要,以后再讲。
1.1.2 什么情况下适合用Principia?
这个问题想简单可以很简单,想难可以很难。最基础的答案,在需要模拟真实航天器情况下使用,要不然kennel会造成严重的误差,但是Principia远不如次,Principia对于多次飞掠的优化比原版要好得多,Principia理论上可以计算无限次飞掠轨道,前提是你的内存足够大,相比原版的几次限制在引力弹弓上有很大的提升。同时Principia对于长时间点火有着其它mod无法比较的优化,因为整体计算方式变了,在Principia中你可以放心的使用电推,只要你能把节点规划出来。因为Principia可以对游戏本身造成极大的性能,帧数冲击,因此对于低配/中配电脑玩家来说建议不必要就不要用,毕竟没人想吃薯片,高配电脑随便用,不过也请注意Principia可能会导致很多崩溃情况,以及内存溢出情况(现在已经好多了,比起一年前1小时崩溃5次,到现在录视频除了作死内存溢出115小时下来就没崩溃过)。
1.2 Principia对于设备的要求
系统:64位系统,Principia几个版本前为了提升性能不再支持32位KSP,也就是说32位系统是不可能用Principia的,64位是个趋势,因此建议所有用户升级64位,否则很多软件都会不断失去支持。
内存:最低运行内存为8GB,低于这个值不要想了,买内存条吧。8GB为纯原版,如果有任何部件类/美化累则为12GB,如果有RO小全家桶16GB,大全家桶24GB,如果想玩RO又不想KSP爆炸的话,建议删掉全家桶中黄色部分的mod(除了Principia)
CPU:Principia对于CPU的要求没那么高,主要的要求是主频,降频版CPU就不要想了,没戏的。Principia的多核优化并不好,因此基本不用担心核心数量的问题,只要是第5代牙膏厂U以上基本都行,举个最好的栗子 i7-7700k i7-6700k 基本可以满足所有玩KSP的需求。当然i3系列第8代也是另一个玩KSP的好选择,因为单核性能贼高,直接5GHZ,对于Principia的运算来说极为合适,但是这种配置只能玩KSP,其它的就不要想了,这也是为什么不推荐。*此话只适用于较新架构的CPU。
显卡:Principia对于显卡没有特殊要求,装Principia前能跑动就行,Principia基本不使用任何显卡部分,因此不要过度担心。
1.2.1 你的电脑会不会爆炸?
真的,请不要对自己的电脑过于自信,事实证明上一个尝试用低配电脑玩Principia的玩家的电脑已经变成炸薯片了。Principia最近15个版本内修复了大部分的崩溃情况,现在最有可能导致崩溃的原因就是内存溢出,就像上文中写到,本人64G内存,除了作死,115小时没崩溃过,如果你的电脑经常崩溃,比如1小时崩溃2-3次之类的,在不装Principia的时候游戏也有点卡,那么基本可以说明,你的电脑不适合使用Principia,所以请As is,不能用就不要用,否则存档崩溃本人概不负责。上文中也有写到最低配置要求,如果真的想玩,但是不能达到上面的配置要求,去买点硬件升级一下吧。另外Principia使用的是C++和Mathematica对轨道进行微积分运算,如果你是个Mac用户,请更新到最新版本-Descartes(*2018-09-09),在这个版本中,作者更新了C++版本,使得运算效率可以像WIndows那样高效,而不是上一个版本那样的3fps,甚至卡死。不过从这个版本开始,Principia不再支持MacOS El Capitan,也就是10.12以下的版本,同时苹果也不再支持了,如果你还在这个版本,推荐尽快更新至MacOS Mojave 10.14。
1.3 Principia的更新规则
Principia作为一个巨大的mod,更新方式和大部分mod都不一样。Principia自从20+个版本前就采用了每个新月更新,也就是说每个初一更新,如果你想知道这mod下次更新是啥时候,大概农历日历就好了。同样,因为这种奇怪的更新方式,每个初一的时候,不管新功能做成什么样了,直接放出来,新更新的bug也是一样的,在这种情况下,如果发现这个版本有某些bug影响使用,直接退回上一个版本,同时在确保Principia没有重大bug前,请保留上一个版本,一旦新版本发布,上一个版本的下载链接就会被删除,除非是重大bug影响使用,否则一般是不会在中途发布更新的。Principia更新的命名方式是以A-Z顺序的科学家/数学家名字的当地语言名字进行命名,我也不知道该怎么解释,大概就是Abxxxx,Acxxxx,Baxxxx这种形式进行命名,不过是以本人的国籍使用的语言的,比如之前有一个版本叫陈景润,现在最新的版本是Descartes,下面附上一个近代版本列表(附件上传失败,一会处理)。Principia是由2位程序员开发的,分别是Robin Leory和Pascal Leory(GitHub ID: eggrobin,pleory),是父子关系,瑞典职业程序员。整个mod都是在GitHub上开源的,如果你发现了一个bug,欢迎在此提交帮助mod变得更好 https://github.com/mockingbirdnest/Principia/issues ,如果你觉得可以帮忙修几个bug,写几行码,可以自己fork过去并提交pull request。
1.4 Principia的计算规则
Principia在几个版本前开始了大气内轨迹计算,因此现在即使是在大气内,Principia也能精准的模拟轨迹,同时记录History。在这之前Principia在大气内使用的是原版的2体引力计算。即使是现在,你也能在安装Principia的情况下查看原版2体引力的计算结果,只需把Setting中的Display Patched Conics勾上就可以了,不过请注意不要使用这个进行轨迹计算,这个不是你的真实轨迹,并且会因为多体引力于原版的不同而慢慢变化。注意即使是把这个打开也是不能使用原版的机动节点系统的,依然还是要使用Principia特殊的节点系统。
1.5 plotting frame又是啥?
前文中也有写到,Principia采用了一种大为不同的轨道系统,那么这种东西要怎么用呢?本部分将以最全面的方式介绍这部分。首先,Principia在每个天体中有1-4种plotting frame,分别是:x Centered Inertial(xCI),x Centered x Fixed(xCxF),the barycenter of x and y(xyB),x Centered y Aligned(xCyA)
x Centered Inertial:对应原版的轨道模式,速度为轨道速度,这个就是原版的轨迹计算+多体引力影响,没啥好讲的。同时也是最常用的plotting frame,在大部分情况下用的都是这个。
x Centered x Fixed:对应原版的地面模式,速度为相对于星球表面速度,比原版多了个地面轨迹计算,可以帮助你更好的了解在下一圈轨道你的航天器在这个星球上方的哪个位置,对于在快速旋转的星球准确降落至关重要,简直就是降落神器。
the barycenter of x and y:暂时不了解,以后讲
x Centered y Aligned:极为特殊的计算,在xCI的基础上使用了另外一个旋转视角来看这个轨道,这个旋转视角每进动一圈的时间是x公转y的周期,这么说可能有点难以理解,举个栗子,Earth Centered Sun Aligned,每365天进动一圈,对应就是每天1度,在这种计算方式下,在轨道速度小于一定的情况下就可以画出一个圆,封面图就是这种plotting frame,可以看到图中的2个圆非常明显。这种plotting frame对于进入L1和L2非常关键,因为L1和L2永远是在朝向太阳/背向太阳的那个方向,如果采用xCI,就会发现这个轨道还是以6个月的周期环绕天体的,所以不合适。
1.5.1 我该如何选择正确的plotting frame?
这个问题说简单简单,说难难。简单来说就是文件上告诉你该选哪个你就选哪个,但是问题是有时候需要你自己来考虑这个问题,这时候,事情就变得非常复杂了。1.5中也介绍了几种plotting frame的用处,这时候就需要你自己来分辨情况了。xCI基本上就是在任何天体的低轨或简单轨道使用的,一看就知道什么时候该用。xCxF在降落情况下非常常用,因为可以准确确定落点,在进入SSO轨道时也颇为常用,因为SSO的独特性使得航天器每天(24小时)都经过地球同样位置的上空,随着时间进动,永远在每天的那个时候经过那个地方的上空,如果你不在,那么就说明你没有进入SSO或需要修正轨道了。xyB的主要作用是确认两个物体的质量中心在哪里,适用于进入L3,由于本人不是很了解,所以现在就不多讲了,以后再写。xCyA的作用很简单明了,最主要的是进入L1和L2点,这个没有任何争议,因为其特殊性,对于任何L1 L2轨道来说简直就是完美,同时,对于经过L1 L2的高能量转移/弹弓轨道来说也至关重要,比如大名鼎鼎的ISEE-3的轨道就是使用ECSA规划的,这也是封面图的来源。这里再多说一句,像封面图上那个一次弹弓回来进动40度左右在此相遇月球就是典型的双月旁轨道,这个轨道可以2次相遇月球进行弹弓,用处还是蛮大的,这里就不多写这么多了,这个轨道就是从S1出来,绕一圈,再转回去刚好等于26天半,从而再次于月球交会。plotting frame在执行maneuer上面也是很关键的,不过在这里也没必要讲这么多了,等写到maneuver部分再讲吧。
1.6 Principia独特的Maneuver系统
作为一个真实还原性mod,都对于轨道系统有这么大的改变了,原版那个破机动节点系统是真的令人窒息,所以Principia完全重新制作了Maneuver系统。Principia的Maneuver系统和原版区别很大,因此不要想着原版的会操作Principia的就会操作。Principia禁用了原版的Maneuver系统,即使你打开display patched conics,点击轨道上依然不会出现创建机动节点,所以不要尝试了,Principia的Maneuver系统用好了是非常好用的,当然前提是你会正确的用。要想了解这个Maneuver系统,最该先了解的是3/6个方向,分别是Targent,Normal,Binormal。每一个方向都可以调节正负。Targent+对应原版的Prograde也就是顺向,Targent-对应原版的Retrograde也就是反向。Normal+对应原版的Radial Out也就是径向向外,Normal-对应原版的Radial In也就是径向向内。Binormal+对应原版的轨道法线方向,Binormal-对应原版的反法线方向。那么有些人问了,第4个是调啥子的?聪明人一看就知道第4个是调时间的,Maneuver3/4大要素:2/3向dV,时间。那么又有人问了,为啥Maneuver还能只有2向dV?其实现实中很多航天器都是使用2向系统的,分别是Radial和Axial,对应Normal和Binormal,下次再看Press的时候别问Radial和Axial是啥了。
1.6.1 Maneuver Frame又是啥?
那有人可能问了,为啥flight plan窗口里还有个Maneuver Frame(以下简称MF)?聪明人一下就想到这玩意八成跟Plotting Frame(以下简称PF)又关系。确实有关系,不过关系并不简单(别想歪了)。Maneuver Frame翻译过来的意思就是机动节点执行的Plotting Frame,如果你的PF是ECI,MF也是ECI,那么你调整一点Targent调节的方向就是你当前Prograde的方向,这个栗子够明白了吧,复杂点说就是MF的执行方向就是和它同样的PF中的方向。正确的选择MF至关重要,假设别人给你了一串机动,如果你选错了MF,那一串机动的方向都是错的,尤其是当你在又3+个节点的时候,因为Principia不支持多节点编辑,而精确调整每个节点的dV非常耗时,经常容易点过了,如果你在添加了很多个节点后才发现MF是错的,那么恭喜你,你需要把所有的节点都删了重新设置MF再次添加回来。而这种情况非常多,比如我们在调整ISEE-3轨道时使用的MF是ECI,而PF是ECSA,有时候经常@勾兑面粉 给了我一个两个节点修正然后搞错MF。
1.6.2 万恶之源-机动节点与轨道的影响
温馨提示:本部分内容不是萌新能理解的,如果感觉自己理解不了,可以直接跳过本部分去阅读下一部分。
在上一部分我已经举过一个简单的栗子了,机动节点与轨道的影响完全就在于自己对于轨道的理解能力,如果能理解你这个轨道往一个方向调整的结果是什么,那么这一部分对你来说非常简单,但是显然,大部分人并不。在一个MF与PF相同的情况下,正常情况下,只要你在原版打好了基础,那么这完全不难,因为这就是原版的情况,这也是最简单的情况,但是如果出现了一个引力弹弓,事情就变得没那么简单了。一个什么都没有的轨道意味着你往哪个方向修正,你的轨道就会偏向那个方向,但是一旦有一个引力弹弓,你修正的就是引力弹弓前的轨道,从而调整经过弹弓的天体的轨迹,使得离开后的轨迹发生影响,这种情况对于一般人来说就非常难了,因为涉及到了同时考虑2个天体的PF,而调整的方向也会变得难以预料,在不考虑任何多次弹弓的情况下,只需要看一下弹弓天体的PF就可以得出离开后的轨迹啊,前提是你记住了原来的轨迹,并可以非常精确的计算,显然,有点难,对于大脑来说几乎不可能,于是就又了一种更费劲但是更省脑的办法:首先,切到弹弓天体的xCI,然后拉到一个大概的Pe高度,差不多就行了,这个值以后还要调,只不过是一个基准而已了,随后再切回原来的PF,不管是啥,然后继续调整直到得到你想要的轨道,之后,再切到弹弓天体的xCI,查看Pe高度是不是你想要的,如果是,那就对了,如果不是,那么请确认你轨道的形状和时间,再次调整。
但是有时候还会有一个更复杂的条件,因为有时候PF differs from MF,就是你看到的那句警告,意思就是MF和PF不一样,不过这其实不是一个问题,只是怕你搞错了。举个简单的栗子,ECI和ECSA中的方向都是不同的,如果你使用ECI作为MF,ECSA作为PF,那么你在ECI中修正的方向基本上不太可能是在ECSA中你想要的,因为ECI和ECSA的方向不一样。再去看导航球,如果你调整ECI Targent+1m/s,去导航球上找节点执行方向,你会发现节点执行方向不再Prograde上,而是在他边上,这就是ECI与ECSA在同样方向上的差距,因此PF和MF不同时情况异常复杂,但是正巧,这是个非常好用的组合,不想某些组合,这个组合调整起来反而更好用,原因比较复杂,一个可以解释的原因时ECSA时旋转版的ECI,因此从ECI修正ECSA的方向从正常角度来讲是完全正确的。在ISEE-3视频中,我的机动一共采用了3中不同的MF,分别是ECI,ECSA,MCI,在不同的位置使用不同的MF是非常重要的,如果有时候一个轨道调不出来,不如想想这个轨道需要怎么调整,哪个MF也许可以用,然后去试试,慢慢来就可以了。
最复杂的就是一串Maneuver都有不同的MF,那时候就是真的,头大,因为你也不知道什么情况,不小心点错了一个就难受了。不过要注意的是Principia正常情况下一个屏幕智能放下5-6个节点,根据分辨率不太一样,所以尽量尝试使用更少的节点数量,否则可能到后面就非常麻烦,Principia更难受的是不支持多节点编辑,你编辑完下一个节点想在回去调上一个就不行,这导致了规划多节点变得极其麻烦,而深度优化dV成为了不可能。咱大概3周前提交了这个Enhancement,就是不知道什么时候做,如果做了我会为大家带来第一时间的消息。
1.6.3 我能不能使用自动踩油门mod MJ执行节点?
行,不行。行是因为MJ支持执行Principia的节点,不行是因为Principia的节点系统和原版有很大的差异,会导致根据点火时间不同而变化误差,这也是为什么不推荐,点火时间越长,误差越大,以上是机遇传统式节点执行方法。在深度了解之前,首先要明白原版和Principia节点的不同。原版的节点是假设你可以在一瞬间执行点火,然后通过方向优化在节点两侧均匀分布点火时间从而进入轨道,这种方法的误差不大,但是效率也不高,因为先大幅压低了轨道,随后又把它拉回去。Principia是在节点的位置开始点火,计算点火时间和加速轨迹,给出最终的轨迹,如果使用MJ点火,就意味着比Principia预计的提前了一半点火时间点火,导致最终角度与预计不符,造成误差。此时,有些聪明人注意到上面的3个框框:Active Engines,Active RCS,Instant Impulse,那么这些都是什么意思呢?第1个是以当前启动(左侧分级有燃料条的引擎)引擎计算点火,第2个是以开启的RCS计算点火,而第3个是在节点位置瞬间推进,就像原版的轨迹计算一样。这时,又是聪明人,就想到了那么可不可以用第3个然后使用MJ进行点火呢?可以,并且可以有效减少误差,达到传统方法的20%一下。*这是本人某天晚上睡不着想出来的奇葩方法,未测试,但是通过计算证明确实可以减少误差。那么又有人问了,剩下的这些误差是哪来的呢?因为Principia采用的是动态追踪节点位置,所以不会有像原版那样的节点前向下,节点后向上的优化,因此意味着开始点火后位置不断升高,使得到节点这个点上面时比预计的高,从而产生误差。
1.7 我能不能在使用Principia的情况下使用MJ的自动创建节点功能?
能,非常能,但是极度不推荐,因为首先,MJ的自动创建节点是基于原版的Patched Conics的,而如果节点创建时间过早,你就会发现你实际的轨迹根本飞不到那里去,然后这个节点就废了。其次,你是看不到节点的,因为他的展示方式是原版的轨道上那种,也就是说节点后的轨道全靠MJ的那一句话,有时候还不如自己去执行呢。不过MJ在有些情况下有好处,比如圆化的时候,因为Principia的节点dV是不变的,因此只能看Cutoff时间决定什么时候熄火,如果点火迟了一点并按照给的时间关机,就会导致节点执行亮过小,点火时间晚同理,使用MJ就和原版一样,节点剩余dV会慢慢变少,直到没有,因此在入轨时更推荐使用MJ而非手拉。那么又有人问了,转移能不能使用MJ呢?答案比你想象中的简单:不能。为什么呢?首先,MJ的节点规划是完全基于原版Patched Conics的,而地火转移的时间长达7个月,7个月的二体与多体差距已经大到基本没法用的状态了,一个60km pe,一个100000km pe。因此转移的节点还是推荐用手拉。另外,请注意,MJ是完全不支持飞xCI的PF的,如果你在地日L1 Halo,那么如果你尝试使用MJ的调整pe,那么MJ会直接给你降低太阳轨道的机动,所以在引力平衡点附近不要尝试使用MJ。MJ以后可能会有支持,但是至少不是近代的事了,人家作者还在更新引力模型呢,做好了应该是因此大更新,但是很可惜,新版本Principia Diopantus(原谅我打不出来希腊文)还没有更新。*文件上传WIP,下周有时间弄。
1.8 引力边缘?引力平衡点?
作为Principia特色,这玩意也是很令人窒息,虽然前文也有提到引力平衡点,本段还是专门讲一下吧。最简单的就是L1-L5这5个拉格朗日点(Lagrange/Libration Points),但问题是在这几个点附近可不是窝在那不动,而是以一定轨道环绕这个引力平衡点,相对比呆在这个点上更容易进入,而且在大部分情况下修正更容易。那么要想了解这些,最应该先了解的是5个拉格朗日点的位置。
L1:位于两个天体引力的交界处,有具体计算公式,吸引点,较为容易进入,对于从天体A(小天体)发射研究大天体(天体B)或者持续的从一个方向研究天体A非常有帮助。
L2:位于天体A向天体B的离心方向,排斥点,因为是排斥点的缘故,较为难进入。对于天体B是恒星的情况下可以做到不受到来自恒星的光线影响,从而更好的观测其他天体。
L3:在天体A轨道的相反位置的Barycenter,也就是相比天体A轨道靠天体B近一点,依然是不稳定的,而且极为不稳定,目前没有什么特别有效的方法转移至L3,而且因为无法与地球通讯,现在的利用价值不大。
L4:终于,第一个稳定点,在地球轨道向Retrograde方向60度。范围较大,吸引点,非常稳定,利用价值相对较大,可以让太阳探测器进入附近并提前预测太阳活动区。
L5:和L4基本一样,只不过是在Prograde方向60度,当前没有发现什么利用价值。
那么问题来了,这些点上面都有什么轨道呢?
Halo Orbit:光晕轨道,最常见的,由Robert Farquhar在1968年提出,是一种以一个特殊形状环绕引力平衡点的轨道,参考ISEE-3的轨道。进入极其简单,修正相对容易,对于多次高能轨道弹射很舒服。
Lissajous Orbit:倾斜环绕轨道,也是极为常见的,周期在1年左右,不需要多次少量的修正。最早被Jules Antoine Lissajous发现。
注意,L1-L3都是极为不稳定的,不管修正的多么精确,你最终还是会掉出去,因此不推荐同时管理多个航天器,否则可能掉出去都不知道。目前Principia还没有自动修正的插件,作者表示这些东西会慢慢的加进来。
Chapter 2 使用Principia的正确姿势
2.1 基础-看懂Principia的轨道
hmmm,非常简单,和原版相似度还是挺高的,只不过颜色换了换,复杂了一点。本章会介绍Principia轨道的颜色和对应的原版颜色,以及Patched Conics的用法和万万不能使用的方法。
粉色:当前轨道的计算,长度可以通过调整上面的Steps和Tolerance进行调整,对应原版的蓝色线。
绿色:Principia特色,经过的轨道,可以通过调整上面的History Length来调整纪录的时间长度,当然如果你想关掉,把它调到最小就基本上没有了。不对应原版的任何线,因为原版没有这个功能。
蓝色虚线:Principia的节点系统,在这里称为Flight Plan,前面也有写这个独特的方式,不过除了节点调整从在一个滑稽圆圈上面往各个方向啦拉,变为了在这个节点位置使用费给出的方向进行在一个可以拉的东西上调整,其它都和原版完全一样。对应原版的黄色虚线。
红色:一种极为少见的线,除非你经常玩电推或者看的非常仔细,拉到轨道界面放到最大,否则一般都找不到。这条线比正常的轨道线颜色更偏红,表示的是点火的位置,因为Principia的节点系统在你不设置的时候是以节点位置开始,计算点火时间,直到达到你的最终dV,并把点火过程中的轨道显示出来。依然不对应原版的任何线。
那么,什么事Patched Conics呢?Patched Conics是Principia显示原版2体轨道的开关,打开即是现实原版轨道,关掉就会隐藏。注意,使用Patched Conics万万不能像原版那样用,一般有2种Patched Conics的用处。
在轨道周期过长时:由于Principia的flight plan系统有一个极限,大概3000天左右,但是有时候,比如在设置哈雷彗星的轨道的时候,你拉到内存溢出也不可能拉出来13000天,这时候就可以用到Patched Conics了,请注意,这种情况只适用于在非引力边缘地区,因为原版不计算引力边缘。这样可能会导致小于%1的误差,但是总体来说够精确了。
在查看多体和2体的区别时:这个就简单明了了,举个特别简单的例子,弹道捕获,又名Ballistic Capture,就可以明显的看到2者的区别。第一个直接离开地球SOI了,而第二个被月球缓缓的拽过去,最终完美捕获月球。这个同样还可以让你了解使用多体引力计算的作用
2.2 如何玩好Principia的节点系统?
最近在各大KSP群内摸了一段,然后看到了好几次问说Principia可不可以用原版的节点系统,表示Principia的节点系统难受的要命的。我想说的是,真的,Principia的节点系统比你们想象中要好用,只不过你不会用而已了,用好了这个和原版系统差不多的节点系统调整经度上会有巨大的提升。Principia的节点系统就是4个用鼠标拉动莱调整的轴而已,在前面也有写到,每个周往右拉就是正,左拉就是负,一共4个调整指数,3个空间,1个时间,每个都有正负两个方向,只不过Principia的这个轴每拉一点对应每秒提升的速度不是等比例的,注意一般不要把这个轴拉到头,否则会快的要命。之前也有写到,targent=prograde/retrograde,binormal=radial in/radial out,normal=法线方向/反法线方向。记住这些是玩Principia节点的基础,如果不知道这些基本就是瞎调一同。注意前面也写到过Plotting Frame和Maneuver Frame,不过这点对于小白不用太担心,只要选对了Plotting Frame,Maneuver Frame就会自动和Plotting Frame保持一致。在整个Chapter 2中,为了节省时间和空间,Plotting Frame简称PF,Maneuver Frame简称MF。在接下来的一段中本人也会写到如何正确的选择Plotting Frame避免把轨道搞坏,一般来说小白不用了解怎么选择MF,跟着PF就对了。
2.3 选对PF MF 玩好Principia的核心部分
本人表示其实这段应该放前面的,但是因为如果放前面就有很多东西冲突,因为本人太懒所以就没改。首先,前面也有介绍到Plotting Frame(PF)和Maneuver Frame(MF)这两个概念,基本来说就是你红线的定位方式和Flight Plan中机动节点前后轨道的定位方式,注意这两个可以是不同的,默认PF和MF是一致的,MF直接决定了你6基本方向的相对天体,众所周知,在Mun的SOI时和在Kerbin的SOI时的Retrograde压根就不是一个方向,因为你相对的天体变了,Principia的这个功能就是干这个的,因此推荐假设你在地球的SOI中,这时你需要降低飞掠月球Moon的高度,那么此时,更方便的解决方案是将PF和MF都设为MCI,然后向MCI的binormal -方向执行机动,就可以完成这一任务,相比起来不断的调整在ECI中的方向要简单很多,当然,2.2中就写到了6个基础方向,在玩机动节点前不如先背下来基础6方向,这样游戏体验会好很多,不用再话费1个小时看你想要向那个方向点火,如何在节点系统中找到这个方向。
2.4 如何正确的在不通过任何planning的情况下修正?
从这里开始,教程开始变得需要一定的体验才能读懂了,因此如果看不懂,推荐先去玩一玩。众所周知,Principia有2个很智障的特性,第一是只能plan一次,如果你想中途修正,要不就把之前的plan全部都删掉,可是这样如果你费劲好久plan出来的轨道就没了,要不就靠眼睛修正,但是不简单。第二个智障特性是不支持多节点规划支持,假设你想修正前面一个节点,你就得把后面的全部删掉,等修正完了再加上去,这就是件很烦的事,因为节点多了之后如果发前面的节点有问题,那么后面的都要删掉,改完再靠手加上去,就连MF也要都删一遍才能修改前面的。那么这一部分就来写一下如何靠手修正没执行好/有合理误差的节点
首先,要修正的第一步事,切换PF,没错,玩过原版200小时以上的玩家基本都能知道为什么要做这一步,如果不做,你的整个执行方向都是错的,而且你也无从判断是不是错的,假设你需要执行一次月球的飞掠,高度20,000km 倾角0度,你现在的高度事23000,倾角是3度,那么首先,你需要通过MCI看是向该修正的方向还是反过来,因为目标天体位置的不同,有时候可能你需要向需要修正的相反方向执行,才能得到想要的效果,如果不确定怎么找到,推荐还是用很少的燃料看一下到底那个方向是正确的,再去执行。在执行时,请千万看好自己的轨道,不断转镜头以确认轨道的情况,因为有时候很容易搞混高度和小倾角差距,所以转一下保险。记住在接近目标轨道时如果是用RCS使用H键,这样就相当于碰一下键盘点火一下,如果使用引擎请线关小到很低,再慢慢调整油门,并随时准备按Z,注意如果用的是RCS而需要的dV又很小的话,靠近目标轨道时连RCS的推理都要调到很小才能避免过度执行。如果你需要修正多个方向,请务必在修正完一个方向后关闭RCS(如果有/用RCS修正的话),关RCS,关RCS,重要的事情说3遍,因为如果不的话你会惊喜的发现你刚刚费了半天劲修正的轨道已经飞走了。
有时候感觉在执行点火出误差修正是整个Principia里面最难的一件事,确实是的,因为你的老盯着航天器修正,还要紧张的调整,可不是按照Maneuver给的时间和量修正就好了。修正主要还是要靠尝试,因为比起去推理该去的方向,还不如试一下来的快。
更新日志:
*(2018-10-04)今天先更到这,明天继续
*(2018-10-05)飞机上无聊码字1小时,同时还把很多排版改了一下,并进行了本地备份(在word里面复制一份),开学后尽量保证周更吧,和Principia一样,每周日不管写了啥,都发一下。今天码到了5400字符,3700字(中文)/词(英文),希望大家持续支持,要不然真没动力更新了,谢谢。
*(2018-10-06)继续飞机上码字,距离开学还有最后一天(因为时差),今天码到了5700字,也就是又码了2000字,今天的干货真的特别多,基本讲到最复杂的情况了,很费劲。当前字符数量8400,又字符数量是因为WordPress计算的是字符而非字词。
*(2018-10-07)好吧,因为忘记同步某作业的文档,导致我电脑上这个还是个超老版本的(我咋知道为啥,我记得我上一次写是在笔记本上啊)于是我就又码了700字,然后突然想起来我忘记整理文档了,那个好像在Download里面,一看,果然在,不过幸好时间还够。现在已经是6411字,9100字符了,有时间继续。
*(2018-10-08)今天啥也没写,提交一下之前写的,现在写到关键段了,文体比较多,下周日更新修复现阶段所有的问题。最近几天要专心做视频了。偷偷更新了哎嘿嘿嘿
*(2018-10-12)最近真的,学业繁忙,直到周五才回来更新,周末任务挺多的,所以这周更新很少。真的,这最初是一个4000字小坑,被我一点点写成了史诗巨坑,也是绝了。视频因为学业繁忙的原因也做的很少,慢慢来吧。Principia这周更新了,版本Principia Diophantus(希腊文,我打不出来,只能打英文),基本一样,不想更新可以不更新。同时,这周,因为本人不小心洒了一口饮料,导致了陪伴我码这篇文章的笔记本空格和CMD彻底按不下去(被糖粘住了)。此时,这篇文章已经达到了10000字符,5位数警告。目前文章问题还没有修,前台编辑也没弄,周末弄吧
*(2018-10-13)修复barycenter的问题(old:xMB,new:xyB),写了一下关于引力平衡点附近的,还是差一堆图片,慢慢来吧。还改了一下1.7。昨天跟几个群员聊天时又收到建议改了一下配置部分,单纯的看主频不合适,因为奔腾,你懂的,主频高只适用于新架构的U,主要看单核性能。
*(2018-10-25)学业繁忙,很久没有更新,然后今天来坎喵抽喵分,突然发现我之前改的那个标题怎么不见了,然后赶快改回来。明天更新一波,如果情况好可能明天下午就发了,不好的化还是周日。
*(2018-10-29)又更新啦,最近事情更忙了,上任黑域大群管理了,所以来这边的时间真的是少之又少,也就是每天抽个积分而已。今天把上次更新失败(hyx出来背锅!)的2.1部分,据了解由于坎喵升级,这些数据被删除了,导致回到了一个更老的版本。不过今天也从本地备份补上了,不要担心。今天写了一下关于节点系统的,感觉应该先写如何正确的选择PF,要不然估计读完都是懵的。
*(2018-11-02)终于,最近学业繁忙,1周就写了一次,不过起码写了。这次写了下关于PF MF的基础操作,最近感觉逐渐拉开第1章和第2章的区别了,要更新的东西还是挺多的,另外外链和图片的事还是没做,可能最后其他人会去做,自己现在1周就开一次原版KSP,其他时间学校去Git翻翻码,搬运一下更新,也就这样了。另外最近更新改为不规则,只要写完了就来更新。另外,10000字警告,当前字数10009,已经成为坎喵字数最多的文章,同时按照WP的统计,字符数量已经达到了惊人的14002字,论为什么兴趣是最好的老师。
*(2018-11-09)回来更新,之后会用iBooks Author做成一个pdf文件 然后所有附件都会更完善一些,不过在坎喵这个版本是会保留并且添加附件的,只不过由于WordPress特色,添加附件会有些费劲,到时候看吧。今天写到了差不多11000字,还不错,不过就是写的时候已经快要困死了,希望错字不多,什么时候看到了改吧。Principia又更新了,本人因为忙着追风没去看,看完了下次些的时候写上,另外还打算开一个Principia更新日志栏目,有时间去弄一下。
*(2018-11-11)更新到坎喵,iBooks版本也就是pdf版本还没开工,最近还要把ISEE-3赶完,这周末去水立方比赛了,没做多少,就拉了一点轨道看看,不过下周五放假,看看能不能补回来吧。不过反正现在这个文章还在WIP阶段,不着急,写完了再弄这些事都来得及。
*(2019-06-05)各位好哇,本人又臭不要脸的回来更新了,因为在大概半个月前本文被Principia作者发现了,然后被国内外大量Principia玩家一同猛夸,然后纠正了一些信息上的错误,因此,本人决定回来把这篇文章更完。同时,把文中很多图片之类的补全