2014年8月31日 (日)

太陽高度方位計算プログラム

■太陽高度方位計算プログラム
 Sunrise Ver 3.2b
 
追加メモ 
・任意の緯度経度,日付,時刻の設定を可能にする.
・緯度経度を浮動少数点表示に変更
・テスト版では緯度経度の制限を小さくしている.日出日入が存在しない場合は,
 計算エラーがでる.(0除算,acos定義域エラー等)
・エラー処理により,計算を中断しハングアップを防ぐ.
 計算可能な場所&日付に切替えれば回復可能.
 
 
(表示例)
日付の設定画面 8/31 ==> 6/20 (最上部左側の1行が入力域)
Sun32b1
 
時刻設定画面 18:40 ==> 12:40
Sun32b2
 
経度緯度設定画面 139.7333==>135.0, 35.65==>25.502   
Sun32b3 
 
1項目の設定ごとに情報更新
Sun32b4
 
テスト版では経度に制限はない(ロンドンの計算値)
Sn32b24
 
●計算結果の比較
 
高精度計算サイト"keisan"
日の出日の入り(世界地名選択)
http://keisan.casio.jp/exec/system/1253955558
 
ロンドン -0.12806  51.50778(夏時間)海抜0m
--------------------------------------------------------------------------
西暦    日出   方位角  南中   高度   日入  方位角  時差
2014/08/31 06:11:12 74.9136 13:00:51 47.0532 19:49:25 284.7493 1
 
sunrise 3.2b の計算結果
日本時間  14:12   75   21:01   47   03:50   285
JST-8    6:12   75   13:01   47   19:50   285
 
概ね良好な結果
・時刻の誤差1~2分
・角度の誤差1度以内
  
(参考)
・タイムゾーンの名称:BST  イギリス夏時間
・協定世界時との時差:UTC+1
・日本時間との時差:JST-8
 
[HP200LX/LXDIC]

|

2014年8月27日 (水)

太陽高度計算プログラムの開発

■太陽高度計算プログラムの開発
 名称:Sunrize
 
●現在の状況 Sunrize Ver 2.7
・浮動小数点を用いた三角関数による計算
 誤差:日出日入:1~2分程度
    方位,高度:1度以内
・表示項目
  場所(緯度,経度)        
  日付
  日出時刻,日出方位
  南中時刻,南中高度
  日入時刻,日入方位
  太陽高度,太陽方位(現在時刻の値)
  グラフ表示(高度の時間変化,高度・方位関係)
  一覧表の表示
 
●実行画面例
 Sunr41
 
 Sunr42
 
 Sunr43
 
 
●特異な例(秋分点近傍の赤道上の値)
 太陽は,真東-真上-真西と動き,高度と時刻の関係はほぼ線型になる
 Sun031
  
 太陽の方位は,南中時刻の前後1時間で,ほぼ180度変化する
 Sun032
 
 赤道上では 8/27現在,太陽は北方向にある.(南中でなく北中)
 北(0度)を中心にグラフ上反時計回りに動く.西(280)<=北(0)<=東(90)
 Sun0add
 
 ※いずれも妥当な計算結果になっている.
 
[HP200LX/LXDIC]

|

2014年8月20日 (水)

memo::太陽高度と方位の計算

■太陽高度と方位の計算
予備的なテストでは,以下の近似式で必要な精度が得られた.
  時刻の誤差:1分程度
  角度の誤差:1度以内
 
●近似計算式
 定数および変数
  ω = 2π/365
  J = 元日からの通算日数 + 0.5(元日J=0)
  Ts:時刻(日本標準時)
  θ:東経
  φ:北緯
 
・補正用定数:D [単位:度] ==> [rad]
  R:地平大気差[35′= 0.583°]
  Rs:太陽の視半径[16′= 0.266°]
   D = R + Rs  [51′= 0.850°]
   D *= π/180  [度==>rad]
  
・太陽赤緯:δ[単位:度] ==> [rad]
  δ = 0.33281 - 22.984cos(ωJ) - 0.34990cos(2ωJ) - 0.13980cos(3ωJ)
         + 3.7872sin(ωJ) + 0.03250sin(2ωJ) + 0.07187sin(3ωJ)
  δ*= π/180 [度==>rad]
  
・均時差:e [単位:時間] ==> [rad]
  e = 0.0072cos(ωJ) - 0.0528cos(2ωJ) - 0.0012cos(3ωJ)
    - 0.1229sin(ωJ) - 0.1565sin(2ωJ) - 0.0041 sin(3ωJ)
  e *= π/180 [度==>rad]
 
・時角:t [単位:度] ==> [rad]
  t = 15( Ts + (θ - 135)/15 + e ) - 180
  t *= π/180 [度==>rad]
・高度:h [rad]
  sin(h) = sin(φ)sin(δ) + cos(φ)cos(δ)cos(t)
   h = asin(sin(φ)sin(δ) + cos(φ)cos(δ)cos(t))
  
・方位角:A [rad](北 = 0)
  sinA = cos(δ)sin(t)/cos(h)
  cosA = (sin(h)sin(φ) - sin(δ))/(cos(h)cos(φ))
  A = atan2(sinA, cosA) + π [rad]
  
・日出時刻:t1 [単位:時]
・日入時刻:t2 [単位:時]
・南中時刻:tm [単位:時]
 太陽の視半径分の補正および大気差による補正あり
  t = acos( -(sin(D)+sin(φ)sin(δ)) / (cos(φ)cos(δ)) ) [rad]
  t *= 180/π [rad ==>度]
  t1 = (-t + 180)/15 -(θ-135)/15 - e  [h]
  t2 = ( t + 180)/15 -(θ-135)/15 - e  [h]
  tm = (t1 + t2)/2  [h]
  
・日出方位:h1 [rad] = 時刻t1 における方位角
・日入方位:h2 [rad] = 時刻t2 における方位角
・南中高度:hm [rad] = 時刻tm における高度
  
[HP200LX/LXDIC]

|

2014年8月18日 (月)

日出・日入時刻/南中高度の表示

■日出・日入時刻/南中高度の表示
オリジナル版:『日の出、日の入り時刻計算 Tropic.exm Ver1.01』
の改良を試みる.
 
●改良試作版:tropic Ver2.2(非公開)
 
(改良点)
・誤差を小さくする.
  時刻:1分程度
  角度:1度以内
・南中高度[単位:度]の表示を追加
・一覧表示でスクロールを可能にする.
  上下矢印キー:1週(1行)分スクロール
  左右矢印キー:4週(4行)分スクロール
  SHIFT+上下 :1日分の増減
 
(今後の予定)
・独立のプログラムとして開発
・計算方式を変更
・日出・日入の方位を追加
・任意の時刻の太陽高度と方位と追加
 
 最終表示予定項目
 (メイン画面:システム日付における値)
  場所(緯度,経度)
  現在時刻
  太陽高度,太陽方位(現在時刻における値)
  日出時刻,日出方位
  南中時刻,南中高度
  日入時刻,日入方位
  指定時刻
  太陽高度,太陽方位(指定時刻における値)
 
 (子画面1:7週分一覧表示:スクロールで1年分表示)
  日出時刻,日出方位,南中時刻,南中高度,日入時刻,日入方位
 
 (子画面2:時間変化:一覧表示またはグラフ表示)
  太陽高度,太陽方位(各時刻の一覧,または,グラフ)
 
●試作版表示例
Tropic1   
  
Tropic2
 
Tropic3   
[HP200LX/LXDIC]

|

2014年8月12日 (火)

LXDICのライトスリープ制御

■LXDICのライトスリープ制御
常駐プログラムAwakeとは独立に,LXDIC内でライトスリープを制御する.
目的は,起動時間の短縮,検索/画像表示の高速化.
・ライトスリープ制御は,main関数のdoループで行う.
・イベントがキー操作の場合は,ライトスリープを無効にし,最大限に高速化する.
・イベントが何もない場合は,ライトスリープを有効にし,電力を節約する.
・タスク切替にも対応する.

○ライトスリープ制御部分のソースコード例
do
{
  app_event.do_event = DO_EVENT;
  m_action( &app_event );
  FixupFarPtrs();
  switch( app_event.kind )
  {
   case E_ACTIV:
   case E_REFRESH:  //再活性化
    SetLSleep(OFF); //LSを無効にして再開  <== 今回追加
    ReactivateLHAPI( &CapData );
    break;
   case E_DEACT:    //不活性化
    SetLSleep(ON); //LSを有効にして休止   <== 今回追加
    DeactivateLHAPI();
    break;
   case E_TERM:
   case E_BREAK:
    Done = TRUE;
    break;
   case E_NONE:
    SetLSleep(ON); //有効
    SendMsg(&TDateTime, DRAW, DRAW_ALL, 0);
    break;
   case E_KEY:
    SetLSleep(OFF); //無効
    SendMsg(GetFocus(), KEYSTROKE, app_event.data, app_event.scan);
    break;
  }
} while( !Done ); 
 
※SetLSleep():ライトスリープの有効/無効を設定するユーザ関数
[HP200LX/LXDIC]

|

2014年8月 6日 (水)

LXDIC Ver 16.0c の不具合

■LXDIC Ver 16.0c の不具合
 
・不具合
 LXDICを起動したままで他のアプリケーションへのタスク切替を行うと,タイミングに
 よっては,LXDICに戻るまでの間,ライトスリープが無効状態になることがある.
 (オートパワーオフも動作しない)
 
