| 473 | g_engine = LP_Engine() |
| 474 | |
| 475 | class ExpressionSet: |
| 476 | def __init__(self, erst = None, es = None): |
| 477 | if es != None: |
| 478 | self.e = copy.deepcopy(es.e) # [:, :, :] |
| 479 | self.r = copy.deepcopy(es.r) # [:] |
| 480 | self.s = copy.deepcopy(es.s) |
| 481 | self.t = copy.deepcopy(es.t) |
| 482 | elif erst != None: |
| 483 | self.e = erst[0] |
| 484 | self.r = erst[1] |
| 485 | self.s = erst[2] |
| 486 | self.t = erst[3] |
| 487 | else: |
| 488 | self.e = torch.from_numpy(np.zeros((1, 21, 3))).float().to(get_device()) |
| 489 | self.r = torch.Tensor([0, 0, 0]) |
| 490 | self.s = 0 |
| 491 | self.t = 0 |
| 492 | def div(self, value): |
| 493 | self.e /= value |
| 494 | self.r /= value |
| 495 | self.s /= value |
| 496 | self.t /= value |
| 497 | def add(self, other): |
| 498 | self.e += other.e |
| 499 | self.r += other.r |
| 500 | self.s += other.s |
| 501 | self.t += other.t |
| 502 | def sub(self, other): |
| 503 | self.e -= other.e |
| 504 | self.r -= other.r |
| 505 | self.s -= other.s |
| 506 | self.t -= other.t |
| 507 | def mul(self, value): |
| 508 | self.e *= value |
| 509 | self.r *= value |
| 510 | self.s *= value |
| 511 | self.t *= value |
| 512 | |
| 513 | #def apply_ratio(self, ratio): self.exp *= ratio |
| 514 | |
| 515 | def logging_time(original_fn): |
| 516 | def wrapper_fn(*args, **kwargs): |
no outgoing calls
no test coverage detected