Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Sep 10 14:09
    BookOwl opened #107
  • Sep 02 13:14

    darioizzo on master

    added spherical harmonics files new names duplicate and 25 more (compare)

  • Sep 02 13:14
    darioizzo closed #101
  • Sep 02 13:14

    darioizzo on master

    fix(juice): working multi-objec… fix(juice): unpack time only wh… Merge pull request #106 from mi… (compare)

  • Sep 02 13:14
    darioizzo closed #106
  • Sep 02 09:33
    mikeheddes review_requested #106
  • Aug 29 13:34
    mikeheddes synchronize #106
  • Aug 29 12:51
    mikeheddes opened #106
  • Aug 29 12:29
  • Aug 25 23:08
  • Aug 24 23:39
    cpsancha commented #95
  • Aug 24 23:37
    sork-dev commented #95
  • Aug 13 12:56
  • Aug 05 12:04
    Badidzetai edited #105
  • Aug 05 12:04
    Badidzetai edited #105
  • Aug 05 07:14
    mrtreasurer synchronize #101
  • Aug 01 07:20
    mikeheddes commented #101
  • Jul 31 08:56
    mrtreasurer synchronize #101
  • Jul 29 15:13
    Badidzetai commented #105
  • Jul 29 13:36
    darioizzo commented #105