・原因
 タスク切替の際は,ライトスリープ制御を行っていなかったため,LXDICから切替わる
 時のライトスリープ状態がそのまま維持された.
 (LXDICは状況に応じて,ライトスリープの有効化/無効化を行っている)
 
・修正 Ver 16.0d
 タスク切替時のライトスリープ制御を追加する.
 
(修正前のライトスリープ状態の変化)
   LXDIC  ===>  他のタスク
   有効  ===>   有効
   無効  ===>   無効
(修正版のライトスリープ状態の変化)
   LXDIC  ===>  他のタスク
   有効  ===>   有効
   無効  ===>   有効
 
※修正版 Ver 16.0d
 http://hp200lx.cocolog-nifty.com/blog/download.html
[HP200LX/LXDIC]

|

2014年7月29日 (火)

SKEY

SKEY for Ver 16.0c, W6.0c
$0c52 3bbb 7d7b 7e1e ca48  //2014/07:1600
$11fc 0828 5854 553f cba8  //2014/08:1600
$08ff 1762 60dc 20b4 cb88  //2014/09:1600
$1cdb 67be 18c0 517f cbe8  //2014/10:1600
$13df 76f7 2147 1cf4 cbc8  //2014/11:1600
$35ee 4b41 3635 276a cb28  //2014/12:1600

|

2014年5月16日 (金)

STAP細胞:研究不正の本質

■STAP細胞:研究不正の本質

研究不正とは,本来,研究成果を,改竄/捏造,あるいは,盗用により粉飾することで
あり,企業で言えば粉飾決算のことだ.
すなわち,ない研究成果をあるように見せたり,小さな研究成果を大きく見せること,
および,他人の研究成果を盗むことが,研究不正の本質だ.

・改竄/捏造は,データの加工/捏造により,真正でない研究成果をでっち上げること
・盗用は,他人の研究成果を,自己のものと偽り使用する行為
 
データ改竄/捏造の判定基準
1.研究成果の真正性を示す証拠がある場合
  ==> 研究不正には該当しない.
2.研究成果の真正性を示す証拠がない場合
  ==> 研究不正と判断される.
  
理研が,小保方の研究不正を認定した本当の理由
・実験ノートから,実験が実際には行われていないと判断
・生データの提出がなかったことから,STAP細胞は存在しないと判断
・さらに,調査に非協力的な態度も判断材料
 
報道された理研の判定基準は,外形的・機械的なもので,研究成果の真正性を問わない
ように見えるが,実質的には,研究成果の真正性を見ているはずだ.それを言わないの
は,STAP問題の長期化を避けるためだろう.
 
小保方が,何をどの様に説明しても,STAP細胞の存在を証明するデータを提出しな
い限り,理研の判定が覆るはずがない.
小保方弁護団の誤りは,理研の形式的な改竄/捏造の判定基準に準拠して,議論を展開
したことだ.
理研調査委員会は,表面的・形式的な理由をつけて,研究不正を認定したが,本質的に
はSTAP細胞の捏造を問題にしている.

|

2014年4月24日 (木)

SKEY

SKEY for Ver16.0c
$0a6f 4ceb 3488 3668 ca28  //2014/04:1600
$0172 5c25 3d10 01dd ca08  //2014/05:1600
$154e 2c81 74f3 32a9 ca68  //2014/06:1600
$0c52 3bbb 7d7b 7e1e ca48  //2014/07:1600
$11fc 0828 5854 553f cba8  //2014/08:1600
$08ff 1762 60dc 20b4 cb88  //2014/09:1600

|

2014年4月21日 (月)

STAP小保方擁護論の社会的損失

■STAP小保方擁護論の社会的損失
 
STAP捏造事件における小保方擁護論による社会的損失は,計り知れない.

マスコミ報道においては,特に早稲田OBや論文盗用容認派の評論家・コメンテーターを中
心に,捏造/改竄の実行犯を擁護する声が大きい.
早稲田OBが大学の名誉を守ろうとするのはある程度理解できるが,これとは別に研究不正
を容認する評論家やコメンテーターの多さには驚きを禁じ得ない.彼らは自己顕示欲により
独自性を強調したいのだろうか,それとも,常習的に改竄/捏造/盗用を行って,現在の地
位を築いてきたのだろうか.
 
このような研究不正を容認する社会がどのようなものになるか,彼らは想像したことがある
のだろうか.STAP細胞の存否などとは無関係に,確実に社会が蝕まれて行く.
社会科学系の研究なら不正が行われたとしても,その影響は間接的かつ軽微なもので済むか
もしれないが,自然科学系の研究においては,直接的かつ重大な社会的影響が懸念される.
例えば,不正な論文をもとに新薬開発が行われ,死に至る重大な副作用を隠した医薬品が販
売されれば,数百人数千人単位の死者が発生する重大事件に至る可能性もある.
彼らは,この研究不正を行った殺人犯を, "悪意のない誤り" だから仕方ないと言って許す
のだろうか.
 
