Class PortfolioOptimizer.Project

java.lang.Object
neqsim.process.fielddevelopment.economics.PortfolioOptimizer.Project
All Implemented Interfaces:
Serializable
Enclosing class:
PortfolioOptimizer

public static class PortfolioOptimizer.Project extends Object implements Serializable
Single project in the portfolio.
Version:
1.0
Author:
ESOL
See Also:
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      See Also:
    • name

      private String name
    • capexMusd

      private double capexMusd
    • npvMusd

      private double npvMusd
    • type

    • probabilityOfSuccess

      private double probabilityOfSuccess
    • startYear

      private int startYear
    • capexProfile

      private Map<Integer,Double> capexProfile
    • mandatory

      private boolean mandatory
    • dependencies

      private List<String> dependencies
  • Constructor Details

    • Project

      public Project(String name, double capexMusd, double npvMusd, PortfolioOptimizer.ProjectType type, double probabilityOfSuccess)
      Creates a new project.
      Parameters:
      name - project name
      capexMusd - total CAPEX in MUSD
      npvMusd - NPV in MUSD
      type - project type
      probabilityOfSuccess - probability (0-1)
  • Method Details

    • getName

      public String getName()
      Get project name.
    • getCapexMusd

      public double getCapexMusd()
      Get total CAPEX.
    • getNpvMusd

      public double getNpvMusd()
      Get NPV.
    • getType

      Get project type.
    • getProbabilityOfSuccess

      public double getProbabilityOfSuccess()
      Get probability of success.
    • getStartYear

      public int getStartYear()
      Get start year.
    • setStartYear

      public void setStartYear(int year)
      Set start year.
    • setCapexProfile

      public void setCapexProfile(Map<Integer,Double> profile)
      Set CAPEX profile by year.
    • getCapexProfile

      public Map<Integer,Double> getCapexProfile()
      Get CAPEX profile.
    • getCapexForYear

      public double getCapexForYear(int year)
      Get CAPEX for specific year.
    • isMandatory

      public boolean isMandatory()
      Check if mandatory.
    • setMandatory

      public void setMandatory(boolean mandatory)
      Set mandatory flag.
    • getDependencies

      public List<String> getDependencies()
      Get dependencies.
    • addDependency

      public void addDependency(String projectName)
      Add dependency.
    • getNpvCapexRatio

      public double getNpvCapexRatio()
      Calculate NPV/CAPEX ratio.
    • getEmv

      public double getEmv()
      Calculate expected monetary value.
    • getRiskWeightedRatio

      public double getRiskWeightedRatio()
      Calculate risk-weighted NPV ratio.