Samuel Frampton
@framptonspace_twitter
Hi @darioizzo, i'm essentially trying to adapt the mga_1dsm example to use spice Kernels, looks like my issue was just with the Spice kernels not loading appropriately, and the error seems to be thrown up when I try to use the archipelago class with PyGMO.
Dario Izzo
@darioizzo
@framptonspace_twitter I understand, my question is if you still have the issue or it was solved. I seem to remember to have tested the kernels in mga_1dsm and they workked
So it may be your problem is either with pagmo archipelago or maybe you found a bug in pykep.
Samuel Frampton
@framptonspace_twitter
@darioizzo Sorry for the misunderstanding. Yes I still have the issue, I will try to create a problem with spice and mga_1dsm, but without an archipelago, and see if it works.
Sanjeev Narayanaswamy
@sanjeev-narayanaswamy
Hi @darioizzo, it seems the conda-forge pykep package corresponds to v2.2. Could you please help me get the latest v2.3 release through conda? I would deeply appreciate it.
Dario Izzo
@darioizzo
@sanjeev-narayanaswamy the packages should be available soon ... today I merged the PR conda-forge/pykep-feedstock#5
Sanjeev Narayanaswamy
@sanjeev-narayanaswamy
Thanks a lot @darioizzo
Dario Izzo
@darioizzo
@sanjeev-narayanaswamy out of curiosity why do you need v2.3 ?
Sanjeev Narayanaswamy
@sanjeev-narayanaswamy
@darioizzo I am working on a project with NASA FDL using pykep for the optimization of low thrust orbital debris rendezvous and I just wanted to have my contribution for fixing TLE imports in v2.3 available through conda. Pykep is truly a stellar piece of software - it is fast as well as versatile. Thank you for developing this.
Dario Izzo
@darioizzo
ah right ... thanks!!
Giacomo Acciarini
@Sceki
Hello, where can the best putative optimal solutions of the 6 gym problems (3 cassini and 3 earth-mars related) can be found?
AbishekSeshan
@AbishekSeshan
Hello! I'm using 64 bit windows 10, and have python 3.7. When I type "pip install pykep", an error occurs, which says " Could not find a version that satisfies the requirement pykep (from versions: )
No matching distribution found for pykep"
Can anyone suggest a solution?
Dario Izzo
@darioizzo
@AbishekSeshan In windows we only support py3.6. If you need py37 you will need to either compile it yourself or change OS.
Tom Ginsberg
@tomginsberg
Hi moving my issue from github to gitter. I tried running the command
cmake ../ -DBUILD_PYKEP="ON" -DCMAKE_INSTALL_PREFIX=/usr/local but still have the same error
[ 88%] Building CXX object tests/CMakeFiles/propagate_taylor_s_test.dir/propagate_taylor_s_test.cpp.o
[ 89%] Linking CXX executable propagate_taylor_s_test
[ 89%] Built target propagate_taylor_s_test
pykep/core/CMakeFiles/_core.dir/build.make:82: target pattern contains no `%'. Stop.
make[1]:
[pykep/core/CMakeFiles/_core.dir/all] Error 2
make: * [all] Error 2
And in the build.make file it still reads Boost::python37-NOTFOUND
Dario Izzo
@darioizzo
@tomginsberg As I wrote on the issue, can you post the output of the cmake command?
In general the workflow is:
1) clone the pykep git repository
2) install the keplerian_toolbox headers in your CMAKE_INSTALL_PREFIX, in your case probably \usr\local\ is a good choice, but I do not know as we do not build in homebrew. Options in cmake: BUILD_TESTS=off, BUILD_PYKEP=off, BUILD_SPICE=on, INSTALL_HEADERS=on
3) install pykep.
Options in cmake: BUILD_TESTS=off, BUILD_PYKEP=on, INSTALL_HEADERS=off
Dario Izzo
@darioizzo
When doing the step 3) it is good practice to inspect in ccmake (not cmake) what libraries/python have been found and where.
Tom Ginsberg
@tomginsberg
cmake ../ -DCMAKE_INSTALL_PREFIX="/usr/local" -DBUILD_TESTS="OFF" -DBUILD_PYKEP="OFF" -DBUILD_SPICE="ON" -DINSTALL_HEADERS="ON"
-- System name: Darwin
-- The C++ compiler ID is: AppleClang
-- YACMA autodetected C++ flags: -ftemplate-depth=1024;-fvisibility-inlines-hidden;-fvisibility=hidden;-fdiagnostics-show-template-tree
-- YACMA autodetected C++ debug flags: -Wshadow;-Werror;-Wall;-Wextra;-Wnon-virtual-dtor;-Wconversion;-Wdeprecated;-Wold-style-cast;-pedantic-errors;-Wdisabled-optimization;-ftemplate-backtrace-limit=0;-fstack-protector-all;-Wodr;-Wshift-negative-value;-Wnull-dereference
-- Clang compiler on OSX detected, setting the standard library to 'libc++'.
-- Boost version: 1.69.0
-- Found the following Boost libraries:
-- date_time
-- serialization
-- Required Boost libraries: date_time;serialization
-- Boost version: 1.69.0
-- Found the following Boost libraries:
-- date_time
-- serialization
-- Detected Boost version: 106900
-- Boost include dirs: /usr/local/include
-- Configuring done
-- Generating done
-- Build files have been written to: /Users/tomginsberg/Desktop/pykep/build
cmake ../ -DBUILD_PYKEP="ON" -DBUILD_TESTS="OFF" -DINSTALL_HEADERS="OFF"
-- System name: Darwin
-- The C++ compiler ID is: AppleClang
-- YACMA autodetected C++ flags: -ftemplate-depth=1024;-fvisibility-inlines-hidden;-fvisibility=hidden;-fdiagnostics-show-template-tree
-- YACMA autodetected C++ debug flags: -Wshadow;-Werror;-Wall;-Wextra;-Wnon-virtual-dtor;-Wconversion;-Wdeprecated;-Wold-style-cast;-pedantic-errors;-Wdisabled-optimization;-ftemplate-backtrace-limit=0;-fstack-protector-all;-Wodr;-Wshift-negative-value;-Wnull-dereference
-- Clang compiler on OSX detected, setting the standard library to 'libc++'.
-- Python modules do NOT require linking to the Python library.
-- Python interpreter: /usr/local/bin/python3.7m
-- Python interpreter version: 3.7.2
-- Python include dir: /System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7
-- OS X platform detected.
-- Output extension for compiled modules will be '.so'.
-- Python modules install path: lib/python2.7/site-packages
-- Boost version: 1.69.0
-- Found the following Boost libraries:
-- date_time
-- serialization
-- Required Boost libraries: date_time;serialization;python37
-- Boost version: 1.69.0
-- Found the following Boost libraries:
-- date_time
-- serialization
-- Detected Boost version: 106900
-- Boost include dirs: /usr/local/include
-- The 'Boost::python37' imported target is missing, creating it.
-- Removing the '-fvisibility=hidden' flag for Boost.Python > 1.63.
-- Setting up the compilation of the Python module '_core'.
-- Setting up custom extension 'so' for the Python module '_core'.
-- Setting up extra compiler flag '-fwrapv' for the Python module '_core'.
-- Setting up the compilation of the Python module '_planet'.
-- Setting up custom extension 'so' for the Python module '_planet'.
-- Setting up extra compiler flag '-fwrapv' for the Python module '_planet'.
-- Setting up the compilation of the Python module '_sims_flanagan'.
-- Setting up custom extension 'so' for the Python module '_sims_flanagan'.
-- Setting up extra compiler flag '-fwrapv' for the Python module '_sims_flanagan'.
-- Setting up the compilation of the Python module '_util'.
-- Setting up custom extension 'so' for the Python module '_util'.
-- Setting up extra compiler flag '-fwrapv' for the Python module '_util'.
-- Configuring done
-- Generating done
-- Build files have been written to: /Users/tomginsberg/Desktop/pykep/build
Dario Izzo
@darioizzo
It seems you do not have boost python installed. Also, you are mixing py27 and py37 and system python and homebrew python ....
I suggest you to start from scratch and use ccmake not cmake to try and understand whats in your system. You probably have several python installed in different locations and ways and this is confusing cmake. Also you do not have boost python installed.
Jorge Martinez
@jorgepiloto

Hi all, I am Jorge :smile:

At poliastro we have implemented Izzo's algorithm. A notebook trying to reproduce the initial paper figures is available at the project docs. Although the algorithm converges to the right solution (this is known because of books and papers examples) it is possible to see that some $T_{min}$ in our figures do not match the right position in the graph.

We would like to compare our implementation with the one available in pykep and I saw that the core of the project is written in C. Is it possible to call those C functions such us lambert_problem::dTdxfrom the pykep module somehow? Because regarding the examples we can only call:

from pykep import lambert_problem
Dario Izzo
@darioizzo
@jorgepiloto you can install the headers and use directly c++ ...
otherwise you need to recompile the pykep module exposing to python the c++ functions you need access to. this is done modifying core.cpp in pykep folder, adding via boost python the necassary wrappers.
matrixbot
@matrixbot

astrojuanlu hi! (coming from #poliastro:matrix.org, same as Jorge Martinez (Gitter) )

I tried installing the conda-forge package of pykep in a fresh Python 3.7 conda environment and got this error while running the example lambert_problem:

>>> from pykep import lambert_problem
>>> from math import pi
>>> l = lambert_problem([1,0,0],[0,1,0],5 * pi / 2. )
>>> l.get_iters()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: No to_python (by-value) converter found for C++ type: std::vector<int, std::allocator<int> >
astrojuanlu I suppose we can use l.get_v1() and l.get_v2() to get the iterations instead?
astrojuanlu (those work just fine, checked)
Jorge Martinez
@jorgepiloto
I expected that procedure when trying to work with those C subroutines. Anyway, thank you for your fast answer @darioizzo :smile:
Dario Izzo
@darioizzo
@matrixbot try to use floats when constructing l ... let me know
matrixbot
@matrixbot
astrojuanlu Dario Izzo (Gitter): I copy-pasted l = lambert_problem([1,0,0],[0,1,0],5 * pi / 2. ) from the docstring :)
Dario Izzo
@darioizzo
Can you use floats instead? @matrixbot
matrixbot
@matrixbot

astrojuanlu ```

