neqsim | fluid behavior , phase equilibrium

 by   equinor Java Version: v2.5.1 License: Apache-2.0

kandi X-RAY | neqsim Summary

kandi X-RAY | neqsim Summary

neqsim is a Java library typically used in Institutions, Learning, Education, Simulation applications. neqsim has build file available, it has a Permissive License and it has low support. However neqsim has 248 bugs and it has 2 vulnerabilities. You can download it from GitHub.

NeqSim is the main part of the NeqSim project. NeqSim (Non-Equilibrium Simulator) is a Java library for estimation of fluid behavior and process design for oil and gas production. The basis for NeqSim is a library of fundamental mathematical models related to phase behavior and physical properties of oil and gas. NeqSim is easilly extended with new models. NeqSim development was initiated at the Norwegian University of Science and Technology (NTNU).
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              neqsim has a low active ecosystem.
              It has 42 star(s) with 18 fork(s). There are 6 watchers for this library.
              OutlinedDot
              It had no major release in the last 12 months.
              There are 37 open issues and 63 have been closed. On average issues are closed in 21 days. There are 8 open pull requests and 0 closed requests.
              It has a neutral sentiment in the developer community.
              The latest version of neqsim is v2.5.1

            kandi-Quality Quality

              OutlinedDot
              neqsim has 248 bugs (3 blocker, 103 critical, 110 major, 32 minor) and 16536 code smells.

            kandi-Security Security

              neqsim has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
              OutlinedDot
              neqsim code analysis shows 2 unresolved vulnerabilities (2 blocker, 0 critical, 0 major, 0 minor).
              There are 125 security hotspots that need review.

            kandi-License License

              neqsim is licensed under the Apache-2.0 License. This license is Permissive.
              Permissive licenses have the least restrictions, and you can use them in most projects.

            kandi-Reuse Reuse

              neqsim releases are available to install and integrate.
              Build file is available. You can build the component from source.
              Installation instructions, examples and code snippets are available.
              It has 123370 lines of code, 10080 functions and 1107 files.
              It has high code complexity. Code complexity directly impacts maintainability of the code.

            Top functions reviewed by kandi - BETA

            kandi has reviewed neqsim and discovered the below as its top functions. This is intended to give you an instant insight into neqsim implemented functionality, and help decide if they suit your requirements.
            • Calculate the rWWTOBOB
            • Calculates bubble pressure
            • Calculate the DewP for a given temperature array
            • Run the RSWTOB
            • Calculates the dew point pressure
            • Calculates the RWWTOB
            • Runs the RWTOBOB
            • Calculates the temperature pressure
            • Calculate the phase envelope
            • Initialize the calculators
            • Run the rWTOB
            • Bump the temperature flash
            • The main method
            • Create the phase envelope
            • Runs the process
            • Solves the TRA matrix
            • Solves the transient state of the transient system
            • Main method
            • Run the algorithm
            • InitCPA matrix
            • The main method
            • Returns the gammaL of a given phase
            • The gamma function
            • 2
            • Create a bubble point pressure
            • Calculate the temperature and temperature parameters
            Get all kandi verified functions for this library.

            neqsim Key Features

            No Key Features are available at this moment for neqsim.

            neqsim Examples and Code Snippets

            NeqSim,Getting Started as a NeqSim Java developer,Initial setup
            Javadot img1Lines of Code : 3dot img1License : Permissive (Apache-2.0)
            copy iconCopy
            git clone https://github.com/equinor/neqsim.git
            cd neqsim
            mvn install
              

            Community Discussions

            QUESTION

            How to generate a negative binomial distribution with different sample sizes for power analyses in R?
            Asked 2022-Apr-14 at 12:54

            I try to do a power simulation with an outcome variable that is zero-inflated. So I use a negative binomial distribution. What I need is the following distribution:

            ...

            ANSWER

            Answered 2022-Apr-14 at 12:54

            The problem is that in your lambda function, you are not using the argument names for rnbinom. The default order for the arguments if you don't name them is n, size, prob, mu, so you are passing 2000 to n, 25 to size and 0.9 to prob. Just name the arguments explicitly as you did in your first example, and your code will work.

            Source https://stackoverflow.com/questions/71871538

            QUESTION

            How can I randomly sample binomial thing?
            Asked 2022-Mar-20 at 22:29

            For example, I want to randomly line the 0, 1 (50% respectively) 10 times. So, there should be five "0" and five "1".

            But, when I used:

            ...

            ANSWER

            Answered 2022-Mar-20 at 21:16

            You need to use sample(), but this way:

            Source https://stackoverflow.com/questions/71550665

            QUESTION

            Why should I use normalised units in numerical integration?
            Asked 2022-Mar-19 at 10:40

            I was simulating the solar system (Sun, Earth and Moon). When I first started working on the project, I used the base units: meters for distance, seconds for time, and metres per second for velocity. Because I was dealing with the solar system, the numbers were pretty big, for example the distance between the Earth and Sun is 150·10⁹ m.

            When I numerically integrated the system with scipy.solve_ivp, the results were completely wrong. Here is an example of Earth and Moon trajectories.

            But then I got a suggestion from a friend that I should use standardised units: astronomical unit (AU) for distance and years for time. And the simulation started working flawlessly!

            My question is: Why is this a generally valid advice for problems such as mine? (Mind that this is not about my specific problem which was already solved, but rather why the solution worked.)

            ...

            ANSWER

            Answered 2021-Jul-25 at 07:42

            Most, if not all integration modules work best out of the box if:

            • your dynamical variables have the same order of magnitude;
            • that order of magnitude is 1;
            • the smallest time scale of your dynamics also has the order of magnitude 1.

            This typically fails for astronomical simulations where the orders of magnitude vary and values as well as time scales are often large in typical units.

            The reason for the above behaviour of integrators is that they use step-size adaption, i.e., the integration step is adjusted to keep the estimated error at a defined level. The step-size adaption in turn is governed by a lot of parameters like absolute tolerance, relative tolerance, minimum time step, etc. You can usually tweak these parameters, but if you don’t, there need to be some default values and these default values are chosen with the above setup in mind.

            Digression

            You might ask yourself: Can these parameters not be chosen more dynamically? As a developer and maintainer of an integration module, I would roughly expect that introducing such automatisms has the following consequences:

            • About twenty in a thousand users will not run into problems like yours.
            • About fifty a thousand users (including the above) miss an opportunity to learn rudimentary knowledge about how integrators work and reading documentations.
            • About one in thousand users will run into a horrible problem with the automatisms that is much more difficult to solve than the above.
            • I need to introduce new parameters governing the automatisms that are even harder to grasp for the average user.
            • I spend a lot of time in devising and implementing the automatisms.

            Source https://stackoverflow.com/questions/68500704

            QUESTION

            Adding a new variable with a code/formula that generates a moderate association with a previous one
            Asked 2022-Mar-12 at 16:34

            I try adding a new variable that has an association with the previous one. Is there a math/code trick/formula to increase the width of confidence bands in this association?

            ...

            ANSWER

            Answered 2022-Mar-12 at 16:34

            QUESTION

            Showcasing a binary tree in unity problom
            Asked 2022-Mar-01 at 13:03

            i made a function in unity that takes a Binode - and making it into a2d tree, but here the problem: my so called idea to display the tree is this:

            make a recursive function, and every time the level will go up by 1, and it will also send the function a bool(is the right or is the left of the old node) and then if its true it will get the root of the tree and - the y by level * 55, then it will either x = level * 55, if it right, and if its left the x = level * -55.

            now the problome is lets say i have a tree that has 3 levels, then if i will put a right node to the left tree it will just put it were the most right node is and it will overlap, kinda hard to explain in text but i hope you understand.

            heres the repository: git

            code:

            ...

            ANSWER

            Answered 2022-Mar-01 at 13:03

            Before giving an answer here I would once again first suggest some refactors and fixes:

            First of all your CreateRndTree is wrong ;)

            Source https://stackoverflow.com/questions/71299789

            QUESTION

            Transporter move through wall
            Asked 2022-Feb-10 at 15:17

            In my model I use a transporter which uses free navigation. If it is right, the transporters can not move through walls, the strange thing is that in my model at one point somehow the transporter is able to move through a wall?

            He slips through the wall somewhere at the red circled section, when I check the simulation. (see screenshot, blue is the transporter)

            When I look at the model, I also see that there is no gap or something (see second image). Am I'm overlooking something (maybe something about that I've multiple floors)? or is it a bug? Does somebody know how to fix it.

            ...

            ANSWER

            Answered 2022-Feb-10 at 15:17

            For other people facing this problem, when having a low turn radius (0.01) and no speed limit near obstacle in your transporterfleet, it is possible to move through walls, if you change this the problem is solved!

            Source https://stackoverflow.com/questions/71047564

            QUESTION

            Anylogic - create Resources and add to ResourcePool
            Asked 2022-Feb-10 at 07:06

            I'm having difficulty finding the documentation I need to work with Resources and resourcePools - there is no "resource API documentation" that I can find.

            I would like to programatically create static resources (of a custom type) and then add these resources to a resourcePool. When creating the resources, I'd like to be able to specify their property values prior to adding them to the resourcePool. In my mind the code would look something like this:

            ...

            ANSWER

            Answered 2021-Sep-20 at 07:03

            This is a bit of a blind spot in AnyLogic. It can only be done indirectly:

            1. Create an empty agent population with your agent type
            2. Tell the resource pool to use that agent type
            3. set the resource pool capacity as you need. The pool will create agents for your in that population (if the capacity is larger than the current number of resources)

            If you want to manually create a resource, you must call myResourcePool.set_Capacity(myResourcePool.getCapacity()+1)

            Destroying 1 resource works vice-versa.

            Also, make sure to "destroy resources on capacity decrease" so the agents are destroyed from the population

            Source https://stackoverflow.com/questions/69249906

            QUESTION

            Anylogic: Release specific resource
            Asked 2022-Feb-10 at 07:05

            I've got another small issue with AnyLogic resources.

            I want to be able to release a specific resource from a resource pool - not just any resource from the pool. The reason is that I occasionally seize multiple resources from a ResourcePool (one at a time) and then wish to release the resources again one at a time. But I don't want to release "any" resource from the pool, I want to be able to specify which specific resource of the pool to release.

            Is this possible or is this one of the limitations of the resources implementation?

            ...

            ANSWER

            Answered 2021-Sep-21 at 03:21

            I can think of many ways to do this depending on the situation... first one is to use a selectOutput before the release in order to release or not. The selectOutput will check if it's the right resource to release

            the other option, if you want to release everything with the same release block but in a given order, you can put a wait block before the release block and wait for the right moment to release the resource

            another one, is to use wrap up actions, and put a wait block in the wrap up, to wait for the other resources to arrive there before releasing so they are released in order

            Source https://stackoverflow.com/questions/69262281

            QUESTION

            Anylogic: Is it possible to move Transporters based on travel time, rather than distance and speed?
            Asked 2022-Feb-09 at 19:24

            I would like to use transporters in my model in various places (tugboats, forklifts, reach stackers, trucks, etc.). However, my model paths and animation can't be drawn to scale, detailed explanation in brackets below. Is there a way I can move the transporter from one node to another based on travel time (similar to what a movable resource can do), rather than speed and distance? The "Move By Transporter" block does not seem to allow this and I have not been able to find a solution online. Thank you for your help.

            (Explanation on why I can't draw to scale: firstly, some destination locations (storage areas, etc.) are not known yet and will just be represented by a travel delay to get there, secondly, different areas of the model will be drawn to different scales, i.e. some network paths will represent a multiple kilometers and some network paths will only represent a few hundred meters, etc.)

            ...

            ANSWER

            Answered 2022-Jan-31 at 05:24

            You can draw the paths to suit your animation and then simply set the speed of the transporter that gets seized to a speed so that the duration of the movement matches what you need it to be, and when the transporter gets released set the speed back to normal

            Source https://stackoverflow.com/questions/70888803

            QUESTION

            AnyLogic: False number format when exporting data to excel
            Asked 2022-Feb-09 at 19:23

            I collect various data in time plots. If I copy the timeplot data and then paste it into Excel, the number format is often wrong. For example, I often get a date like Aug 94 instead of the actual number from the TimePlot. Unfortunately, I can't easily format this date into a number either, since the formatted number does not match the actual number from the timeplot. If I format the date in the same format as the number above and below, then I get the number 34547. However, this number does not correspond to the actual number of the TimePlot. Anyone know how I can prevent this problem?

            ...

            ANSWER

            Answered 2022-Jan-17 at 19:41

            You can only solve this on the Excel side, AnyLogic provides the raw data for you. Excel then interprets stuff. You can test it by pasting the chart raw data into a txt or csv file.

            So either fix your Excel settings or paste into a csv, then into an xlsx.

            Or better still: Do not manually paste at all. Instead, write your model results into the AnyLogic database and export to Excel from there: this takes away a lot of the pain for you. Check the example models to learn how to do that.

            Source https://stackoverflow.com/questions/70746384

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install neqsim

            NeqSim can be used in a Java application by adding the neqsim-x.x.x.jar found in NeqSim releases to the classpath. A demonstration of dowloading the library and running a TPflash bencmark is illustrated in this NeqSim Colab demo. Learn and ask questions in Discussions for use and development of NeqSim. Also see the NeqSim JavaDoc.
            See the NeqSim Java Wiki for how to use the NeqSim API. NeqSim can be built using the Maven build system (https://maven.apache.org/). All NeqSim build dependencies are given in the pom.xml file. Learn and ask questions in Discussions for use and development of NeqSim.
            The NeqSim source code is downloaded by cloning the library to your local computer (alternatively fork it to your private reprository). The following commands are dependent on a local installation of GIT and Maven. An interactive demonstration of how to get started as a NeqSim developer is presented in this NeqSim Colab demo.

            Support

            See the getting started as a NeqSim developer documentation. Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests. An interactive demonstration of how to get started as a NeqSim developer is presented in this NeqSim Colab demo.
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries