/* Copyright (C) 2012-2020, Dirk Krause SPDX-License-Identifier: BSD-3-Clause */ /* WARNING: This file was generated by the dkct program (see http://dktools.sourceforge.net/ for details). Changes you make here will be lost if dkct is run again! You should modify the original source and run dkct on it. Original source: dk3ct.ctr */ /** @file dk3ct.c The dk3ct module. */ #line 46 "dk3ct.ctr" #include "dk3all.h" #line 52 "dk3ct.ctr" double dk3ct_2d_x(dk3_ct_2d_t const *ct, double x, int *ec) { double back = 0.0; #line 59 "dk3ct.ctr" if(ct) { back = dk3ma_d_add_ok( dk3ma_d_mul_ok(ct->mx, x, ec), ct->nx, ec ); } #line 66 "dk3ct.ctr" return back; } double dk3ct_2d_y(dk3_ct_2d_t const *ct, double y, int *ec) { double back = 0.0; #line 76 "dk3ct.ctr" if(ct) { back = dk3ma_d_add_ok( dk3ma_d_mul_ok(ct->my, y, ec), ct->ny, ec ); } #line 83 "dk3ct.ctr" return back; } double dk3ct_2d_r(dk3_ct_2d_t const *ct, double r, int *ec) { double back = 0.0; #line 93 "dk3ct.ctr" if(ct) { back = dk3ma_d_mul_ok(fabs(ct->mx), r, ec); } #line 96 "dk3ct.ctr" return back; }