项目作者: somefunAgba

项目描述 :
Pulsating Membership Functions
高级语言: Matlab
项目地址: git://github.com/somefunAgba/PulseMF.git
创建时间: 2018-10-06T10:25:23Z
项目社区:https://github.com/somefunAgba/PulseMF

开源协议:BSD 3-Clause "New" or "Revised" License

下载


PulseMF DOI

Pulsating Membership Functions

A special case of the M-Fuzzy-Membership Function

Usage

PULSEMF(X, PARAMS, OPTION) returns a matrix which is the low or high triggered pulse-shaped membership function evaluated at X,

OPTION = 0, 1

0 -> Low-Triggered Pulse, output = 1010
1 -> High-Triggered Pulse, output = 0101 [Default]
PARAMS = [X0,X1,..,X5] is an 5-element vector that determines the break points of this membership function.
Example:

url

  1. x = 0:0.1:10;
  2. subplot(421); ax11 = plot(x, pulsemf(x, [2.5 3 4 4.5 5.5], 0), '--.b');
  3. ax11.LineWidth = 1.5;ax11.MarkerSize = 10;
  4. grid on; grid minor;
  5. subplot(423); ax21 = plot(x, pulsemf(x, [2 3.5 5 5.5 6], 0), '--.b');
  6. ax21.LineWidth = 1.5;ax21.MarkerSize = 10;
  7. grid on; grid minor;
  8. subplot(425); ax31 = plot(x, pulsemf(x, [4 4.2 4.6 5 5.8 ], 0), '--.b');
  9. ax31.LineWidth = 1.5;ax31.MarkerSize = 10;
  10. grid on; grid minor;
  11. subplot(427); ax41 = plot(x, pulsemf(x, [1 3.2 5.2 5.8 6], 0), '--.b');
  12. ax41.LineWidth = 1.5;ax41.MarkerSize = 10;
  13. grid on; grid minor;
  14. subplot(422); ax12 = plot(x, pulsemf(x, [2.5 3 4 4.5 5.5]), '--r.');
  15. ax12.LineWidth = 1.5; ax12.MarkerSize = 10;
  16. grid on; grid minor;
  17. subplot(424); ax22 = plot(x, pulsemf(x, [2 3.5 5 5.5 6]), '--r.');
  18. ax22.LineWidth = 1.5;ax22.MarkerSize = 10;
  19. grid on; grid minor;
  20. subplot(426); ax32 = plot(x, pulsemf(x, [4 4.2 4.6 5 5.8 ]), '--r.');
  21. ax32.LineWidth = 1.5;ax32.MarkerSize = 10;
  22. grid on; grid minor;
  23. subplot(428); ax42 = plot(x, pulsemf(x, [1 3.2 5.2 5.8 6]), '--r.');
  24. ax42.LineWidth = 1.5;ax42.MarkerSize = 10;
  25. grid on; grid minor;
  26. set(gcf, 'name', 'pulsemf', 'numbertitle', 'off');