l = lambert_problem([1., 0., 0.], [0., 1., 0.], 5 * pi / 2.)
l
Lambert's problem:
mu = 1
r1 = [1, 0, 0]
r2 = [0, 1, 0]
Time of flight: 7.8539816339745

chord = 1.4142135623731
semiperimeter = 1.7071067811865
lambda = 0.41421356237309
non dimensional time of flight = 4.9798223260205

Maximum number of revolutions: 1
Solutions:
0 revs, Iters: 3, x: -0.58644325543794, a: 1.3009812610796
v1= [0.90230487720848529, 0.64590659483860502, 0] v2= [-0.64590659483860502, -0.90230487720848529, 0]
1 revs, left. Iters: 4, x: -0.11188837995933, a: 0.86437450327173
v1= [0.45213333668550759, 0.79916800651739384, 0] v2= [-0.79916800651739384, -0.45213333668550759, 0]
1 revs, right. Iters: 4, a: 0.38268343236509, a: 1
v1= [1.0257123289739564e-16, 0.99999999999999978, 0] v2= [-0.99999999999999978, -1.0257123289739564e-16, 0]

l.get_iters()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: No to_python (by-value) converter found for C++ type: std::vector<int, std::allocator<int> >

```

astrojuanlu and another attempt:

astrojuanlu ```

