FICO Xpress Optimization Examples Repository
FICO Optimization Community FICO Xpress Optimization Home
Back to examples browserPrevious exampleNext example

Basic embedding tasks

  • ugcomptmp.cs: Compiling a model into a BIM file saved in Mosel's temporary directory (requires burglar2.mos, burglar.dat)
  • ugrun.cs: Compiling a model into a BIM file, then load and run it (requires burglar2.bim, burglar.dat)
  • ugdefstream.cs: Redirecting the model output (requires burglar2.mos, burglar.dat)
  • ugarray.cs: Accessing modeling objects: sparse arrays (requires transport.mos, transprt.dat)
  • ugcb.cs: Retrieve model output via a callback into a custom TextWriter (requires burglar2.mos, burglar.dat)
  • ugcb2.cs: Retrieve model output via a callback into a string (requires burglar2.mos, burglar.dat)
  • ugparam.cs: Passing parameters to a Mosel model (requires prime.mos)
  • Accessing modeling objects and solution information (requires burglar3.mos, burglar.dat)

Source Files

Data Files


   Mosel User Guide Example Problems

   file ugcb.cs
   Retrieve model output via callback-style functionality.
   (c) 2013 Fair Isaac Corporation
       author: S.Heipcke, Mar. 2013 

using System;
using System.IO;
using Mosel;

namespace ugcb.cs {

  public class ugcb {
    /// <summary>
    /// Main entry point for the application
    /// </summary>
    static void Main(string[] args) {
      // Initialize Mosel
      XPRM mosel = XPRM.Init();

      // Redirect error stream to stdout
      mosel.SetDefaultStream(XPRMStreamType.F_ERROR, Console.Out);

      // Compile and load the Mosel model
      XPRMModel model = mosel.CompileAndLoad("burglar2.mos");
      // Collect the model's output into a string
      StringWriter modelOut = new StringWriter();
      model.SetDefaultStream(XPRMStreamType.F_OUTPUT_LINEBUF, modelOut);
      // Run the model

      // Print the output
      string modelOutText = modelOut.ToString();
      Console.WriteLine("Model output: {0}", modelOutText);


Back to examples browserPrevious exampleNext example