Package: sedb

Name of currently executing block in discrete-event simulation


blkname = gceb


blkname = gceb returns the path name of the block associated with the current operation. If the current operation is not associated with a block, blkname is an empty string. If an entity is advancing, blkname indicates the block from which the entity departs.


View information about a block:

  1. Begin a debugger session for a particular model. At the MATLAB® command prompt, enter:

  2. Establish a breakpoint and proceed in the simulation. At the prompt, enter:

    tbreak 2.51

    The partial output indicates that the server is about to execute a service completion event:

    Hit b1 : Breakpoint for first operation at or after time 2.51
    Executing ServiceCompletion Event (ev8)               Time = 2.581301297500028
    : Entity = en4                                        Priority = 1
    : Block  = Infinite Server
  3. View information about the block that is about to execute the event:

    blkname = gceb
    blkid = gcebid

    The output is:

    blkname =
    sedemo_start_timer_read_timer/Infinite Server
    blkid =
  4. Proceed further in the simulation:


    The output shows that the entity is about to depart from the server:

        Entity Advancing (en4)
        : From = Infinite Server
        : To   = Read Timer
  5. Use the identifier, blkid, to display information about the block and the status of entities in it:

    % Display information in Command Window.

    The output is:

    InfiniteServer Current State                          T = 2.581301297500028
    Block (blk4): Infinite Server
    Entities (Capacity = Inf):
     Pos     ID        Status                   Event     EventTime
     1       en2       In Service               ev4       2.7303849396254689
     2       en4       Advancing                ev8       2.581301297500028
     3       en5       In Service               ev10      2.974736350905304
  6. Store the information in variables:

    % Store information in structure.
    blkdetails = blkinfo(blkid)
    % Store status of entities in cell array.
    blkentities = {blkdetails.Entities.Status}'

    The output is:

    blkdetails =
             Time: 2.5813
            Block: 'sedemo_start_timer_read_timer/Infinite Server'
          BlockID: 'blk4'
        BlockType: 'InfiniteServer'
         Capacity: Inf
         Entities: [1x3 struct]
    blkentities =
        'In Service'
        'In Service'
  7. Get more information about one of the entities by using data from the blkdetails structure as an input argument to the eninfo function:

    adv_eninfo = eninfo(blkdetails.Entities(1).ID);
    time_in_system = adv_eninfo.Timers.ElapsedTime

    The output is:

    time_in_system =
  8. End the debugger session. At the prompt, enter:


See Also

Was this topic helpful?