Running nTop Command Line in Matlab scripts

Objective:

Learn how to run your nTop notebook using nTop Command Line (nTopCL) in Matlab scripts.

Procedure:

  • Prepare the nTop notebook and JSON input for running nTopCL
  • Matlab Struct data structure can be used to read, modify and write JSON input file.
  • Run (F5)!
  • Check if the return messages are printed as below.
[info] Logging Engine started
[info] Login successful[info] Parasolid started
[info] Parasolid started
[info] nTop successfully built.
[info] Logout successful

 Feel free to change this script to batch process your workflow by passing input lists in a for loop!

clc,clear,close all

%Provide file paths to nTopCL, nTop file, and output JSON file
%Assuming input and output JSON files as well as .ntop file in the same folder pathToExe = ['"' 'C:\\Program Files\\nTopology\\nTop Platform\\ntopcl.exe' '"']; FileToRun='SampleFile.ntop'; OutputFile='output.json'; %Provide a input JSON file InputFile='input.json'; Inputs = jsondecode(fileread(InputFile)); %Modify input variables Inputs(1).inputs{2,1}.values = 5; Inputs(1).inputs{3,1}.values = 3; Inputs(1).inputs{4,1}.values = 2; %Write JSON file JsonStr = jsonencode(Inputs); JsonStr = strrep(JsonStr, ',', sprintf(',\r')); JsonStr = strrep(JsonStr, '[{', sprintf('[\r{\r')); JsonStr = strrep(JsonStr, '}]', sprintf('\r}\r]')); fid = fopen(InputFile, 'w'); if fid == -1, error('Cannot create JSON file'); end fwrite(fid, JsonStr, 'char'); fclose(fid); %Compose a execution command Arguments=sprintf('%s -j %s -o %s %s', pathToExe,InputFile,OutputFile,FileToRun); %Run system(Arguments);

 

And that’s it! You’ve successfully run nTopCL using Matlab scripts

Are you still having issues? Contact the support team, and we’ll be happy to help!

Download the Example file:

More on this topic:

Keywords:

 ntop output ntopcl command line api script matlab input command run code cl lab 
Was this article helpful?

Comments

1 comment
  • Great job! I hope you will do many other examples using nTopCl and Matlab in the future.

    0
    Comment actions Permalink

Please sign in to leave a comment.