{
"info": {
"author": "Alexander Graf, Andr\u00e9 Koch-Kramer",
"author_email": "mail@agraf.me, koch-kramer@web.de",
"bugtrack_url": null,
"classifiers": [
"Development Status :: 5 - Production/Stable",
"Environment :: Console",
"Intended Audience :: End Users/Desktop",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
"Programming Language :: Python :: 3.4",
"Programming Language :: Python :: 3.5",
"Programming Language :: Python :: 3.6",
"Programming Language :: Python :: 3 :: Only"
],
"description": "kspalculator\n============\n\n.. intro-start\n\n**kspalculator** is a tool which determines the **best** rocket\npropulsion designs for one stage of a rocket, given a set of\n**constraints** and **preferences**.\n\n*Constraints* are properties of the spacecraft which have to be\nfulfilled. These are the possible payload and the Delta-v as well as the\nminimum acceleration which is reached in an environment with given air\npressure. *Preferences* are further properties a propulsion design might\nfulfill in order to be preferred. Examples for preferences are the thrust\nvectoring angle, the radial size, whether the engine is able to generate\nelectric power, etc.\n\nWhich is the *best* design depends heavily on the specific application.\nA design might be better than another one, if it is cheaper or has a\nlower mass, but it might also be considered better if it is buildable\nusing less technology or if it better fulfills some of the given\npreferences. Obviously, it is impossible to sort all propulsion designs\nby their \"goodness\", so there might be more than one which is the best\nat least by some criteria. This tool presents exactly *all* best\ndesigns.\n\n.. intro-end\n\nThere is an official web frontend for kspalculator at:\nhttps://kspalculator.appspot.com/.\n\nFeatures\n--------\n\n.. features-start\n\nkspalculator evaluates all possible designs, checks whether they fulfill\nthe user's requirements, and then checks whether it is the best design\nusing the relation \"*A* is better than *B* iff *A* is better than *B* by\n*any* of the user's criteria\". Only the **best designs** are then\npresented to the user. This way, the user has maximum flexibility to use\nthe type of propulsion which serves best his needs, still without being\nspammed by non-optimal solutions.\n\nThe stage might have different requirements for minimum acceleration for\n**different *flight phases*** through different air pressures and\ndifferent Delta-v requirements. For example you might require the vessel\naccelerating by 1000 m/s with an acceleration of 3 m/s\u00b2, and later 500\nm/s with an acceleration of 7 m/s\u00b2.\n\nBesides considering the **classic liquid fuel engines** as well as\n**solid fuel boosters**, kspalculator also considers using the **LV-N\nNerv Atomic Rocket Motor**, the **IX-6315 Dawn Electric Propulsion** and\nthe **O-10 Puff MonoPropellant Engine**.\n\nConsidered criteria to decide whether a design is better than another\none are\n\n- Mass,\n- Cost,\n- Whether it is buildable with easier\n available technology,\n- Whether gimbal (thrust vectoring) is available,\n or Thrust Vectoring Range,\n- Whether it uses MonoPropellant as fuel,\n which is also used by Reaction Control System (RCS) thrusters,\n- Whether its engine generates electric power,\n- The length of the\n engine, as might be meaningful when building landers,\n- Whether it\n meets user's radial size preference.\n\nEven though calculating this sounds highly sophisticated, the best\ndesigns are presented to the user usually within **less than a second**.\nThe information shown about each design includes a detailed listing of\nthe **performance characteristics**, i.e. the **actually reachable\nDelta-v** (which might be slightly more than required, because of\nrounding to tank sizes), the **acceleration at full thrust** as well as\nthe **mass** at beginning and end of each *flight phase*.\n\n.. features-end\n\nUsage\n-----\n\nGUI\n~~~\n\nThere is an official web frontend for kspalculator at:\nhttps://kspalculator.appspot.com/.\n\nHere we explain how to use the kspalculator command line tool, but the\nbasic concepts don't vary.\n\nInstallation\n~~~~~~~~~~~~\n\n.. cli-installation-start\n\nMake sure you have `Python `__, at least\nversion 3.4 installed.\n\nIf you have `pip `__ installed, you\nmay install kspalculator using\n\n::\n\n pip3 install kspalculator\n\nAlternatively, fetch the most recent version of kspalculator at\nhttps://github.com/aandergr/kspalculator/releases. Installation is then\ndone by unzipping the archive and calling\n\n::\n\n python3 setup.py install\n\n.. cli-installation-end\n\nBasic Usage\n~~~~~~~~~~~\n\n.. cli-usage-start\n\nkspalculator is invoked on the command line. Syntax is\n\n::\n\n kspalculator [--boosters] [--cost] [preferences] \n\nwhere ``payload`` is the payload in kg and\n``Delta-v[:acceleration[:pressure]]`` are tuples of required Delta-v in\nm/s, acceleration in m/s\u00b2 and environment pressure in ATM (0.0 = vacuum,\n1.0 = kerbin sea level pressure) for each flight phase. You have to\nspecify at least one of these tuples. Acceleration and pressure are\noptional and default to zero.\n\nIf you add ``--boosters``, kspalculator will consider adding solid fuel\nboosters. This is very useful for launcher stages.\n\nOptions for ``preferences`` are:\n\n- ``--preferred-radius {tiny,small,large,extralarge}``: Preferred radius\n of the stage. Tiny = 0.625 m, Small = 1.25 m, Large = 2.5 m (Rockomax),\n ExtraLarge = 3.75 m (Kerbodyne),\n- ``--electricity``: Prefer engines\n generating electricity,\n- ``--length`` or ``--lander``: Prefer engines\n which are short or radially mounted,\n- ``--gimbal``: Prefer engines\n having gimbal. If you specify this option twice, a higher gimbal range\n is considered better.\n- ``--rcs`` or ``--monopropellant``: Prefer\n engines using RCS fuel (monopropellant), i.e. prefer the O-10 Puff\n engine.\n\nIn contrast to the constraints, preferences aren't hard requirements for\na design suggestion to be shown up. Adding preferences only adds\ncriteria under which designs may be considered better than others. This\nmeans, specifying more preferences, *more* designs will be suggested.\n\nIf you specify ``--cost``, results will be sorted by their cost instead\nof their mass.\n\nFor a brief reference for options, call ``kspalculator --help``. To\ndisplay the version of the tool as well as the corresponding version of\nKerbal Space Program, call ``kspalculator --version``.\n\nNote that kspalculator calculates optimal designs for one stage only (or\ntwo if you allow boosters, where the first is a stage only utilizing\nsolid fuel boosters). It will never split up your design into multiple\nstages.\n\n.. cli-usage-end\n\nExample\n~~~~~~~\n\n.. example-start\n\nImagine we build a light Mun lander, having a payload of 1320 kg. That\nis a Mk1 Command Pod, four LT-05 Landing Struts, a Parachute, a Heat\nShield, a Stack Decoupler and Solar Panels. We want to have two stages:\nthe upper one flying from Low Kerbin Orbit to Mun, landing there, and\nthen flying back to Kerbin; and the lower one launching the lander stage\nfrom Kerbin Space Center to Low Kerbin Orbit.\n\nAfter having determined the payload of the stage, we need to figure out\nDelta-v requirements, acceleration requirements and air pressure at the\ndifferent flight phases.\n\nIn this case air pressure is easy: As the Mun does not have any\natmosphere and the stage starts its way already being in orbit, it is\nclear that the lander will be designed to fly through vacuum only.\n\nNeeded Delta-v can be easily read at Delta-v maps or calculated by\ncalculation tools found in the internet (see links section later in this\ndocument). We find out, that we need 1170 m/s from Low Kerbin Orbit to\nLow Mun Orbit, then 580 m/s for landing at Mun, 580 m/s for starting at\nMun and later 310 m/s for returning to Kerbin. Additionally, in this\nexample we want to have 700 m/s Delta-v as a reserve.\n\nNow let's think about acceleration. As we land and start on Mun, we\nindeed have constraints regarding minimum acceleration, because we need\nto counteract Mun's gravity. In this example, we want to have at least\n2\\ *g* = 3.3 m/s\u00b2 acceleration when starting to land at Mun (i.e. when\nhaving reached Low Mun Orbit), and 3\\ *g* = 5.0 m/s\u00b2 to launch at Mun,\n*g* being Mun's surface gravity, which is about 1.65 m/s\u00b2 as can be\nfound out in the in-game knowledge base.\n\nDo we have any preferences? Yes we do. We're building a lander utilizing\nLT-05 Micro Landing Struts, which are quite bad, so it would be nice to\nprefer engines which have a short length. Thus, we add ``--length`` flag\nto kspalculator invocation. Additionally, our Payload has radial size\n*small*, so it would be cool if the propulsion system also had this\nradius. We add ``-R small``. Note that adding preferences does *not*\nprevent the listing of solutions which do not meet these preferences,\ni.e. adding preferences always leads to more output.\n\nDoing so, we get:\n\n::\n\n $ kspalculator 1320 -R small --length 1170 580:3.3 580:5.0 310 700\n 48-7S Spark\n Total Mass: 6145 kg (including payload and full tanks)\n Cost: 1670\n Liquid fuel: 840 units (4725 kg full tank mass)\n Requires: PropulsionSystems\n Radial size: Tiny\n Gimbal: 3.0 \u00b0\n Engine is short enough to be used with LT-05 Micro Landing Struts\n Performance:\n [...]\n\n LV-909 Terrier\n Total Mass: 6320 kg (including payload and full tanks)\n Cost: 1190\n Liquid fuel: 800 units (4500 kg full tank mass)\n Requires: AdvancedRocketry\n Radial size: Small\n Gimbal: 4.0 \u00b0\n Engine is short enough to be used with LT-05 Micro Landing Struts\n Performance:\n 1: 1170 m/s @ vacuum 9.49 m/s\u00b2 - 13.42 m/s\u00b2 6.3 t - 4.5 t\n 2: 580 m/s @ vacuum 13.42 m/s\u00b2 - 15.92 m/s\u00b2 4.5 t - 3.8 t\n 3: 580 m/s @ vacuum 15.92 m/s\u00b2 - 18.90 m/s\u00b2 3.8 t - 3.2 t\n 4: 310 m/s @ vacuum 18.90 m/s\u00b2 - 20.72 m/s\u00b2 3.2 t - 2.9 t\n 5: 700 m/s @ vacuum 20.72 m/s\u00b2 - 25.48 m/s\u00b2 2.9 t - 2.4 t\n 6: 51 m/s @ vacuum 25.48 m/s\u00b2 - 25.86 m/s\u00b2 2.4 t - 2.3 t\n\n [...]\n\n LV-T30 Reliant\n Total Mass: 11008 kg (including payload and full tanks)\n Cost: 2825\n Liquid fuel: 1500 units (8438 kg full tank mass)\n Requires: GeneralRocketry\n Radial size: Small\n Engine generates electricity\n Engine is short enough to be used with LT-2 Landing Struts\n Performance:\n [...]\n\n [...]\n\n(Output was shortened)\n\nOf the suggested designs, all are the best by some criteria. The first\none, using Spark engine, is the one having the lowest total mass, but in\nthis example we do not want to use it, for example because we did not\nresearch \"Propulsion Systems\" yet. We choose the Terrier design as we\nthink it serves best our needs. Note that the tool also suggests the\nReliant because of lower technology requirements, as well as some other\nnice designs which we skipped in this document to save space.\n\nNow build the stage adding the 800 Unit Fuel Tank and the Terrier engine\nunder your payload. Then add a stack decoupler (which weights 50 kg) as\nwe're building the launcher stage.\n\nThe payload for the launcher stage is 6370 kg (i.e. the lander stage\nplus 50 kg stack decoupler). Safe Delta-v and acceleration requirements\nfor a launch to Low Kerbin Orbit have been found out to be 905 m/s with\n13 m/s\u00b2 at 1 ATM and then 3650 m/s with 13 m/s\u00b2 at 0.18 ATM.\n\nWe want to use solid fuel boosters for the launch, so we add\n``--boosters``. Additionally, we prefer engines with thrust vectoring as\nit may be helpful to counteract turbulences during launch, so we add\n``--gimbal``. *Small* is still our preferred radial size. Now we\ndetermine best launcher designs:\n\n::\n\n $ kspalculator 6370 --boosters --gimbal -R small 905:13:1 3650:13:0.18\n RE-I5 Skipper\n Total Mass: 89320 kg (including payload and full tanks)\n Cost: 18258\n Liquid fuel: 5600 units (31500 kg full tank mass)\n Requires: HeavyRocketry\n Radial size: Large\n Gimbal: 2.0 \u00b0\n Engine generates electricity\n Radially attached 2 * S1 Kickback SFB\n SFBs mounted on TT-70 Radial Decoupler, Advanced Nose Cone, 2 * EAS-4 Strut Connector each\n Performance:\n *1: 905 m/s @ 1.00 atm 13.30 m/s\u00b2 - 21.35 m/s\u00b2 89.3 t - 55.6 t\n *2: 213 m/s @ 0.18 atm 23.59 m/s\u00b2 - 26.08 m/s\u00b2 55.6 t - 50.3 t\n 3: 3437 m/s @ 0.18 atm 15.55 m/s\u00b2 - 47.68 m/s\u00b2 40.9 t - 13.3 t\n 4: 107 m/s @ 0.18 atm 47.68 m/s\u00b2 - 49.37 m/s\u00b2 13.3 t - 12.9 t\n\n 4 * Mk-55 Thud, radially mounted\n Total Mass: 108520 kg (including payload and full tanks)\n Cost: 19467\n Liquid fuel: 4600 units (25875 kg full tank mass)\n Requires: HeavyRocketry\n Radial size: Small\n Gimbal: 8.0 \u00b0\n Engine is short enough to be used with LT-05 Micro Landing Struts\n Radially attached 3 * S1 Kickback SFB\n SFBs mounted on TT-70 Radial Decoupler, Advanced Nose Cone, 2 * EAS-4 Strut Connector each\n You might limit SFB thrust to 79.5 %\n Performance:\n *1: 905 m/s @ 1.00 atm 16.42 m/s\u00b2 - 26.35 m/s\u00b2 108.5 t - 67.6 t\n *2: 637 m/s @ 0.18 atm 29.12 m/s\u00b2 - 39.36 m/s\u00b2 67.6 t - 50.0 t\n 3: 3013 m/s @ 0.18 atm 13.15 m/s\u00b2 - 36.68 m/s\u00b2 35.8 t - 12.9 t\n 4: 2 m/s @ 0.18 atm 36.68 m/s\u00b2 - 36.71 m/s\u00b2 12.9 t - 12.8 t\n\n [...]\n\n(Output was shortened)\n\nThe asterisks in the performance tables indicate that the phase of\nflight is done by solid fuel boosters. The SFB thrust limit suggestion\nis the minimum thrust required to fulfill your acceleration constraints.\n\nNow build one of the launchers being suggested by kspalculator and we're\nready to do a giant leap for kerbinkind.\n\n.. example-end\n\nHelpful Links\n-------------\n\n.. links-start\n\nOfficial web frontend for kspalculator:\nhttps://kspalculator.appspot.com/.\n\nNice cheat sheet, especially containing maps with required Delta-v:\nhttp://wiki.kerbalspaceprogram.com/wiki/Cheat\\_sheet\n\nThere is a `thread in the Kerbal Space Program\nforums `__\nabout kspalculator.\n\nIn case you find any problems or have suggestions, please help us\nimproving this tool by reporting them at:\nhttps://github.com/aandergr/kspalculator/issues\n\n.. links-end",
"description_content_type": null,
"docs_url": null,
"download_url": "",
"downloads": {
"last_day": -1,
"last_month": -1,
"last_week": -1
},
"home_page": "https://kspalculator.readthedocs.io/",
"keywords": "ksp kerbal space program kerbalspaceprogram calculator calculate optimize engine fuel propellant",
"license": "MIT",
"maintainer": "",
"maintainer_email": "",
"name": "kspalculator",
"package_url": "https://pypi.org/project/kspalculator/",
"platform": "",
"project_url": "https://pypi.org/project/kspalculator/",
"project_urls": {
"Homepage": "https://kspalculator.readthedocs.io/"
},
"release_url": "https://pypi.org/project/kspalculator/0.11/",
"requires_dist": null,
"requires_python": "",
"summary": "Determine the best rocket propulsion designs for one stage of a rocket, given a set of constraints and preferences (Kerbal Space Program).",
"version": "0.11"
},
"last_serial": 3302760,
"releases": {
"0.10": [
{
"comment_text": "",
"digests": {
"md5": "2bba00d61be979d3a3d8c836ffc1ba96",
"sha256": "48b00d8f64aa4228c50676e65a370fc337a04bccd88f040f773953658c41cdd4"
},
"downloads": -1,
"filename": "kspalculator-0.10.tar.gz",
"has_sig": false,
"md5_digest": "2bba00d61be979d3a3d8c836ffc1ba96",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 22657,
"upload_time": "2016-10-01T10:19:41",
"url": "https://files.pythonhosted.org/packages/90/0a/7304dbb86cf3076180fb01edfe9eb38cdb20d41285ad4cd86d7e719a32b6/kspalculator-0.10.tar.gz"
}
],
"0.10.1": [
{
"comment_text": "",
"digests": {
"md5": "3e06a09dffcf07ea8265a411618c6f6c",
"sha256": "c4917982134f079fa21d9844d182ac6f2225ceb6b06bc46ee2c765194dfac584"
},
"downloads": -1,
"filename": "kspalculator-0.10.1.tar.gz",
"has_sig": false,
"md5_digest": "3e06a09dffcf07ea8265a411618c6f6c",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 24020,
"upload_time": "2016-11-22T19:24:28",
"url": "https://files.pythonhosted.org/packages/8b/33/ac348daab74f37b283e887b5d6bf7af75be96f1fa9bcd2f33a56df0bc031/kspalculator-0.10.1.tar.gz"
}
],
"0.10.2": [
{
"comment_text": "",
"digests": {
"md5": "833beea26e416a62c36ea5709e75143f",
"sha256": "09464af5a317873f3078f6610171bf399de169ca37abc54bf2b23c7b73ca40f8"
},
"downloads": -1,
"filename": "kspalculator-0.10.2.tar.gz",
"has_sig": false,
"md5_digest": "833beea26e416a62c36ea5709e75143f",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 24407,
"upload_time": "2016-12-12T14:18:49",
"url": "https://files.pythonhosted.org/packages/3e/57/1972758371b0c18d112e69837c43f3884ac2bc98623d32d0005f6b1def42/kspalculator-0.10.2.tar.gz"
}
],
"0.11": [
{
"comment_text": "",
"digests": {
"md5": "2dfa0318a0a9f8d83834377bec174f34",
"sha256": "95cab24545350fb6e8857843a0737be2a2c833946596055918b70bc70af78a79"
},
"downloads": -1,
"filename": "kspalculator-0.11.tar.gz",
"has_sig": false,
"md5_digest": "2dfa0318a0a9f8d83834377bec174f34",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 24984,
"upload_time": "2017-11-03T10:15:22",
"url": "https://files.pythonhosted.org/packages/fc/80/6245a9907bb5a57bf325cb749a39950b18a083d3e2763b3bae26e71ff3ac/kspalculator-0.11.tar.gz"
}
]
},
"urls": [
{
"comment_text": "",
"digests": {
"md5": "2dfa0318a0a9f8d83834377bec174f34",
"sha256": "95cab24545350fb6e8857843a0737be2a2c833946596055918b70bc70af78a79"
},
"downloads": -1,
"filename": "kspalculator-0.11.tar.gz",
"has_sig": false,
"md5_digest": "2dfa0318a0a9f8d83834377bec174f34",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 24984,
"upload_time": "2017-11-03T10:15:22",
"url": "https://files.pythonhosted.org/packages/fc/80/6245a9907bb5a57bf325cb749a39950b18a083d3e2763b3bae26e71ff3ac/kspalculator-0.11.tar.gz"
}
]
}