Giter Club home page Giter Club logo

otagrum's Introduction

https://circleci.com/gh/openturns/openturns.svg?style=shield https://github.com/openturns/openturns/actions/workflows/build.yml/badge.svg?branch=master https://codecov.io/gh/openturns/openturns/graph/badge.svg?token=EczU7Uo18P

OpenTURNS (Open source initiative to Treat Uncertainties, Risks'N Statistics)

OpenTURNS is a scientific C++ and Python library featuring an internal data model and algorithms dedicated to the treatment of uncertainties. The main goal of this library is to provide all functionalities needed to treat uncertainties in studies with industrial applications. Targeted users are all engineers who want to introduce the probabilistic dimension in their so far deterministic studies.

Up-to-date information can be found at http://www.openturns.org

License

OpenTURNS is free software distributed under the GNU Lesser General Public License version 3 or, at your option, any later version. The terms of the GNU LGPL version 3 can be found in the files COPYING and COPYING.LESSER. Additional licenses apply to some parts of the library: please see the LICENSE file and the other COPYING.* files.

Release Notes

Please see the ChangeLog file for a summary of bug fixes and new features of the current release.

Backwards Compatibility

The developers strive to preserve backwards compatibility between releases, but this is not always possible. Where backwards compatibility is known to be broken, it is clearly marked as an incompatibility in the ChangeLog file.

Installation

Instructions on how to install OpenTURNS from binaries and from sources are available here.

Documentation

The link http://openturns.github.io/openturns/latest/contents.html will take you to the documentation of the current release.

In the URL above, replace "latest" with "master" to view the documentation of the current master branch, or with a version number to view the documentation of that specific version.

Contributing

There are many ways you can contribute, and not all of them involve developer skills. Please visit this page for more information.

Acknowledgements

Symbolic differentiation is powered in OpenTURNS by a modified version of Leo Liberti's Ev3 library.

-- The OpenTURNS team

otagrum's People

Contributors

jschueller avatar mlasserre avatar phwuil avatar regislebrun avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

otagrum's Issues

otagrum installation

Hello, I'd like to install this OT module on both OSX and Debian (without Conda). Unfortunately, my attempts to install the module following the instructions provided on the OT page have failed so far. Thank you for your assistance.

inferPDAG crashes with sparse skeleton

I have some data with a known tree structure (variables on level i only depend on variables from levels <= i-1), and I want to use this information for the final DAG.

Basically I create a custom skeleton that is not complete and pass it to ContinuousPC.inferPDAG instead of using ContinuousPC.learnDAG:

correlated_sample.txt

from __future__ import print_function

from time import time

import openturns as ot
import pyAgrum as gum
import otagrum

alpha = 0.9
binNumber = 3


data = ot.Sample.ImportFromCSVFile('/home/schueller/correlated_sample.csv')


n_nodes = data.getDimension()
desc = data.getDescription()


skeleton = gum.UndiGraph()
for i in range(data.getDimension()):
    skeleton.addNodeWithId(i)
c = 0
for i in range(data.getDimension()):
    tag_i = desc[i]
    level_i = 0 if tag_i.startswith('x') else int(tag_i[1:2])
    for j in range(i):
        tag_j = desc[j]
        level_j = 0 if tag_j.startswith('x') else int(tag_j[1:2])
        if level_j < level_i:
            print('-- Adding edge #', c, j, i, tag_j+'->'+tag_i)
            c += 1
            skeleton.addEdge(j, i)


t0 = time()
learner = otagrum.ContinuousPC(data, binNumber, alpha)
print('jt=', learner.learnJunctionTree())
#print('dag=', learner.learnDAG())
#skeleton = learner.inferSkeleton()
print('dag=', learner.deriveDAG(learner.inferPDAG(skeleton)))

t1 = time() - t0

Here otagrum crashes in ContinuousPC.cxx:272:

#0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
#1  0x00007ffff7a24801 in __GI_abort () at abort.c:79
#2  0x00007ffff3d15957 in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#3  0x00007ffff3d1bab6 in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#4  0x00007ffff3d1baf1 in std::terminate() () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#5  0x00007ffff3d1bd24 in __cxa_throw () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#6  0x00007fff8fd17aab in gum::HashTableList<gum::Edge, OT::Indices, std::allocator<std::pair<gum::Edge, OT::Indices> > >::operator[] (this=<optimized out>, key=...)
    at /home/schueller/projects/openturns/aGrUM-schueller/build/install/include/agrum/core/hashTable_tpl.h:255
#7  0x00007fff8fd0e8dc in gum::HashTable<gum::Edge, OT::Indices, std::allocator<std::pair<gum::Edge, OT::Indices> > >::operator[] (this=<optimized out>, key=...)
    at /home/schueller/projects/openturns/aGrUM-schueller/build/install/include/agrum/core/hashTable_tpl.h:729
#8  OTAGRUM::ContinuousPC::inferPDAG (this=<optimized out>, g=...) at /home/schueller/projects/openturns/otagrum/lib/src/ContinuousPC.cxx:272
#9  0x00007fff8fffafcd in _wrap_ContinuousPC_inferPDAG (args=<optimized out>) at /home/schueller/projects/openturns/otagrum/build/python/src/otagrum_modulePYTHON_wrap.cxx:19315

Maybe this comment is a clue:

if (!g.existsEdge(x, z)) // maybe unshielded collider

cc @phwuil

problème import pyagrum 20.3 et otagrum 0.4

Bonjour,

Je suis sous windows 10 et j'ai installé anaconda 64bits. Voici mon problème:

Quand je me créé un environnement avec anaconda avec python 3.8, pyagrum 0.18.3 et otagrum 0.3 pas de problème, les import de pyagrum et otagrum fonctionnent.

En revanche dès que j'installe otagrum à 0.4 et pyagrum 20.3 à l'aide du navigateur anaconda ou avec les commandes conda ... quand je fais un

import pyagrum (c'est ok)

import otagrum (il ya un pb dll)

File
"C:\Users\cbaudrit\anaconda3\lib\site-packages\otagrum_init_.py",
line 18, in
from .otagrum import *
File
"C:\Users\cbaudrit\anaconda3\lib\site-packages\otagrum\otagrum.py",
line 15, in
from . import _otagrum
ImportError: DLL load failed while importing _otagrum: La procédure
spécifiée est introuvable.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.