捏造/改竄/剽窃等の研究不正は,麻薬と同じで,一度始めると止められない.苦労せず目
覚しい成果が得られるのだから,どんどん深みにはまり,破滅に至るまで継続する.
特に,学生時代にこのような研究不正を許容するような教育を受けると,罪悪感など微塵も
なく,平然と不正を行うモンスターに成長してしまうから質が悪い.
研究不正を大目に見て,多少のデータ改竄は許されるような風潮がまん延すれば,研究のみ
ならず,調査や設計などのあらゆるデータの改竄・捏造が横行し,収拾がつかなくなる.
政府が組織的にデータの改竄/捏造を行えば,政府の望むあらゆる政策が実行可能になって
しまう.社会インフラが捏造/改竄データをもとに整備されれば,コスト増加という経済的
な損失や人命に関わる大惨事の発生のみならず,社会基盤の全面的な崩壊を招きかねず,社
会混乱を引き起こす.その社会的損失は余りにも大きい.
 研究不正による社会的損失
 ・経済的損失
 ・日本の信用失墜
 ・科学/技術/医学の研究の停滞
 ・人為的な大災害など
 ・大規模な薬害など
  
:理研の決断は日本の未来を占う試金石:
ここで,小保方に対して厳しい処分ができなければ,研究不正を助長するする気分が蔓延し,
日本の未来は暗いものになる.
小保方について個人的な感情や情緒に流された判断をすると,取返しがつかない事態になる.
不正を行った者は厳罰に処し,科学研究から退いてもらうしかない.
人生は何も研究だけではない.その特別な才能を生かせば,他の分野での活躍も可能であり,
今より幸せな人生がおくれるだろう.
理研としては,このモンスターを育てた早稲田,東京女子医大,ハーバードの責任を問うこ
とはできない.ヴァカンティ,小島,大和といったSTAP詐欺の首謀者たちは切れないのだか
ら,小保方という実行犯を切るしかない.
理研は自己の管理責任を明確にした上で,躊躇なく懲戒解雇にして欲しい.
さらに,理研所有物の無断持出しがある場合は,窃盗罪で告発も必要だろう.
 小保方に対する適切な処分(社会的制裁)
 ・理研   :懲戒解雇
 ・理研   :研究費返還請求
 ・早稲田大学:博士号剥奪(博士号取消し)
 ・ネイチャー:STAP論文の掲載取消し
 ・学会   :永久追放
 
(備考)
1.数学のテスト
数学のテストでは,答が合っていても,途中の計算が間違っていれば,0点である.
同様に,論文データに捏造・改竄があれば,論文の主張する結論は否定される.
すなわち,STAP細胞は存在しない.
STAP論文には,捏造/改竄されたデータ以外にも多数の不自然なデータが存在する.
また,論文に捏造/改竄がないとしても,生物学的な理由によりSTAP細胞は存在し得ない
との指摘が,複数の専門家によってなされてる.されに,STAP細胞は存在しないと仮定し
ても,全ての現象を矛盾なく説明できるので,STAP細胞の非存在は確実だろう.

2.ドーピング
ドーピングでは,故意や悪意の有無は関係なく,結果が全てで,違反者は永久追放になる.
論文での改竄/捏造/盗用の認定は事実関係のみでよく,故意や悪意の有無は問わない.
文部科学省のガイドラインでは,不正のないことを科学的な証拠に基づいて証明できなけれ
ば,不正とみなされる.(証明義務は,疑いをかけられた者にある.)
理研の規程においては,理研が研究不正を認定するためには,事実関係のみを認定すれば良
く,悪意の認定をする必要はない.
一方,理研研究者が研究不正を否定するためには,"悪意のない間違い"であることを(実験
ノート等の客観的な証拠により)証明する必要がある.証明が無ければ不正と見なされる.
 
3.研究の質の低下
研究不正が容認されると,内容に実態のないスカスカの論文を量産することになる.
たとえ,日本発のノーベル賞級の研究が年に何本も発表されたとしても,一向にノーベル賞
受賞者が出現しない奇妙な事態が長年続くことになるだろう.
 
 
(※)
参考記事:STAP細胞が存在しないと判断する根拠
1.(広島大学名誉教授のメールマガジン)
STAP細胞に関する難波紘二先生の辛辣なコメント
http://blog.fujioizumi.verse.jp/?eid=247
 
2.(分子生物学会理事長のブログ)
大隅典子の仙台通信
STAP細胞を前提にしないと説明できない?
http://nosumi.exblog.jp/20586616/
 
[STAP詐欺]

|

«理研の管理能力