l = lambert_problem([1.0001, 0.0001, 0.0001], [0.0001, 1.0001, 0.00001], 5 * pi / 2.)
l
Lambert's problem:
mu = 1
r1 = [1.0001, 0.0001, 0.0001]
r2 = [0.0001, 1.0001, 1.0000000000000001e-05]
Time of flight: 7.8539816339745

chord = 1.4142135652369
semiperimeter = 1.7072067901427
lambda = 0.41427213666497
non dimensional time of flight = 4.9793847520179

Maximum number of revolutions: 1
Solutions:
0 revs, Iters: 3, x: -0.58641808361264, a: 1.3009989341246
v1= [0.90219671389791434, 0.64591093990950621, 9.6661755009850417e-05] v2= [-0.64591093991027215, -0.90219672155874819, -7.3596035427494358e-05]
1 revs, left. Iters: 4, x: -0.11177712481321, a: 0.86440335923796
v1= [0.4519570329407957, 0.79916676280745691, 5.3173611312322879e-05] v2= [-0.79916676280807564, -0.45195703913200069, -8.4422487062228236e-05]
1 revs, right. Iters: 4, a: 0.38258941011596, a: 0.99997428825661
v1= [2.5732593140190884e-05, 0.99988713704973886, 9.9904477876137778e-06] v2= [-0.99988713705023335, -2.5737541224102957e-05, -9.997797423818353e-05]

l.get_iters()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: No to_python (by-value) converter found for C++ type: std::vector<int, std::allocator<int> >

``

matrixbot
@matrixbot
astrojuanlu (ooooops sorry for the broken formatting, I will upload a gist instead)
Jorge Martinez
@jorgepiloto
Hi all, I was wondering if anyone of you has ever heard about Gauss' algorithm for Kepler's problem. I found this algorithm in Battin 1999. However, and even after a hard debugging phase I was not able to make it totally work. Still doing a long research and looking for more information about it on different astrodynamicists software groups :rocket:
astrojuanlu 😉
Jorge Martinez
@jorgepiloto
Oh, sorry I meant the "Extended Gauss Method" algorithm :sweat_smile:
matrixbot
@matrixbot
astrojuanlu oh, no idea! which section of Battin? you might also want to ask in #openastrodynamics:matrix.org
Giacomo Acciarini
@Sceki
Hello, I have tried to generate 20 individuals for the juice_mo problem, but it does not seem to work.. in particular, when doing:
import pykep as pk
from pygmo import *
prob=pk.trajopt.gym.juice_mo
pop=population(prob, 20)
Jupyter notebook crashes
with a malloc error that I cannot really decipher:
python(23217,0x11b68f5c0) malloc: *** error for object 0x7fa0113dc408: pointer being freed was not allocated
python(23217,0x11b68f5c0) malloc: *** set a breakpoint in malloc_error_break to debug
Do you know what could cause the issue?
Ops, I didn't see PR #106 , maybe that fixes the issue
Giacomo Acciarini
@Sceki
indeed, synching the local repo with the one upstream fixed the issue..
sorry for the noise :)