jScience的单位;什么是角速度的单位?

时间:2015-10-14 11:44:45

标签: java physics jscience

在我正在制作的应用程序中,我需要一些物理计算(力量,力,扭矩等)。我想使用JScience,因为它在跟踪单位时似乎非常有用。例如,要指定速度,我会这样做:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<h1>Hello <span class="name">Mr David</span>
    </h1>
<button onclick="changeLang('en')">English</button>
<button onclick="changeLang('he')">Hebrew</button>

我的问题是我想在课堂上指定一些角速度,但我无法理解我应该如何做到这一点。假设我想指定100 rad / s的角速度。

new_bib = Regex.Replace(new_bib, @"(?s)(\\bibitem\[[^\]]+\]\{" + pat4 + @"\})[\s\n\v]*([\\\{\}a-zA-Z\.\s\,\;\\\#\\\$\\\%\\\&\*\@\\\!\\\^+\-\\\=\\\~\\\:\\\" + dblqt + @"\\\;\\\`\\\']{20,70})", delegate(Match mts)
                    {
                           var fg = mts.Groups[0].Value.ToString(); 
                           var fs = mts.Groups[1].Value.ToString();
                           var fss = mts.Groups[2].Value.ToString();
                               fss = Regex.Replace(fss, @"[\\\{\}\\\#\\\$\\\%\\\&\*\@\\\!\\\^+\-\\\=\\\~\\\:\\\" + dblqt + @"\\\;\\\`\\\']+", "");
                           return "<augroup>" + fss + "</augroup>" + fs;
                    }, RegexOptions.IgnoreCase);

我无法在JScience中找到任何用于角速度的单位。文档说&#34;这个数量的系统单位是&#34; rad / s&#34; (每秒弧度)。&#34;,但没有&#34; SI.RAD_PER_SECOND&#34;或者我认为的任何枚举值......

所以问题是:我在后面的代码示例中写了什么 {SOME UNIT}

来自Birger的欢呼声

--- 修改 -

有建议使用&#34; SI.RADIAN.divide(SI.SECOND)&#34;作为单位,但我必须将变量分配给不同的类型。

Amount<Velocity> vel = Amount.valueOf(100, SI.METERS_PER_SECOND);

1 个答案:

答案 0 :(得分:2)

我不是这个特定库的专家,但是在eclipse中的一些快速测试让我想到了这个:

Amount<AngularVelocity> angVel = Amount.valueOf(100, AngularVelocity.UNIT);

问题在于,如果AngularVelocity.UNIT发生变化,你的数量也会发生变化。但我不太可能这样说。

否则,给出一条不那么漂亮的代码:

Amount<AngularVelocity> angVel = Amount.valueOf(100, SI.RADIAN.divide(SI.SECOND).asType(AngularVelocity.class));

这使我在Java编程时得到了很好的提示:使用控制空间。很多。我从来没有使用过这个库,我只能通过快速检查AngularVelocity.UNIT版本的文档来找到它。另一个是你自己的解决方案之后的控制空间。